專注電子技術(shù)學(xué)習(xí)與研究
當(dāng)前位置:單片機(jī)教程網(wǎng) >> MCU設(shè)計(jì)實(shí)例 >> 瀏覽文章

單片機(jī)匯編實(shí)驗(yàn)五-1:單片機(jī)與PC機(jī)串行通信實(shí)驗(yàn)

作者:韓冰   來源:本站原創(chuàng)   點(diǎn)擊數(shù):  更新時(shí)間:2013年11月30日   【字體:

 

實(shí)驗(yàn)要求:AT89S52串行通信口工作在方式1,8位UART方式,允許接收,9600bps。在PC機(jī)上運(yùn)行串口調(diào)試軟件。編程實(shí)現(xiàn):?jiǎn)纹瑱C(jī)接收PC機(jī)發(fā)送的數(shù)據(jù)并回送給PC機(jī)顯示,可同時(shí)送LED顯示;
//This program is copyed on the internet;
//I even don't know the author ;here I thank him
//The dare
;打開任意串口調(diào)試軟件
;打開對(duì)應(yīng)的串口,可以在設(shè)備管理器中看到
;設(shè)置波特率為9600,8個(gè)數(shù)據(jù)位,1個(gè)停止位,無奇偶校驗(yàn)
;在發(fā)送欄輸入任意數(shù)字或者字符串,點(diǎn)擊發(fā)送,接收區(qū)能接收到相同的信息
;發(fā)送格式與接收格式必須相同,如都是字符或者都是十六進(jìn)制格式
        ORG 0000H
        AJMP MAIN
        ORG 0023H                //串口中斷程序的入口地址
        AJMP RECEIVE         //跳轉(zhuǎn)到接收中斷入口
        ORG 0030H
MAIN:   MOV TMOD,#20H   //T1工作方式2
        MOV TH1,#0FDH         ;波特率9600
        MOV SCON,#50H         ;傳口工作方式1,允許中斷接受
        SETB EA                       ;打開總中斷
        SETB ES                       ;打開串口中斷
        SETB TR1                     ;打開定時(shí)器1
        AJMP $
RECEIVE:
        CLR RI
        MOV A,SBUF              //串口接收數(shù)據(jù)
        MOV R0,A
        MOV SBUF,A              //將接收的數(shù)據(jù)再傳送給計(jì)算機(jī)
        JNB TI,$
        CLR TI
        MOV A,R0                                         
        MOV P1,A                 //送LED顯示
        RETI
        END
 

關(guān)閉窗口

相關(guān)文章