Библиотека Компэла 139


Ь ///- Интерфейс с внешними устройствами

В режиме калибровки задаются две константы. Это нижний (CAL L0) и верхний (CAL HI) пороги диапазона измерений. При нажатии одной из кно­пок результат преобразования АЦП ADS1100 считывается при помощи фун­кции l2CRead16() и сохраняется в соответствующей временной переменной. По окончании калибровки обе эти переменные сохраняются сегменте INFOA Flash памяти при помощи функции внутрисистемного самопрограммирования. После этого система переходит в режим измерения. В этом режиме результат преобразования ADS1100 считывается и сравнивается с предыдущим каждые 0.25 сек. Если значения отличаются, то состояние индикатора обновляется. Это позволяет избежать ненужных 32-разрядных целочисленных умножений и делений при неизменности измеряемого сигнала. Значение индицируемого значения рассчитывается по следующей формуле:

CurrentADCValue - CalMin

DisplayValue =--------------------------------------- х CAL_MIN_MAX_SPAN

CalMax - CalMin

Диапазон от CalMax до CalMin пересчитывается в значение от 0 до CAL_ MIN_MAX_SPAN. По умолчанию CAL_MIN_MAX_SPAN установлен равным 1,000. При помощи кнопки РВ2 можно в любое время перейти в режим калибровки.

Нажатие кнопки РВ1 вызывает остановку преобразования, отключает ЖКИ и переводит MSP430 в режим пониженного потребления LPM3. В этом режиме устройство потребляет менее 1 мкА, при этом 32 кГц генератор остается в рабо­чем состоянии. Если необходимо, то можно задействовать режим пониженного потребления LPM4. При повторном нажатии кнопки РВ1 происходит переход в нормальный режим работы.