Работа с битами в регистре PORTD контроллера AVR на С.

Работа с регистрами AVR микроконтроллера на Си, битовые операции

Показаны принципы работы с отдельными битами регистра порта в AVR микроконтроллере. Подробно рассмотрены битовые операции и операции сдвига битов в языке Си. Приведены примеры установки и сброса битов в регистре порта, чтение состояния битов и их инверсии.

Для записи и чтения отдельных битов в портах микроконтроллера необходимо научиться выполнять битовые операции, уметь использовать битовые маски и выполнять запись в порт.

Содержание:

  1. Структура байта
  2. Порты, байты и биты
  3. Операции битового сдвига
  4. Битовые операторы в языке Си
  5. Установка битов в регистре порта
  6. Сброс битов в регистре порта
  7. Проверка разрядов регистра
  8. Инверсия состояния бита в регистре
  9. Заключение

Структура байта

Мы знаем что один байт представляет собою 8 бит, а каждый бит это — 1 или 0, биты в байте считаются справа налево. Бит 1 является младшим, а бит 8 — старшим.

1 Байт
8 (старший бит) 7 6 5 4 3 2 1 (младший бит)

Порты, байты и биты

Представьте себе на минуточку, что регистр порта в микроконтроллере — это аппаратная панель, на которой расположены один за другим восемь одинаковых переключателей, каждый из которых может иметь два состояния: включен (1) или выключен (0).

В языке Си для AVR,  установка значения 1 для бита в порте — это как перевод нужного переключателя в состояние «включено». На выходе канала для указанного порта, к которому подвязан наш виртуальный выключатель, появится высокий уровень, а это в свою очередь подаст напряжение на какое-то устройство, например на светодиод, который сразу же засветится.

Названия каналов в порте микроконтроллера отсчитываются с нуля (0). Ниже приведен пример битовой структуры порта PORTD:

Регистр порта PORTD, 1 байт
Номер бита в регистре 8 7 6 5 4 3 2 1
Канал порта PD7 PD6 PD5 PD4 PD3 PD2 PD1 PD0

Аналогично по структуре выглядят и другие порты — PORTA, PORTB, DDRD, PINA…

Предустановленные значения констант PD0, PD1, PB5, PA4 (и многих других) для каждого типа AVR-микроконтроллера указаны в специальном заголовочном файле библиотеки avr-libc.

Например, чтобы вывести на экран значения всех констант из IO-файла для микроконтроллера ATmega8, содержащих сочетание символов «PD» (ищем константы для порта D, PORTD), достаточно выполнить следующую команду:

cat /usr/lib/avr/include/avr/iom8.h | grep PD
Bash

Увидим следующий результат:

#define SPDR    _SFR_IO8(0x0F)
#define PD7      7
#define PD6      6
#define PD5      5
#define PD4      4
#define PD3      3
#define PD2      2
#define PD1      1
#define PD0      0
None

Теперь, при использовании константы PD0 в своей программе на Си, вы знаете что в ней содержится число 0, а в PD3 — 3 и т.д.

Операции битового сдвига

А сейчас, давайте подробно и с примерами разберемся с тем, как работают операторы битового сдвига.

Существует несколько разновидностей операций битового сдвига:

  • логический (сдвинутые в направлении биты теряются, а освободившиеся позиции заполняются нулями);
  • арифметический (сдвиг влево аналогичен логическому, а при сдвиге вправо — свободные позиции заполняются значениями крайнего левого бита, который еще называют знаковым);
  • циклический (потерянные с одной стороны биты перемещаются на освободившиеся позиции с другой, как замкнутое кольцо).

Операторы битового сдвига в языке программирования Си обозначаются как «>>» и «<<» и выполняют логический сдвиг битов в используемой переменной в указанном направлении и на указанное число элементов.

Важный нюанс: при сдвиге вправо («>>») битов в числе с отрицательным знаком (signed) выполняется арифметический сдвиг — освободившиеся позиции слева заполняются единичками (перенос знака). Это важно помнить!

Сокращенные обозначения:

  • Bin — от слова Binary, двичная система счисления;
  • Dec — от слова Decimal, десятичная система счисления;
  • Hex — от слова Hexadecimal, шестнадцатиричная система счисления.

Для примера выполним сдвиги битов в разных числах, предварительно представив их в двоичном виде.

Для числа 1 (Dec, в десятичной системе 1) — 00000001 (Bin, в двоичной системе 0b00000001):

  • 1 << 0 = 1 (00000001);
  • 1 << 1 = 2 (00000010);
  • 1 << 2 = 4 (00000100)
  • 1 << 5 = 32 (00100000);
  • 1 >> 2 = 0 (00000000).

Сдвиг влево на один разряд выполняет умножение числа на 2, а сдвиг вправо — деление числа на 2.

Для числа 209 (Dec, в десятичной системе 209) — 11010001 (Bin, в двоичной системе 0b11010001):

  • 209 = 11010001;
  • 209 << 3 = 136 (10001000);
  • 209 << 5 = 32 (00100000);
  • 209 >> 5 = 6 (00000110)

Для пересчета из одной системы счисления в другую в Linux удобно использовать калькулятор, об этом я уже раньше писал.

Битовые операторы в языке Си

То как двигать биты в байте мы теперь знаем, дальше разберемся с битовыми операторами в Си:

  • «&» (логическое И, AND) или умножение — бинарная операция, результат которой равен 1 только в том случае если оба операнда равны 1, в противном случае будем иметь 0;
  • «|» (логическое ИЛИ, OR) или сложение — бинарная операция, результат которой равен 1 в том случае если хотя бы один из операндов равен 1;
  • «~» (логическое НЕ) или инверсия — унарная операция, результат которой равен 0 если операнд равен 1, и наоборот — результат равен 1, если операнд равен 0;
  • «^» (исключающее ИЛИ, XOR) — бинарная операция, результат которой равен 1 в том случае если только один из двух операндов равен 1.

Рассмотрим примеры битовых операций над числами 209, 7 и их битовыми представлениями:

1101 0001 (209)
&

0000 0111 (7)
—————-
0000 0001 (1)

1101 0001 (209)
|
0000 0111 (7)
—————-
1101 0111 (215)
1101 0001(209)
~
—————-
0010 1110(46)
1101 0001 (209)
^
0000 0111 (7)
—————-
1101 0110 (214)

Как видите, битовые операции позволяют установить или сбросить отдельные биты числа.

Установка битов в регистре порта

А теперь немного практики, давайте сделаем установку 6-го бита в регистре порта PORTB что в свою очередь установит высокий уровень для канала PB5 (6-й бит в регистре). Допустим что сейчас в регистре PORTB содержится число 136, которое в битовом представлении выглядит как 10001000 (высокий уровень на каналах PB7 и PB3).

Чтобы установить 6-й бит (10001000) мы будем использовать битовую операцию логического ИЛИ в комплексе с битовой маской.

Что такое битовая маска? — по сути это специально подготовленное число, состоящее из требуемой конфигурации битов, которое в сочетании с некоторой операцией над битами другого числа позволяет установить или сбросить биты в последнем.

Для получения битовой маски, при помощи которой позже будет установлен один бит, мы выполним левосторонний сдвиг битов числа 1 (00000001) на 5 разрядов:

0000 0001 (1)
<< 5
—————-
0010 0000 (32)

В результате битовой операции получим число 32 (00100000), это и есть наша битовая маска. Хочу заметить что это число равняется числу 2 в 5-й степени, каждый сдвиг разряда влево умножает результат на 2.

Теперь нам останется выполнить битовую операцию ИЛИ над текущим числом в регистре и получившимся числом-маской:

1000 1000 (136)
|
0010 0000 (32)
—————-
1010 1000 (168)

А теперь сравните состояние регистра перед операцией и после — все состояния битов сохранены и дополнительно установлен 6-й бит.

Для установки 6-го бита и последующей записи числа в регистр порта PORTB (установка высокого уровня для канала PB5) в нашем примере можно использовать любую из следующих конструкций операторов, они все выполняют идентичную задачу:

  • PORTB = PORTB | 32;
  • PORTB = PORTB | (1 << 5);
  • PORTB = PORTB | (1 << PB5);
  • PORTB |= (1 << PB5);

Наиболее удобно использовать последнюю краткую запись, где используется комбинирования операция логического ИЛИ и присвоения, в данном случае PB5. К примеру константа PB5 (канал 5 порта B, 6-й бит регистра) определена в файле /usr/lib/avr/include/avr/iom8.h для микроконтроллера ATmega8 и она равна числу 5.

Как установить несколько бит в регистре? — можно вызвать поочередно две конструкции с операторами, а можно все выполнить одной командой. Допустим нужно установить 2-й и 6-й биты в регистре порта PORTD, что соответствуют каналам PD1 и PD5:

  • PORTD |= ( 1 << 1 ) | ( 1 << 5 );
  • PORTD |= ( 1 << PD1 ) | ( 1 << PD5 );

Сброс битов в регистре порта

Для сброса разрядов в регистре порта мы будем использовать битовую операцию «&» (логическое «И»), которая применяется к двум битам (бинарная операция) и даёт единицу только в том случае если оба исходных бита имеют единичное значение, также нам пригодится битовая операция «~» (логическое «НЕ», инверсия).

Давайте выполним сброс 5-го бита в регистре порта PORTD, что в свою очередь выполнит установку низкого уровня на канале PD4. Допустим что сейчас в регистре PORTD содержится число 157, которое в битовом представлении выглядит как 10011101.

Для того чтобы сбросить 5-й бит (10011101) в регистре порта PORTD мы подготовим маску (как при установке битов), инвертируем ее биты «~», а потом выполним битовую операцию «&» над текущим значением регистра и полученной инвертированной маской.

Для подготовки маски выполним сдвиг битов на 4 разрядов в числе 1 (00000001).

0000 0001 (1)
<< 4
—————-
0001 0000 (16)

Маска готова, получили число 16 (00010000), 2 в 4-й степени. Выполним инверсию битов:

0001 0000 (16)
~
—————-
1110 1111 (239)

Готово, осталось применить маску к содержимому регистра порта PORTB используя битовую операцию «&»:

1001 1101 (157)
&
1110 1111 (239)
—————-
1000 1101 (141)

Теперь в содержимом регистра PORTD значение 5-го бита установлено в 0 с сохранением положений остальных бит. В языке Си данные операции можно выполнить используя любую из приведенных ниже, идентичных по результату команд:

  • PORTD = PORTD & ~ 16;
  • PORTD = PORTD & 239;
  • PORTD = PORTD & ~( 1 << 4 );
  • PORTD = PORTD & ~( 1 << PD4 );
  • PORTD &= ~( 1 << PD4 );

В данном случае наиболее удобной и информативной формой команды будет последний укороченный вариант. Для одновременного сброса нескольких битов регистра можно использовать вот такие конструкции из операторов:

  • PORTD = PORTD & ~( ( 1 << PD4 ) | ( 1 << PD6 ) );
  • PORTD &= ~( ( 1 << PD4 ) | ( 1 << PD6 ) );

Проверка разрядов регистра

Теперь разберемся каким образом можно проверить разряды регистра на наличие в них 1 или 0. Это может потребоваться если нужно получить значение битов в регистрах специального назначения (флагов) микропроцессора, а также для чтения состояния различных устройств и модулей, которые передают свое состояние используя битовую структуру.

Как проверить значение установленного бита в регистре на Си? — для этого нужно подобрать специальное выражение с использованием битовых операций, результатом работы которого будет значение: правда (True) или ложь (False). Имея булево (bool) значение выражения мы можем использовать для работы условные операторы языка Си.

Например нам нужно проверить есть ли единица (1) в 3-м бите регистра PORTD, тем самым мы проверим есть ли высокий уровень на канале PD2 порта PORTD. Примем что текущее значение регистра — 10010101 (149).

Для проверки используем выражение, которое состоит из битовой маски с установленным битом для проверки и проверяемого регистра, к которым применен битовый оператор «&» (логическое И).

Готовым маску, в которой только 3-й бит установлен в 1. Для этого выполним сдвиг битов числа 1 на 2 разряда влево:

0000 0001 (1)
<< 2
—————-
0000 0100 (4)

Теперь применим битовую операцию «&» (логическое И) к содержимому регистра PORTD и получившейся маске:

1001 0101 (149)
&
0000 0100 (4)
—————-
0000 0100 (4)

В результате выражения получим число 4 (0000 0100).

В языке Си все числа которые НЕ равны «нулю» (-100, -5, 1, 500) являются логической истиной (True), а 0 — логической ложью (False).

Результат нашего выражения — число 4, которое является логической истиной (True), а это значит что 3-й разряд регистра PORTD содержит единицу.

Вот как будет выглядеть данное выражение из двух логических операций на языке Си:

PORTD & (1 << 2)
None

Такое выражение можно использовать в условных операторах (if) и операторах циклов (while), например:

while( PORTD & (1 << 2) ) { ... }
if( PORTD & (1 << PD2) ) { ... }
C

Для проверки состояния бита в регистре на ноль (0) используем такую же конструкцию, только к результату выражения применим логическую операцию инверсии «!» (логическое НЕ).

Логическая операция «!» переворачивает значение с правды (True) на ложь (False), и наоборот. В отличие от битовой операции инверсии, которая переворачивает биты с 1 на 0 и наоборот, логическая операция инверсии оперирует с логическими значениями: правда (True) на ложь (False).

1 = True 0 = False 122 = True (149 & (1 << 2)) = True
!1 = False !0 = True !(5-1) = False !(149 & (1 << 2)) = False

Пример выражения на языке Си для проверки на ноль (0) 3-го бита в регистре порта PORTD (канал PD2):

while( !(PORTD & (1 << 2)) ) { ... } 
if( !(PORTD & (1 << PD2)) ) { ... }
C

Здесь выражение «PORTD & (1 << 2)» берется в круглые дужки, что позволяет получить результат этого выражения, к которому потом и будет применен оператор логической инверсии.

Инверсия состояния бита в регистре

Иногда может понадобиться изменить состояние определенного бита в регистре на противоположное — выполнить инверсию состояния бита.

Для подобной операции отлично подходит битовый оператор «^« (исключающее ИЛИ, XOR). Чтобы выполнить инверсию определенного бита в регистре нужно создать маску, в которой этот бит установлен, а потом применить к содержимому регистра и полученной маске бинарный оператор «^«, потом останется записать полученный результат в регистр и готово.

Возьмем, к примеру, что нужно погасить светодиод, который подключен к каналу PD5 порта PORTD. Если светодиод светится то это значит что в на канале PD5 присутствует высокий уровень, соответственно это значит что в регистре порта PORTD бит под номером 6 (PD5 = 5, 6-й бит в байте регистра) установлен в 1. Допустим что содержимое регистра порта PORTD сейчас — 10111010 (число 186, 1 байт, 8 разрядов, 6-й разряд = 1).

Подготовим маску, для установки 6-го бита нам необходимо сдвинуть все биты числа 1 на 5 разрядов:

0000 0001 (1)
<< 5
—————-
0010 0000 (32)

Применим маску к содержимому регистра порта PORTD:

1011 1010 (186)
^
0010 0000 (32)
—————-
1001 1010 (154)

Как видите, 6-й бит в байте регистра, который раньше был 1, сейчас установлен в 0 (1001 1010). Теперь осталось записать число в регистр порта и задачу можно считать выполненной. Примеры использования такой конструкции на языке Си:

  • PORTD = PORTD ^ 32;
  • PORTD = PORTD ^ (1<< 5);
  • PORTD = PORTD ^ (1<< PD5);
  • PORTD ^=(1<< PD5);

Как и в предыдущих примерах по установке и сбросу битов, последняя краткая конструкция является наиболее простой и понятной для использования.

Заключение

С первого взгляда очень просто запутаться в операторах и значениях таких как «&», «!», «PD1», «>>» и других, но один раз хорошо разобравшись и попробовав на практике вы всегда будете иметь понятие что и как работает, откуда берется и что содержит.

Логические и битовые операции присутствуют во многих языках программирования, не только в Си, так что данный опыт будет вам полезен если вы также будете работать и с другими языками программирования.

Начало цикла статей: Программирование AVR микроконтроллеров в Linux на языках Asembler и C.

Как проверить MOSFET N-Channel

1. Проверка защитного диода

  • (+) на S, (-) на D  =>  проводимость (~0,5V)
  • (-) на S, (+) на D  =>  бесконечность

2. Проверка изоляции затвора

  • (+) на G, (-) на D  =>  бесконечность
  • (+) на G, (-) на S  =>  бесконечность
  • (-) на G, (+) на D  =>  бесконечность
  • (-) на G, (+) на S  =>  бесконечность

3. Проверка открытия N-канала

(-) на S, (+) кратковременно на G  =>  N-канал открывается, появляется проводимость «Source — Drain» в обоих направлениях.

4. Закрыть N-канал

(-) на G, (+) на D  =>  N-канал закрывается

P-канальные MOSFET’ы проверяются аналогично, с той лишь разницей, что (+) меняется на (-).

Как проверить подшипники ступиц и опорные

Опорники в основном выходят из строя по причине попадания в них грязи.Больше всего она попадает туда при мойке машины ,когда особо ретивые мойщики стараются промыть колесные арки с усердием.Проверить работоспособность опорных подшипников легко . Для этого нужно поддомкратить  машину впереди и попросить кого -нибудь покрутить руль вправо -лево, а самому надо рукой держаться за пружину стойки. Если подшипник не исправен то рукой сразу можно будет почувствовать глухие щелчки-перекаты.Пружина- хороший резонатор.Таким же , кстати, образом, можно проверить подшипники ступиц. Только для этого нужно крутнуть колесо и также рукой держаться за пружину.. Если почувствуете перекаты-рокот передающийся через пружину то подшипник не исправен.

Как включить отладку по USB на Xiaomi

Режим отладки по USB на Xiaomi расширяет возможности пользователя. С его помощью вы сможете:

  • перемещать файлы с компьютера и наоборот
  • напрямую устанавливать приложения
  • просматривать системные журналы
  • получить Root-права
  • установить прошивку
  • создать резервную копию данных

Чтобы включить этот режим, нужно сделать всего два простых действия:

№1 — разблокируем режим разработчика

Для этого переходим в Настройки > О телефоне и 5 раз нажимаем на строку Версия MIUI

Появится сообщение об успешной активации режима.

№2 — включаем отладку по USB

Переходим в Настройки > Расширенные настройки > Для разработчиков

Здесь находим соответствующий пункт меню и активируем его.

Если при подключении к ПК смартфон не определяется, то попробуйте его разблокировать.

Highland Park 10

2700р. за 0,7л. в К&Б. Односолодовый. Очень, очень, очень… Оценка: 5+.

Духовная экономика

Источник

Те, кто изучали преподававшуюся в СССР политическую экономику, хорошо помнят, что «Социализм – это переходный период от капитализма к коммунизму»; «Задачей социализма является построение материально-технической базы для коммунизма». Сегодня эта цель достигнута. Материально-техническая база для коммунизма уже не только построена, но и давно перестроена.

Если полвека назад люди жили в условиях дефицита товаров первой необходимости, то сегодня материально-техническая база планеты стала столь развитой, что уровень производства уже превышает уровень возможного потребления. Казалось бы, люди теперь уже могут расслабиться и жить спокойно и счастливо, посвящая большую часть времени саморазвитию, творчеству, близким, семье. Как пел Сыроежкин из кинофильма «Приключения Электроника»: «Вкалывают роботы — счастлив человек!»


Ученые подсчитали, что для того чтобы поддерживать тот уровень жизни, на котором сейчас мы находимся, человеку достаточно работать один или два часа в день – то есть, один день в неделю — при условии, что вещи не будут делать намеренно устаревающими. Но для того, чтобы поддерживать высокий темп сбыта и производства товаров, их качество и срок годности сегодня намеренно снижают.


Технологии уже двадцать лет назад дошли до того уровня, что автомобили, компьютеры, телефоны, всю бытовую технику можно делать такими, чтобы они работали десятки лет не ломаясь. Многие выпущенные в сороковых-пятидесятых годах прошлого века автомобили (такие, как автомобили «Победа») ездили по 50-60 лет. Четверть века назад компания «Volkswagen» выпустила автомобили с гарантийным пробегом двигателя в миллион километров, но быстро их сняла с производства, так как купив их, людям долго не нужно было покупать новый авто. Поэтому ресурс двигателей выпускаемых сегодня автомобилей по всему миру искусственно снижен до 200 000 тыс.километров. Уровень технологий, науки давно позволяет уже делать автомобили такими, чтобы они работали без поломок 100 лет или больше! Но их намеренно делают сегодня такими, чтобы они через 6 лет начинали ломаться и через 15 лет были на свалке. Такая же ситуация — во всех сферах производимых сегодня товаров.

Недавно я читал лекции в Германии. Переехавшие туда из СССР немцы рассказывали, что у некоторых из них до сих пор работают стиральные машинки и холодильники, которые они привезли с собой в 1991-м году, тогда как те холодильники, которые продаются сейчас, работают ровно пять лет и ломаются сразу, как только заканчивается гарантия. Организатор моих семинаров рассказал, что его друг работает в компании, производящей детали для «Siemens» и «Bosh», и они им заказывают детали, которые проработают ровно пять лет – хотя они могут делать эти детали такими, чтобы они проработали не пять, а 50 лет и больше.

Женщина, работающая технологом в одной очень известной компании, производящей чулки и колготки сказала, что несколько лет назад директор компании дал им задание начать делать эти изделия так, чтобы внешне их качество осталось таким же, а срок годности их сократился. Женщины старшего возраста хорошо знают, что раньше колготки можно было носить по пол-года и больше; теперь они начинают рваться через неделю. Тот же принцип заложен сейчас в производстве одежды.

Лет двадцать назад «Timberlend», «Reebok» и «Nike» были надежней и долговечней, как минимум, раза в четыре, чем сегодня. Одну пару кроссовок «Reebok» я носил несколько лет весьма интенсивно ежедневно все лето и осень. Сейчас их хватает всего на один лишь сезон. За эту зиму я износил и выкинул две пары полусапог, хотя лет десять назад я точно такую модель носил года два. Осветительные приборы давно можно делать практически вечными, и это ни для кого не секрет. Но за этот год на одной только кухне я заменил несколько лампочек. Чайники и бытовые приборы, всю электронную технику делают сегодня такими, чтобы через два года они выходили из строя, и люди сейчас продолжают работать по 7-10 часов в день для того, чтобы непрерывно приобретать новые бытовые приборы, автомобили, компьютеры, телефоны, одежду и обувь взамен купленных ранее пришедших преждевременно в негодность хороших вещей, тратя для этого все свои силы.

Искусственное увеличение продаж (то есть, искусственное перепроизводство товаров) связано так же с созданием «веяний моды», стимулированием в людях жадности, нездоровых амбиций и «чувства престижа». Людей заставляют покупать всё новые и новые вещи взамен старых, уже «не престижных», «немодных».


Не нужно говорить, какую нагрузку это создаёт на Природу. Фактически, человечество сейчас можно сравнить с огромным комбайном, который идёт по планете и перерабатывает ресурсы Природы, которые она накапливала миллионы лет, превращая их в мусор. Современная экономика – мусорная, производящая мусор.

Из-за чего это происходит?

-Из-за того, что государства до сих пор остались ориентированы на рост ВВП (Валового внутреннего продукта), по старинке, — так же, как и во времена дефицита товаров,- расценивая рост ВВП как однозначное благо.  В действительности же, в тот момент, когда уровень производства товаров достиг эволюционного пика, покрыв все необходимые нужды людей, критерий оценки должен был быть изменён. Поддерживая покрытие всех нужд людей, ВВП по мере продолжения развития технологий должен был начать снижаться. Должна была произойти переориентация экономики на новый эволюционный путь развития общества. Но так как руководителями стран этого до сих пор не было сделано, экономика планеты вместо её эволюции пошла по пути деволюции: вместо того, чтобы снижать ВВП при поддержании удовлетворения всех нужд населения благодаря повышению качества и увеличению  срока действия производимых товаров, освобождая от работ женщин и уменьшая продолжительность рабочей недели, предприятия стали снижать качество и срок действия производимых товаров, чтобы поддерживать и увеличивать ВВП.

Но это – тупиковый путь развития общества, и человечество по нему идти долго не сможет, потому что ресурсы Земли ограничены. Не говоря уж о том, что из-за работы заводов и фабрик экологически чистой земли, питьевой чистой воды и чистого воздуха становится с каждым годом всё меньше.

Мусорная деволюционная экономика – это отжившая свой век демоническая экономика, основанная на противопоставлении интересов одной группы людей интересам других. Тогда как духовная (эволюционная) экономика основана на заботе каждого члена общества о благополучии других.

 ВВП стал сегодня тем фактором, который постоянно воздействует на политические решения, но в его структуре заложено стремление к неограниченному росту. Он отражает траты, а не благополучие или субъективное счастье, и не видит блага, существующие вне рынка. Единственное, что измеряет ВВП — скорость, с которой деньги движутся в экономике. ВВП увеличивается, если увеличивается уровень потребления лекарств, алкоголя, других разрушающих здоровье продуктов. ВВП увеличивают любые болезни и войны, все бедствия и несчастные случаи, даже если они, очевидно, уменьшают благополучие масс.

Прогресс человечества должен вести не к увеличению, а К УМЕНЬШЕНИЮ ВВП,  И В ПЕРВУЮ ОЧЕРДЬ — К УМЕНЬШЕНИЮ ПРОИЗВОДСТВА ВРЕДНЫХ, А ТАК ЖЕ НЕКАЧЕСТВЕННЫХ, НЕДОЛГОВЕЧНЫХ ТОВАРОВ(!!!) Объёмы продаж всех не относящихся к продуктам питания товаров должны уменьшаться, а не расти!!! И страны необходимо оценивать не по количеству выпускаемых пластиковых или железных товаров, — не по высокому уровню внутреннего валового продукта (ВВП), а по  качеству отношений в них между людьми!!!

Оценку успешности государства по его ВВП навязали всем государствам банкиры, которые хотят управлять государствами и всем человечеством в целом посредством финансово-кредитной системы.

Именно поэтому в Европе 30% всех производимых продуктов питания уничтожается — чтобы не допускать понижения цен и уменьшения прибыли горстки международных банкиров. Такой подход выгоден только паразитам общественного организма. Никому больше не выгоден: ни нашей Земле, ни правителям, ни простым людям.

Духовный прогресс – это забота о благе других. А забота о благе других заключается в  производстве качественных долговечных товаров, здоровых продуктов питания. Если бизнесмен ради своей личной наживы, чтобы принести больше денег в семью, намеренно понижает качество производимых товаров или продуктов питания, — если интересы своей семьи он противопоставляет благополучию и здоровью других – духовно он развиваться не сможет, так как идёт против интересов Всевышнего и разрушает духовность. Тем, кто развит духовно, это вполне очевидно: забота о благополучии других улучшает качество всей нашей жизни!

 Поэтому, если мы – действительно разумные, взрослые люди, и уж тем более, если мы претендуем на звание духовных существ — мы должны использовать рост технологий для увеличения качества производимых товаров (а не для его понижения), для уменьшения количества производства — что в десятки и в сотни раз снизит нагрузку на то же самое потребление энергоносителей. Потому что сейчас 90% топлива тратится просто на переезды людей до их места работы и обратно домой; на транспортировку сырья и различных товаров и их утилизацию.

Поэтому ведущие экономисты планеты всё чаще поднимают вопрос о сокращении рабочего дня и ежемесячном безусловном доходе для граждан вместо того, чтобы занимать их производством и утилизацией мусора.

Человечество уже готово принять эволюционный, экологический тип экономики, когда технологии будут работать на благо планеты путём производства качественных долговечных товаров, что будет освобождать время людей, что позволит им превратить этот мир в дивный сад.

Отказ от намеренного производства недолговечных товаров позволит освободить от работ женщин, уменьшить продолжительность рабочей недели. Напомним, что сперва у крестьян                                         отобрали их землю, а затем — женщин заставили работать наряду с мужчинами в эпоху индустриализации– чтобы заполнить рабочими фабрики.  Всё это негативно сказалось как и на институте семьи, так и на экологии мира. В результате интенсивного земледелия на сегодня потеряна треть (!!!)   плодородных почв нашей планеты.

Плодородие почвы может быть искусственным (минеральным, химическим) или – естественным, биологическим. Естественное, безграничное плодородие почв создают: отжившая растительная органика (сено, трава, солома, опавшие листья и ветки, опилки), останки отжившей животной органики (микроорганизмы, бактерии, водоросли, микрогрибы, черви, насекомые и другие животные организмы), нано- и микрорастения (водоросли). Эти животные микроорганизмы – неотъемлемые представители плодородной почвы, невидимые нашему взору, объединены одним общим названием «Почвообразующая микрофлора и микрофауна». Горсть хорошей почвы содержит миллионы микроорганизмов, поддерживающих плодородие. Почвообразующий микробиоценоз является ключевым звеном восстановительных биопроцессов, создающих безграничное, естественное плодородие почв. Вес живой части почвы доходит до 80% (!) от её массы. Всего 20% процентов почвенной массы – это её мёртвая минеральная часть. И если живая часть почвы погибает из-за использования химических удобрений или других нарушений условий здорового биоценоза — почва со временем истощается до минеральной основы, становится мёртвой, неплодородной, бесплодной.

Промышленная интенсивная обработка земли за 100 лет разрушила то, что наши предки берегли тысячелетиями. За 100 лет интенсивного земледелия большая часть российских и украинских земель c двухметровым слоем чернозёма была доведена до полного истощения, разрушения и даже неспособности давать урожаи без внесения химикатов и минеральных удобрений. Но минеральные удобрения содержат в себе только те вещества, которые способствуют росту растений, но они не содержат в себе тех витаминов и минералов, веществ, которые необходимы для здоровья человека.

Поэтому фрукты и овощи сегодня содержат в десятки и в сотни раз меньше полезных веществ, чем до «химической эры». Сравнительный анализ Всемирной Организации Здравоохранения, сделанный ею в 2002 году показал, что количество полезных веществ в продуктах питания стремительно сокращается с каждым годом. Приведенная ниже таблица показывает содержание минералов в продуктах питания (мг на 100 г веса), продающихся в супермаркетах развитых стран.

 

Только за последние 10 лет (!!!) содержание витамина С в ряде продуктов снизилось на 80% и больше!  Часто из полезных веществ в покупаемых в супермаркете фруктах и овощах остается только растительная клетчатка. Всё это отражается на нашем здоровье и на развитии наших детей. Поэтому люди с каждым годом всё больше слабеют и больше болеют.

Во многих регионах планеты темпы потери почв превышают темп образования новых почв, как минимум, в 10 раз. Такие потери земель в период беспрецедентного роста населения и увеличения потребности в продовольствии могут стать поистине гибельными. По оценкам экспертов ООН (программа ЮНЕП), к концу столетия мир может лишиться ещё трети пахотных земель, которые пока ещё существуют. При современных темпах прироста населения следовало бы увеличивать площадь пахотных земель на 15 миллионов гектаров в год, а в действительности происходит ежегодная потеря более 10 миллионов гектаров ранее плодородных земель. Компенсация потерь за счет площадей, занятых лесами, невозможна, так как она косвенно, по сложной экологической цепочке, приводит к уменьшению осадков, к понижению уровня грунтовых вод, к пересыханию водоёмов и рек, к увеличению эрозий, к ускоренной деградации пашни. А восстановление плодородия убитых и истощённых почв – весьма непростой и достаточно трудоёмкий процесс.

Всё это указывает на то, что скоро мир вступит в эру дорогого продовольствия. Дефицит еды на мировом рынке начинает  расти. Если во второй половине ХХ столетия затраты на питание в развитых странах не превышали 10 процентов семейного бюджета, то теперь каждая семья тратит на еду не менее трети доходов, и уже очень скоро американцы и европейцы будут тратить на еду более половины личного бюджета. В условиях дороговизны и нехватки продовольствия, а также стремительно растущего спроса на содержащие в себе все полезные вещества экологически чистые продукты питания, Россия должна снова поднять свою агросферу, переориентировав экономику на экологическое фермерство, сохраняя и умножая свой главный ресурс – плодородные почвы, в то время как во всем мире этот ресурс разрушают. Правительство должно разработать стратегию освобождения страны от химических удобрений и ориентацию на самодостаточное экологическое общинное фермерство – особенно с учетом кризиса из-за исчезновения воды, с которым в ближайшее время столкнутся ведущие производители зерна в мире. До свержения монархии Россия обеспечивала экологически чистым зерном всю Европу – и она сможет вновь делать это благодаря возрождению обеспечивающих вечное плодородие почв технологий в противовес ведущим наш мир в никуда химическим удобрениям и ГМО.

Переезжая в города, люди начинают потреблять в четыре раза больше ресурсов. Территориально, экологический след городов намного превосходит занимаемую ими площадь: для среднего американского города с населением шестьсот пятьдесят тысяч он составляет тридцать тысяч квадратных километров.

Если раньше людей выгоняли с земли, чтобы заполнить ими заводы и фабрики, то сейчас в городах другая проблема – трудоустройство. Руководители городов сегодня считают своей огромной заслугой, если им удается создать какое-то количество дополнительных рабочих мест.

Но уже в ближайшие десять-двадцать лет до 60% всех работ в городах смогут выполнять роботы, причём не только на заводах и фабриках – разработанные недавно бухгалтерские программы уже начали оставлять без работы десятки тысяч бухгалтеров в США и в Европе.

В супермаркетах США уже начали использоваться роботизированные кассы, которые скоро смогут заменить всех кассиров. В большей части бистро, в сети фастфуда роботы заменят официантов, барменов. Уже созданы недорогие самообучающиеся роботы Baxter, для обслуживания которых не нужны программисты: им достаточно просто понаблюдать за действиями человека, чтобы потом повторить их: сделать и подать идеальную пиццу, шейк или кофе. Стоимость таких роботов меньше среднегодовой зарплаты рабочего в развитой стране.

Автомобили, способные самостоятельно ориентироваться на дорогах, уже не фантастика, а реальность, и вопрос уже не в том, заменят ли они обычные автомобили, а в том, как скоро это произойдёт. Такие автомобили не засыпают на ходу, не пишут СМС, не ездят пьяными; они очень внимательны, им не нужно, как водителям-дальнобойщикам, делать перерывы на отдых каждые несколько часов. Они эффективней людей и уже очень скоро начнут оставлять без работы миллионы водителей всех категорий, включая водителей маршрутных такси и троллейбусов. Прогресс технологий подводит к тому, что миллионы людей в городах скоро останутся без работы.

Вопрос трудоустройства людей решается в обратом порядке.

Сначала необходимо сократить рабочий день женщин до четырёх часов в день. Чтобы у женщин хватало сил на детей и заботы по дому, а вечером – на заботу о муже, домой они должны уходить после обеда. Следующий шаг – освобождение женщин от необходимости ходить на работу для поддержания семьи.  Затем необходимо сокращать рабочее время мужчин. Параллельно людей нужно возвращать обратно на землю, возрождая экологическое натуральное фермерство. Технологии позволяют жить на земле со всеми удобствами.

На примере ведической Индии видно, что ориентация общества на духовный прогресс с освобождением времени людей от борьбы за существование дают мощный толчок развитию культуры, искусства, морали, экологических направлений науки. В Южной Индии, где у людей не было необходимости тяжко трудиться для поддержания себя и защищаться от холода, достигли необычайных высот математика, музыка, архитектура и танец, театр; возникла йога, наука о сохранении здоровья – аюрведа; наука о гармоничной организации жилого пространства. Древнейшие индийские науки до сих пор поражают своей глубиной современных учёных. Но самое главное – общество состояло из щедрых, счастливых людей.

При производстве качественных вещей потребность в больших городах просто исчезнет.

 Но самое главное — то остановит все войны, ведущиеся сейчас за ресурсы и за рынки сбыта товаров.

И это позволит сохранить нам для будущих поколений (кто знает – может быть, и для себя тоже) природу и недра планеты, которые способны нам даровать вечно здоровую безопасную жизнь.

(Фрагмент книги «Три тела. Секрет всех восточных учений», рассказывающей о том, что Вселенная, общественный и человеческий организмы действуют по одним и тем же законам)