Ь ///- Интерфейс с внешними устройствами
В режиме калибровки задаются две константы. Это нижний (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 происходит переход в нормальный режим работы.