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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 單片機(jī)串行通信波特率的自適應(yīng)實(shí)現(xiàn)方法

          單片機(jī)串行通信波特率的自適應(yīng)實(shí)現(xiàn)方法

          作者: 時(shí)間:2012-02-13 來源:網(wǎng)絡(luò) 收藏

          比較式(3)和式(4),主機(jī)和從機(jī)率應(yīng)設(shè)置相等,則可得從機(jī)率發(fā)生器T1的裝入初值為:

          28.jpg

          由式(5)可看出,從機(jī)率發(fā)生器裝入初值與晶振無關(guān),且當(dāng)N=8時(shí)分母為28,此時(shí)后一項(xiàng)做除法運(yùn)算最為方便,分子右移8位即可,在程序運(yùn)算中只需丟棄分子的最后一個(gè)字節(jié)即可。

          若使用定時(shí)器2作波特率發(fā)生器,則易得其初值應(yīng)為:

          29.jpg

          3 波特率自法在IAP編程握手同步中的應(yīng)用

          SST89C54/58可以方便地IAP(InApplication Programming),通過IAP功能可以在應(yīng)用板上直接下載程序,不需任何編程器就可以完成系統(tǒng)的開發(fā)及教學(xué)實(shí)驗(yàn)。作者基于IAP模塊設(shè)計(jì)了一款專用的51單片機(jī)開發(fā)學(xué)習(xí)系統(tǒng),其成本不超過50元,為標(biāo)準(zhǔn)51,52系列單片機(jī)的開發(fā)與學(xué)習(xí)提供了一種便捷而廉價(jià)的手段和。

          使用IAP功能可以對(duì)產(chǎn)品的軟件進(jìn)行在線升級(jí),而不需要其他硬件。可以這樣說,單片機(jī)系統(tǒng)只要有口,利用IAP功能通過口便可將PC機(jī)內(nèi)的產(chǎn)品升級(jí)軟件下載到產(chǎn)品中去,而產(chǎn)品軟件升級(jí)換代。甚至在遠(yuǎn)程通過Modem對(duì)產(chǎn)品進(jìn)行軟件升級(jí),這也將是以后各種電子產(chǎn)品發(fā)展的必然趨勢(shì)。而在線升級(jí)離不開速率的自動(dòng)

          30.jpg

          同步握手中斷處理程序流程圖如圖4所示。從機(jī)在待機(jī)監(jiān)控狀態(tài)時(shí),開放外部中斷 0,當(dāng)主機(jī)訪問從機(jī)時(shí),先發(fā)送同步字節(jié)80H,再送FEH(也可為55H, AAH等),則當(dāng)80H發(fā)出時(shí)從機(jī)RXD腳出現(xiàn)負(fù)跳變,觸發(fā)外部中斷0,啟動(dòng)定時(shí)器0對(duì)同步脈沖進(jìn)行測量,同時(shí)關(guān)閉外中斷0,并初始化口建立串行口數(shù)據(jù)接收,等待下一同步字節(jié)FEH,若同步成功則發(fā)應(yīng)答信號(hào),否則進(jìn)入監(jiān)控程序繼續(xù)等待同步。所有數(shù)據(jù)收發(fā)完畢后再開放外中斷0,進(jìn)入監(jiān)控待機(jī)狀態(tài)。

          4 結(jié) 語

          在自制的SST89C5X系列單片機(jī)IAP仿真系統(tǒng)上對(duì)文中提出的反復(fù)進(jìn)行了測試,在從機(jī)主振為12 MHz條件下,從300~38 400 b/s范圍的各種常用波特率從機(jī)均很好地。當(dāng)波特率低于120 b/s時(shí),定時(shí)器0會(huì)產(chǎn)生溢出,若主機(jī)可能用到此波特率,可以用T0中斷計(jì)數(shù)對(duì)計(jì)數(shù)值進(jìn)行修正。若采用查詢RXD引腳電平的方式,則圖1可進(jìn)一步簡化,即可以不用外中斷0,這更能節(jié)約硬件資源。文中提出的可以很

          方便地應(yīng)用于多機(jī)分布式控制系統(tǒng)中,也可以應(yīng)用于各種需要變波特率的場合。

          參考文獻(xiàn)
          [1]Silicon Storage Technology,Inc.Designconsiderations for the SSTFlashFlex51 family microcontroller[EB/OL].http://www.sst.com,2003-06-10.
          [2]Silicon Storage Technology,Inc.SSTFlash-Flex51 microcontroller In-appliccationProgramming Basics[EB/OL].http://www.sst.com,2003-06-10.
          [3]任貴勇.串行波特率的一種自動(dòng)檢測方法[J].計(jì)算機(jī)自動(dòng)測量與控制,2000,8(1):54-61.
          [4]胡漢才.單片機(jī)原理及系統(tǒng)設(shè)計(jì)[M].北京:清華大學(xué)出版社,2002.
          [5]萬新恒.80C51系列單片機(jī)波特率自動(dòng)檢測的通用程序[J].自動(dòng)化與儀表,1997,12(5):45-46.
          [6]楊亞江.一種簡便的單片機(jī)串行參數(shù)自整定方法[J].電測與儀表,2002,39(437):51-54.
          [7]張慶輝.串行通信波特率自動(dòng)檢測方法及軟件[J].微計(jì)算機(jī)信息,2002,18(12):57-58.


          上一頁 1 2 下一頁

          評(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); })();