在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 單片機(jī)學(xué)習(xí)之十九:串行通訊程序-單片機(jī)接收

            單片機(jī)學(xué)習(xí)之十九:串行通訊程序-單片機(jī)接收

            作者: 時(shí)間:2016-11-18 來(lái)源:網(wǎng)絡(luò) 收藏
            一、實(shí)驗(yàn)現(xiàn)象:

            本文引用地址:http://www.biyoush.com/article/201611/315893.htm

            當(dāng)電腦向單片機(jī)發(fā)送一個(gè)數(shù)據(jù)后,P0口發(fā)生燈光變換。

            二、實(shí)驗(yàn)任務(wù)分析:

            這個(gè)試驗(yàn)我們?nèi)匀徊捎梅绞?來(lái)完成。在上一個(gè)試驗(yàn)的通訊理論介紹中,我們知道,當(dāng)單片機(jī)接受到一幀信號(hào)后,會(huì)置位串行口接受中斷標(biāo)志RI,從而向單片機(jī)申請(qǐng)中斷。如果單片機(jī)開放中斷,就會(huì)進(jìn)入中斷服務(wù)程序,我們就把燈光變化的任務(wù)放到中斷程序中來(lái)完成即可。

            當(dāng)然,這個(gè)試驗(yàn)功能的實(shí)現(xiàn)不只是這么一種方法。我們還可以采用在主程序中查詢RI的方式來(lái)實(shí)現(xiàn)。這個(gè)試驗(yàn)我們就分別用這兩種方式來(lái)現(xiàn)它。同樣,在這個(gè)試驗(yàn)中,我們也利用串口調(diào)試助手來(lái)完成向單片機(jī)發(fā)送數(shù)據(jù)的過(guò)程。具體設(shè)置方法可見下圖:

            三、實(shí)驗(yàn)程序

            1、 中斷方式實(shí)現(xiàn)

            org 0000h

            ajmp main

            org 0023h ;串行口中斷入口地址

            ajmp serial ;跳轉(zhuǎn)至中斷服務(wù)程序

            main: clr p1.5

            mov p0,#55h ;讓8個(gè)led從右到左依次為亮、滅(注意跳線jmp0置于12)

            mov scon,#50h ;單片機(jī)工作于方式1,可以接受數(shù)據(jù)

            mov tmod,#20h ;T1設(shè)置為工作方式2

            mov tl1,#0f3h ;按照波特率為2400計(jì)算初值

            mov th1,#0f3h ;把計(jì)數(shù)初值送入常數(shù)緩沖器

            mov pcon,#80h ;smod=1,波特率變成4800

            setb tr1 ;啟動(dòng)定時(shí)器T1開始定時(shí)

            setb ea ;cpu開放中斷

            setb es ;開放串行口中斷

            ajmp $ ;等待中斷

            serial: clr ea ;cpu關(guān)閉中斷

            clr ri ;清除串口接受中斷標(biāo)志

            mov a,p0

            cpl a

            mov p0,a ;p0口燈光變化

            setb ea ;cpu開放中斷

            reti ;返回主程序,等待下一次響應(yīng)中斷

            end

            2、 查詢方式實(shí)現(xiàn):

            org 0000h

            ajmp main

            main: clr p1.5

            mov p0,#55h ;讓8個(gè)led從右到左依次為亮、滅(注意跳線jmp0置于12)

            mov scon,#50h ;單片機(jī)工作于方式1,可以接受數(shù)據(jù)

            mov tmod,#20h ;T1設(shè)置為工作方式2

            mov tl1,#0f3h ;按照波特率為2400計(jì)算初值

            mov th1,#0f3h ;把計(jì)數(shù)初值送入常數(shù)緩沖器

            mov pcon,#80h ;smod=1,波特率變成4800

            setb tr1 ;啟動(dòng)定時(shí)器T1開始定時(shí)

            wait: jnb ri,wait ;如果停止位是0,表示信息沒有發(fā)送完畢,等待

            clr ri ;清除停止位

            mov a,p0

            cpl a

            mov p0,a ;p0口燈光變化

            ajmp wait

            end

            把上面的程序下載到測(cè)試板上,然后在串口調(diào)試助手中隨便寫入一個(gè)數(shù)據(jù),每一次按下串口調(diào)試程序中的手動(dòng)發(fā)送按鍵,就會(huì)發(fā)現(xiàn)led的燈光發(fā)生變化。



            評(píng)論


            技術(shù)專區(qū)

            關(guān)閉