<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 輕松學(xué)PIC之RS232串口通信篇

          輕松學(xué)PIC之RS232串口通信篇

          作者: 時(shí)間:2013-11-14 來(lái)源:網(wǎng)絡(luò) 收藏
          大家好, 通過(guò)前一期的學(xué)習(xí), 我們已經(jīng)對(duì)ICD2 仿真燒寫器和增強(qiáng)型 實(shí)驗(yàn)板的使用方法及學(xué)習(xí)方式有所了解與熟悉,學(xué)會(huì)了如何用單片機(jī)來(lái)控制發(fā)光管、繼電器、蜂鳴器、按鍵、數(shù)碼管等資源,體會(huì)到了學(xué)習(xí)板的易用性與易學(xué)性,看了前幾期實(shí)例,大部分都是基于單片機(jī)端口操作原理呢?

            大家是否覺(jué)得這樣一個(gè)單片機(jī)系統(tǒng)似乎缺少點(diǎn)什么呢?不錯(cuò),本期我們將介紹單片機(jī)與電腦通訊,使單片機(jī)與PC 機(jī)能夠聯(lián)機(jī)工作。

            單片機(jī)除了需要控制外圍器件完成特定的功能外,在很多應(yīng)用中還要完成單片機(jī)和單片機(jī)之間、單片機(jī)和外圍器件之間,以及單片機(jī)和微機(jī)之間的數(shù)據(jù)交換和指令的傳輸,這就是單片機(jī)的通信。單片機(jī)的通信方式可以分為并行通信和串行通信。并行方式傳送一個(gè)字節(jié)的數(shù)據(jù)至少需要8 條數(shù)據(jù)線。

            一般來(lái)講單片機(jī)與打印機(jī)等外圍設(shè)備連接時(shí),除8條數(shù)據(jù)線外,還要狀態(tài)、應(yīng)答等控制線,當(dāng)傳送距離過(guò)遠(yuǎn)時(shí)電線要求過(guò)多,成本會(huì)增加很多。單片機(jī)的串行通信方法較為多樣,傳統(tǒng)的串行通信方式是通過(guò)單片機(jī)自帶的串行口進(jìn)行 方式的通信。

            串行通信是以一位數(shù)據(jù)線傳送數(shù)據(jù)的位信號(hào),即使加上幾條通信聯(lián)絡(luò)控制線,也比并行通信用的線少。

            因此,串行通信適合遠(yuǎn)距離數(shù)據(jù)傳送,如大型主機(jī)與其遠(yuǎn)程終端之間,處于兩地的計(jì)算機(jī)之間,采用串行通信就非常經(jīng)濟(jì)。

            串行通信又分為異步傳送和同步傳送兩種基本方式。

            異步通訊:異步通信傳輸?shù)臄?shù)據(jù)格式一般由1個(gè)起始位、7 個(gè)或8 個(gè)數(shù)據(jù)位、1 到2 個(gè)停止位和一個(gè)校驗(yàn)位組成。它用一個(gè)起始位表示字符的開(kāi)始,用停止位表示字符的結(jié)束。其每幀的格式如圖1 所示。

            在一幀格式中,先是一個(gè)起始位0,然后是8個(gè)數(shù)據(jù)位,規(guī)定低位在前,高位在后,接下來(lái)是奇偶校驗(yàn)位(可以省略),最后是停止位1。用這種格式表示字符,則字符可以一個(gè)接一個(gè)地傳送。

            在異步通訊中,通信雙方采用獨(dú)立的時(shí)鐘,起始位觸發(fā)雙方同步時(shí)鐘。在異步通信中CPU 與外設(shè)之間必須有幾項(xiàng)約定,即每一幀位數(shù),字符格式和波特率。字符格式的規(guī)定是雙方能夠在對(duì)同一種0 和1 的數(shù)據(jù)串理解成同一種意義。原則上字符格式可以由通訊的雙方自由制定,但從通用、方便的角度出發(fā),一般還是使用一些標(biāo)準(zhǔn)為好,如采用ASCII 標(biāo)準(zhǔn)。

            同步通訊:在同步通訊中所傳輸?shù)臄?shù)據(jù)格式是由多個(gè)數(shù)據(jù)組成,每幀有一個(gè)或兩個(gè)同步字符作為起始位以觸發(fā)同步時(shí)鐘開(kāi)始發(fā)送或接收。同步通訊數(shù)據(jù)幀格式如圖2 所示。在異步通信中,每個(gè)字符要用起始位和停止位作為字符開(kāi)始和結(jié)束的標(biāo)志,占用了時(shí)間,所以在數(shù)據(jù)塊傳遞時(shí)。波特率指每秒送多少個(gè)0 或1,由于包含起始位,停止位等,實(shí)際傳送數(shù)據(jù)每秒多少字節(jié)總比波特率的1/8 少。為了提高速度,常去掉這些標(biāo)志,采用同步傳送。由于數(shù)據(jù)塊傳遞開(kāi)始要用同步字符來(lái)指示,同時(shí)要求由時(shí)鐘來(lái)實(shí)現(xiàn)發(fā)送端與接收端之間的同步,故硬件較復(fù)雜。同步傳輸方式比異步傳輸方式速度快,這是它的優(yōu)勢(shì)。但同步傳輸方式也有其缺點(diǎn),即它必須要用一個(gè)時(shí)鐘來(lái)協(xié)調(diào)收發(fā)器的工作,所以它的設(shè)備也較復(fù)雜。

            現(xiàn)在我們將用一個(gè)實(shí)例來(lái)剖析一下它到底是如何控制數(shù)據(jù)收發(fā)的,單片機(jī)串口將接收PC 機(jī)發(fā)送的數(shù)據(jù),同時(shí)點(diǎn)亮相應(yīng)的發(fā)光管做指示。

            首先,我們來(lái)看一下這個(gè)實(shí)例所涉及到的理論基礎(chǔ)知識(shí)。 單片機(jī)有全雙工的串行通訊口,所以單片機(jī)和電腦之間可以方便地進(jìn)行串口通訊。進(jìn)行串行通訊時(shí)要滿足一定的條件,比如電腦的串口是 電平(邏輯擺幅大,邏輯1 為-3 ~ -15V,邏輯0 為+3 ~ +15V),而單片機(jī)的串口是TTL 電平(邏輯擺幅小邏輯1 為>2.4V, 邏輯0 為0.4V),兩者之間必須有一個(gè)電平轉(zhuǎn)換電路,我們采用了專用芯片MAX232 進(jìn)行轉(zhuǎn)換,雖然也可以用幾個(gè)三極管進(jìn)行模擬轉(zhuǎn)換,但是還是用專用芯片更簡(jiǎn)單可靠。

            MAX232 芯片是MAXIM 公司生產(chǎn)的、包含兩路收發(fā)和電荷泵升壓電路,外部引腳和內(nèi)部電路如圖3所示:

          手機(jī)電池相關(guān)文章:手機(jī)電池修復(fù)


          數(shù)字通信相關(guān)文章:數(shù)字通信原理


          通信相關(guān)文章:通信原理


          電荷放大器相關(guān)文章:電荷放大器原理
          蜂鳴器相關(guān)文章:蜂鳴器原理

          上一頁(yè) 1 2 下一頁(yè)

          關(guān)鍵詞: PIC RS232 串口通信

          評(píng)論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();