在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,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首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 51系列單片機之串口通信

            51系列單片機之串口通信

            作者: 時間:2016-11-20 來源:網(wǎng)絡(luò) 收藏
            單片機串口通信看起來是很復(fù)雜的,主要是因為他用到了更多的寄存器,與前面的知識相比他更具綜合能力,寫起來考慮的問題自然也變多了.而前面學(xué)習(xí)過的定時器與中斷將是單片機通信的基礎(chǔ).
            單片機的中斷系統(tǒng)中第4個中斷就是串口中斷,要進(jìn)行串口通信首先就要打開CPU總中斷EA,還要打開串口通信中斷ES,這是串口通信的前堤,而串口通信也跟計時器一樣有很多的模式,因此我們還要設(shè)置SCON寄存器來指定采用哪一種方式進(jìn)行通信,而在通信的過程中,我們還要設(shè)定通信的波特率,不然的話,單片機是沒辦法進(jìn)行采樣的,這樣也不會得到正確的結(jié)果了.我在實驗過程中用到的是1號定時器來設(shè)定的波特率,用到了計時器方式2,也就是8位自動重裝,這樣可以簡化編程,她的實現(xiàn)思想就是將常數(shù)放入TH,而TL中則是初始化參數(shù),當(dāng)溢出時,單片機會自動將TH中的常數(shù)裝入TL中.



            再來說說波特率,我們?yōu)槭裁匆O(shè)定波特率,因為單片機會以16倍波特率的速度進(jìn)行采樣,而在實驗中我們用的是10位異步收發(fā)方式,因此要將SM0置0,SM1置1.而其中的10位有8位數(shù)據(jù)位,第一位和最后一位是發(fā)送數(shù)據(jù)的起始與結(jié)束.采用高的皮特率就不會出錯啦.而波特率是有一個公式的:
            方式0的波特率 = fosc/12
            方式2的波特率 =(2SMOD/64)· fosc
            方式1的波特率 =(2SMOD/32)·(T1溢出率)
            方式3的波特率 =(2SMOD/32)·(T1溢出率)
            T1 溢出率 = fosc /{12×[256 -(TH1)]}
            根據(jù)公式我們很容易就算出當(dāng)晶振為110592HZ時,要達(dá)到9600的波特率,我們只需要將TL1置FDH即可,如下圖:


            除此之外,你還要將SCON中的REN位置1,不然的話,單片機是不會接收數(shù)據(jù)的.
            還有不要忘了選擇定時器的工作方式,設(shè)置TMOD為0x20既是工作方式2,8位自動重裝定時器.
            這樣一來,初始批工作算是差不多了.而串口通信分為中斷方式,和查詢方式,如果你想用查詢方式你也不用設(shè)置IE寄存器了.
            在串口通信中,還有一個很重要的寄存器SBUF,其實也不是一個,是兩個,只是它們共用同一個地址,再熱氣表達(dá)式的不同,單片機會自動選擇使用哪一個SBUF.


            關(guān)鍵詞: 51系列單片機串口通

            評論


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

            關(guān)閉