Ниже приведена часть программы, осуществляющая преобразование напряжения от датчика температуры. При изменении температуры от 0 до 1000С напряжение на входе АЦП изменяется в пределах 0…4,88 В. При этом результат преобразования в регистрах ADRESL и ADRESH будет изменяться в пределах 0…1000d, что позволяет легко преобразовать результат в десятичный формат.
;- TIME1 ; СФОРМИРОВАТЬ ЗАДЕРЖКУ 20 мкс
MOVWF TIMER1 TIMER1, F $+1
;-_START ; ПОДПРОГРАММА ИЗМЕРЕНИЯ ТЕМПЕРАТУРЫ ADCON0, GO ; НАЧАТЬ ПРЕОБРАЗОВАНИЕ ADCON0, GO ; ОЖИДАТЬ ОКОНЧАНИЯ ПРЕОБРАЗОВАНИЯ $-1
;-
Для осуществления временных задержек, необходимых для заряда внутреннего конденсатора модуля АЦП реализован программный счетчик на основе регистра TIMER1, определенного по адресу 26h. Счетчик формирует временную задержку 20 мкс. Рассчитаем константу TIME1.
;
где Tз - время задержки, Fosc - тактовая частота; n - количество машинных циклов в одном цикле работы счетчика. Так как счетчик включает в себя команду DECFSZ, выполняемую за 1 МЦ (если результат не равен 0) и команду GOTO, выполняемую за 2 МЦ, то n = 3. Таким образом
.
Самое читаемое:
Операционный микроэлектронный усилитель
Современная радиоэлектронная аппаратура (РЭА) характеризуется
тремя основными чертами:
резким возрастанием количества компонентов и в связи с этим
значительным уплотнением аппаратуры;
мобильностью, так как РЭА устанавливается на объектах, движущихся
с космическими скоростями;
количественным ростом выпуска аппаратуры и, след ...