Разработка медицинского цифрового термометра
| Категория реферата: Рефераты по радиоэлектронике
| Теги реферата: реферат революция, контрольная работа 1
| Добавил(а) на сайт: Косинов.
Предыдущая страница реферата | 1 2 3 4 5 6 7 8 9 10 11 | Следующая страница реферата
Рис.7.
Программа инициализации ЖКИ составленная по данному алгоритму и написанная
на языке Ассемблер будет выглядеть так: initlcd:
rcall del
ldi r25,30h
rcall icom
rcall del
ldi r25,30h
rcall icom
rcall del
ldi r25,30h
rcall icom
ldi r25,38h ; устанавливаем разрядность шины данных=8, количество строк =2, шрифт 5х7 точек
rcall icom ldi r25,08h ; включить дисплей, зажечь курсор rcall icom ldi r25,01h ; очистить дисплей и установить курсор в нулевую позицию
rcall icom ldi r25,06h; устанавливаем направление сдвига курсор в право, запретить сдвиг дисплея вместе со сдвигом курсора rcall icom ret
del: ldi r17,150 ;задержка ~15 ms при кварце 4 МГц l: ldi r18,200 ; l1: dec r18 ; brne l1 ; dec r17 ; brne l ; ret
icom: in r0,portA sbi r0,2 ; установит RS в 1 out portA,r0 in r0,portA сbi r0,1 ; установит W/R в 0 out portA,r0 in r0,portA sbi r0,0 ; установит Е в 1 out portC,r0
out portB,r25 ;записать в ЖКИ команду из регистра r25
in r0,portA cbi r0,0 ;сбросить Е в 0 out portA,r0 in r0,portA sbi r0,1 ; установит W/R в 1 out portA,r0
ret
2.3 НАПИСАНИЕ ПРОГРАММЫ
Текст программы составленный по структурной схеме на рис.6 приведен ниже
.include "Atmega103.inc"
.def flag=r1
.def flagszap =0
.def flagklav =1
.def flagsbr =2
.def flagvyvod =3
.def flagdan =4
.def flagpr =5
.def tmp=r20
.cseg
.org 0H rjmp main
main: rcall init ; инициализация контроллера rcall initlcd ; инициализация ЖКИ rcall priglashenie ;программа выдачи начального приглашения m1: in r30,PinC ; программа опроса клавиатуры и флагов
ldi r31,FEh cp r30,r31 ;если равно, то переходим на подпрограмму ввода rcall vvod
ldi r31,FDh cp r30,r31 ;если равно, то переходим на подпрограмму вывода rcall vyvod
ldi r31,7Fh cp r30,r31 ;если равно, то переходим на подпрограмму сброса rcall sbros
sbrc USR,RxC ; проверяем если бит USR,RxC=1, то переходим на подпрограмму приема данных от компьютера, если не равен то пропускаем следующую команду rcall priem ; подпрограмма приема данных, после своего окончания работы она скидывает флаг USR,RxC sbrs flagdan ; проверяем если 0, то переход на m2, если нет, то пропускаем следующую команду rjmp m2 sbrs flagpr rjmp m2 rcall outdan ; подпрограмма выдачи данных на компьютер, после выполнения выдачи данных сбрасывает флаг данных и приемника
m2:
rjmp m1
init: ldi r31,ramend ; указываем стек out SPL,r31
ldi r31,ffh ; порт B настроить на вывод out ddrb,r31
ldi r31, 00h ; Port С to ввод out DDRС, r31
ldi r31,FFh ; подключаем резисторы out PortС, r31
Рекомендуем скачать другие рефераты по теме: первый снег сочинение, учебный реферат, ответы по контрольной.
Категории:
Предыдущая страница реферата | 1 2 3 4 5 6 7 8 9 10 11 | Следующая страница реферата