NUM | ASCIR | rrc.b | R15 ; 1. и 3 | . пропускаются | |
rrc.b | R15 | ||||
rrc.b | R15 | ||||
rrc.b | R15 | ||||
NUM | ASCIA | and.b | #0fh,R15 | 2. и 4. | |
пропускаются | |||||
add.b | #030h,R15 | ||||
cmp.b | #03ah,R15 | ||||
jlo | NUM End | ||||
add.b | #039,R15 | ||||
NUM | End | mov.b | Rl5,RXTXData | загрузка | |
буфера пере- | |||||
/ | датчика | ||||
/ ТХ | Byte ; | Подпрограмма | передачи байта из буфера | ||
RXTXData при | помощи CCRO UART |
Текущее состояние счетчика ТА Некоторая пауза перед первым битом Добавление единично- |
mov.w &TAR,&CCRC add.w #Bitime,&CCRC bis.w #0100h, RXTXData
го стопового бита в RXTXData
rla.w RXTXData |
mov.w #10,BitCnt |
Добавление нулевого стартового бита Загрузка счетчика битов, 8 бит данных + SP
mov.w #OUTMOD0+CCIE, &CCTL0 ; TXD = 1 = idle TX Wait tst.w BitCnt
jnz ret |
Ожидание окончания передачи
TX Wait
TA0_ISR ; Буфер RXTXData содержит данные для UART.
add.w #Bitime,&CCRC
; Интервал до следую-; щего бита