Курсовая работа: Розробка програми передачі даних через послідовний порт мікроконтролера

6. Встановлюємо біт RI в нуль, для використання переривання при прийомі байта даних.

7. В TL1 таймера TMR1 записуємо число 200, для формування нуля із заданою тривалістю на лінії порту.

8. В TL1 таймера TMR1 записуємо число 158, для формування одиниці із заданою тривалістю на лінії порту.


Алгоритм




4.2 Алгоритм підпрограми обробки переривань від послідовного порту



Лістинг програми

org 0

jmp Osn ;Перехід на основну програму

org 0023h

mov @R0,SBUF ;Зчитування з SBUF в адрес, що знаходиться в R0

inc R0 ;Інкрементуєм лічильник початкової адреси масиву

dec R5 ;Декрементуєм лічильник байт

clr RI ;Скидаємо прапор переривання приймача

reti ;Вихід з підпрограми обробки переривань

Osn: setb SM0 ;Визначаєм режим роботи послідовного порту

setb SM1

clr SM2

setb REN ;Встановлюємо біт дозволу прийому даних

setb EA ;Знімаєм блокування переривань

setb ES ;Встановлюєм дозвіл на переривання від посл. порту

orl PCON,#10000000b ;Встановлюємо біт SMOD в одиницю

mov TMOD,#00100010b ;Визначаємо режим роботи таймерів

mov TH0,#189 ;Загружаєм TMR0

mov R0,#4eh ;Загружаєм лічильник початкової адреси масиву

mov R5,#27 ;Загружаєм лічильник байт

setb TR0 ;Запускаєм TMR0

Zagr: mov TH1,#200 ;Загружаєм TMR1

clr P0.7 ;Встановлюємо на лінії порту P0.7 нуль

setb TR1 ;Запускаєм TMR1

К-во Просмотров: 152
Бесплатно скачать Курсовая работа: Розробка програми передачі даних через послідовний порт мікроконтролера