找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 3704|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

元器件:用AVR單片機(jī)模擬的串口程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:39729 發(fā)表于 2012-5-5 11:46 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
主程序中,單片機(jī)將標(biāo)準(zhǔn)串口設(shè)置為115200bps,將模擬串口設(shè)置為19200bps。單片機(jī)將標(biāo)準(zhǔn)串口收到的數(shù)據(jù)從模擬串口發(fā)送出去,將模擬串口接收到的數(shù)據(jù)從標(biāo)準(zhǔn)串口發(fā)送回來。 txd0_data: ldi status,(1< push temp in temp,gimsk cbr temp,(1< out gimsk,temp ;disable gimsk/int0 pop temp ser bit_cnt ;bit_cnt=0xff mov sbuf0,temp ;send data ldi temp,(256-N) out TCNT0,temp ;wait 1 bit timer0 interrupt in temp,tifr sbr temp,(1< out tifr,temp ;clr tifr/tov0 in temp,timsk sbr temp,(1< out timsk,temp ;enable timsk/toie0 cbi portb,txd0 ;uart start ret ;****************************************** rxd0_data: sbrs status,fe0 ;if fe0=0 then exit rjmp rxd0_data_end cbr status,(1< mov temp,sbuf0 rxd0_data_end: ret ;****************************************** ;uart received a byts from uart and then return it from uart0: ;uart received a byts from uart0 and then return it from uart : main: sbIC usr,rxc rjmp send_115200 sbrs status,rdr rjmp uart_end send_19200: rcall rxd0_data ;get uart data from 19200bps uart0 wait2: sbis usr,udrie rjmp wait2 out udr,temp ;send data to 115200bps uart rjmp uart_end www.qqzbd.com send_115200: in temp,udr ;get uart data from 115200bps uart sbic usr,fe www.senvqq.com rjmp uart_end ;if fe err then end wait3: sbrc status,td ;wait send flag rjmp wait3 rcall txd0_data ;send data to 19200bps uart0 uart_end: rjmp main
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表