www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]   串行通信在波特率誤差超過一定范圍時,會產(chǎn)生錯誤。本節(jié)介紹的內(nèi)容在51單片機(jī)上僅用軟件就實現(xiàn)了波特率自動整定,最大程度地減小了波特率誤差,因而可使串行通信的可靠性得到提高?!   ?1單片機(jī)

  串行通信波特率誤差超過一定范圍時,會產(chǎn)生錯誤。本節(jié)介紹的內(nèi)容在51單片機(jī)上僅用軟件就實現(xiàn)了波特率自動整定,最大程度地減小了波特率誤差,因而可使串行通信的可靠性得到提高。
  
  51單片機(jī)具有一個全雙工的串行接口,提供了多機(jī)通信功能,可方便地構(gòu)成多機(jī)系統(tǒng)(多機(jī)容錯系統(tǒng)、集散型多級系統(tǒng)),為完成大型的控制任務(wù)提供了有效的手段。用51單片機(jī)組成的多機(jī)控制系統(tǒng),國內(nèi)已出現(xiàn)多例。在這樣的系統(tǒng)中,可靠地實現(xiàn)多處理器間的信息交換(串行通信)是十分重要的。本節(jié)的研究發(fā)現(xiàn),波特率作為串行通信的速率,同時對通信的可靠性有重要影響。


一、正常串行通信的實現(xiàn)條件
  
  串行通信是按位傳送數(shù)據(jù)的。每個數(shù)據(jù)有8或9個數(shù)據(jù)位,加上起始位和停止位構(gòu)成一個串行幀。每一位占用時間T,1/T稱為串行通信的波特率。理想情況下,發(fā)送機(jī)和接收機(jī)設(shè)置的波特率一致。接收機(jī)的接收控制器在串行幀每一數(shù)據(jù)位的中點進(jìn)行采樣,能接收到正確的數(shù)據(jù),但要求波特率完全一致是不可能的。這就提出了一個問題:要可靠地實現(xiàn)串行通信,允許收發(fā)雙方的波特率有多大誤差?我們以一個10位的串行幀為例進(jìn)行分析。

  圖1 - 85 (b)是正常工作的情形,波特率一致。在圖1 - 85(a)中,接收波特率不變,而發(fā)送波特率變小,每位的時間T延長5%,在第10位采樣時,就產(chǎn)生了錯位,不能進(jìn)行正常通信。對于10位的串行幀,允許的最大波特率誤差不超過5%;在多機(jī)通信方式下,串行幀是11位的,允許的最大波特率誤差不超過4. 5%。
  
  上面得到的僅僅是理想情況下的波特率誤差允許上限。實際應(yīng)用中,由于硬件設(shè)備的頻帶有限,數(shù)據(jù)位的上下跳沿要占用一定時間,每個數(shù)據(jù)位的有效時間比理想情況要短,所以對波特率誤差會有更嚴(yán)格的要求。

二、波特率誤差來源及克服辦法

  1.51單片機(jī)串行通信波特率的產(chǎn)生
  
  51單片機(jī)的串行口有4種操作模式,由串行口控制字SCON中的兩位SMO和SM1設(shè)置。模式0作同步移位寄存器,與通信無關(guān);模式2的波特率直接由機(jī)器主頻fosc決定,不方便應(yīng)用;常用的是模式1和模式3.分別是8位和9位異步通信口。其波特率是可變的,由機(jī)內(nèi)的定時/計數(shù)器1(C/T1)來產(chǎn)生,波特率有以下公式:


  
  其中SMOD是電源控制字PCON中的一位,可編程為0或1。
  
  C/T1有3種工作模式:模式0為13位定時/計數(shù)器,模式1為16位定時/計數(shù)器,而模式2是可自動重裝時間常數(shù)的8位定時/計數(shù)器。當(dāng)需要的波特率不是太低時,一般用模式2作波特率發(fā)生器:一方面省去了用C/Ti中斷服務(wù)重裝時間常數(shù)的工作,更主要的是避免了因中斷響應(yīng)時間不同引起的波特率隨機(jī)誤差。對C/T,的模式2,波特率按如下公式計算:


  
  式中:fosc為晶振頻率;TH1為時間常數(shù)。
  
  若采用6 MHz的晶振,用模式2可產(chǎn)生的最低波特率為61。對于實時控制系統(tǒng),絕不會采用更低的信息傳遞速率(每秒6個數(shù)據(jù))。所以,以下討論只限于C/Ti的模式2作波特率發(fā)生器的情況。
  
  2.波特率誤差的來源
  
  由式(1 -4)可知,fbit與fosc及TH1有關(guān)。首先考慮fosc對.fbit的影響。51的振蕩器電路是  由晶體及電容C1、C2構(gòu)成的。XTAL1及XTAL2為外接晶體管引腳。fosc主要由晶體的固有頻率決定,同時也與電容C1、C2及外界溫度有一定關(guān)系。另外,晶體頻率的標(biāo)稱值與實際值也不可能完全一致。我們曾測定過一組標(biāo)稱4 MHz的晶體,發(fā)現(xiàn)離散度達(dá)2%。由式(1-4)得:

  這說明用有誤差的fosc去計算fbit時,fbit,會產(chǎn)生同樣大小的相對誤差。
  
  下面考慮TH,的影響。時間常數(shù)只有8位字長,這樣就必然存在量化誤差。采用四舍五入后,THi的量化誤差|△TH1| mAX=0.5。綜合式(1-4)、(1-5)得:

  由式(1 -6)可以看出,由量化誤差產(chǎn)生的波特率誤差與波特率成正比,與fosc成反比;并且若置SMOD-l,則可使誤差減小一半。
  
  3.減小波特率誤差的措施
  
  人工設(shè)置波特率,不可避免要用到fosc的標(biāo)稱值,這樣就引入了一個誤差源。采用自動整定,可以消除由fosc標(biāo)稱值不準(zhǔn)確引入的誤差。
  
  波特率自動整定可按如下的方法進(jìn)行:在一個多機(jī)系統(tǒng)中,由系統(tǒng)主機(jī)產(chǎn)生出一個預(yù)定波特率的方波信號,從串行口發(fā)送到各從機(jī);各從機(jī)以各自的時鐘為基準(zhǔn)測定此方波的周期所包含的機(jī)器周期數(shù)N,從N可以方便地?fù)Q算出產(chǎn)生同樣波特率需要的時間常數(shù)TH1。計算公式推導(dǎo)如下:
  
  51單片機(jī)一個機(jī)器周期的時間為δT=12/fosc,一個方波周期包含兩個串行數(shù)據(jù)位,這樣,每位數(shù)據(jù)占用的時間為

  而fbit=1/T,代入式(1-4)得
  
  TH1的量化誤差總是存在的,為減小其影響,應(yīng)盡量選SMOD=1;在用式(1-7)進(jìn)行計算時,要進(jìn)行舍入,而不是截尾。
  
  采用自動整定時,波特率誤差僅由TH,的量化誤差引起:


  
  采用12 MHz晶體,fbit=4 800時可能的最大波特率誤差為3.84% (SMOD=1).可以保證正常通信。一般系統(tǒng)1 200的波特率就足以滿足要求了。

三、波特率自動整定的實現(xiàn)和結(jié)論
  
  1.自動整定的實現(xiàn)
  
  51單片機(jī)的P3口是復(fù)用的,其中的P3.0(串行口接收線)和P3.1(發(fā)送線)可以用作一般輸入/輸出口線,也可作為串行口使用。利用這個特點,可以在不對串行口接線作任何變動的情況下,僅利用軟件實現(xiàn)波特率的自動整定。
  
  首先要完成的是方波周期的測量。為保證測量精度,共測8個方波周期的機(jī)器周期數(shù),然后除以8(移位即可)得N。采用C/T1的模式1(16位定時器)計時,程序流程圖如圖1- 86所示。


  
  最后得到的16 位計數(shù)值存放在TH1、TL1中,其值為8N。取SMOD=1,式(1-7)成為

  

至此,時間常數(shù)TH1計算完畢,接下來可進(jìn)行常規(guī)的串行口初始化。若有必要,還可進(jìn)行波特率誤差校驗。編程是很容易的,這里省略。
  
  2.結(jié) 論
  
 ?、俅型ㄐ胖械牟ㄌ芈收`差超過一定范圍會影響通信的可靠性,在高波特率下更加嚴(yán)重。
  
  ②本例給出的波特率自動整定方法對硬件不作任何變動,僅用軟件即可方便實現(xiàn)。在12 MHz晶振下實現(xiàn)了4 800 b/s的高速通信,避免了人工試湊波特率的困難。
  
 ?、郛?dāng)串行口作為通用儀表對系統(tǒng)機(jī)的數(shù)據(jù)接口時,此方法尤有意義。本節(jié)的成果已用于一個通用轉(zhuǎn)速表對IBM - PC的串行接口中。


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉