用AVR单片机模拟的串口程序
rxd0_data:
txd0_data:
ldistatus,(1busy)|(1td);busy=1,td=1,rdr=0
pushtemp
intemp,gimsk
cbrtemp,(1int0)
outgimsk,temp;disablegimsk/int0
poptemp
serbit_cnt;bit_cnt=0xff
movsbuf0,temp;senddata
lditemp,(256-N)
outTCNT0,temp;wait1bittimer0interrupt
intemp,tifr
sbrtemp,(1tov0)
outtifr,temp;clrtifr/tov0
intemp,timsk
sbrtemp,(1toie0)
outtimsk,temp;enabletimsk/toie0
cbiportb,txd0;uartstart
ret
;******************************************
rxd0_data:
sbrsstatus,fe0;iffe0=0thenexit
rjmprxd0_data_end
cbrstatus,(1rdr);rdr=0
movtemp,sbuf0
rxd0_data_end:
ret
;******************************************
;uartreceivedabytsfromuartandthenreturnitfromuart0:
;uartreceivedabytsfromuart0andthenreturnitfromuart:
main:
sbicusr,rxc
rjmpsend_115200
sbrsstatus,rdr
rjmpuart_end
send_19200:
rcallrxd0_data;getuartdatafrom19200bpsuart0
wait2:sbisusr,udrie
rjmpwait2
outudr,temp;senddatato115200bpsuart
rjmpuart_end
send_115200:
intemp,udr;getuartdatafrom115200bpsuart
sbicusr,fe
rjmpuart_end;iffeerrthenend
wait3:sbrcstatus,td;waitsendflag
rjmpwait3
rcalltxd0_data;senddatato19200bpsuart0
uart_end:
rjmpmain
;**********************************************************
.exit
;**********************************************************
- 锁相环控制及初始化简析(08-27)
- 基于AVR单片机的串口转FSK的通信模块设计(01-23)
- 基于AVR单片机的服装压力检测系统设计(05-03)
- 基于Atmel AVR单片机的无线图像侦检系统(10-19)
- avr单片机串口多机通讯及实例(12-03)
- AVR单片机入门系列(25)AVR PWM OC0(12-03)
