Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс. e-mail:jobsmp@pochta.ru |
;.equ TxD = PD1 ; Это лишнее, см. ниже
;.equ Bd96 = 64 ; Это делают не руками:
.equ xtal = 10000 ; Частота XTAL в КГЦ
.equ baud = 9600 ; Baud rate
.equ brgval = (xtal*1000)/(16*baud)-1 ; Так универсальнее, не правда ли?
.def t0 = r16
.def t1 = r17
InitPorts:
; ldi t1,1 << TxD ; Это лишнее - установка TXEN это сделает автоматически
; out DDRD,t1 ;
ldi t1,3 << TXEN ; Так короче
out UCSRB,t1
ldi t1,3 << UCSZ0 ; Так короче и понятнее. А 1 << 7 не нужно - нет такой дури в Т2313!
out UCSRC,t1
ldi t1,High(brgval)
ldi t0,Low (brgval)
out UBRRH,t1
out UBRRL,t0
cli