




下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
STC單片機(jī)自適應(yīng)波特率串口的實(shí)現(xiàn)方法STC單片機(jī)自適應(yīng)波特率串口的實(shí)現(xiàn)方法通常有以下幾種:
(1)協(xié)議商定通信開(kāi)頭時(shí)主機(jī)固定發(fā)送1個(gè)字符,從機(jī)以不同的波特率摸索接收,當(dāng)接收到的數(shù)據(jù)與商定相同時(shí),確定該波特率即是正確的通信波特率。
(2)協(xié)議商定通信開(kāi)頭時(shí)主機(jī)發(fā)送1串字符,從機(jī)以某固定波特率接收,然后通過(guò)軟件分析接收到的數(shù)據(jù),計(jì)算出接收數(shù)據(jù)與發(fā)送數(shù)據(jù)之間的倍數(shù)關(guān)系,從而確定正確的波特率。
(3)協(xié)議商定通信開(kāi)頭時(shí)主機(jī)固定發(fā)送1個(gè)字符,從機(jī)用單片機(jī)定時(shí)器檢測(cè)RXD上的信號(hào)寬度,通過(guò)計(jì)算來(lái)確定主機(jī)的波特率。
以上3種方法,第一種由于需要多次摸索,效率很低;其次種計(jì)算量過(guò)大,不適合單片機(jī)處理;第三種方式單片機(jī)有現(xiàn)成的定時(shí)器資源,計(jì)算也相對(duì)簡(jiǎn)潔,所以優(yōu)選這種。
要測(cè)量脈沖寬度,前提是單片機(jī)的時(shí)鐘信號(hào)必需穩(wěn)定。目前許多STC單片機(jī)可選外接晶振時(shí)鐘或片內(nèi)RC振蕩時(shí)鐘,片內(nèi)RC振蕩時(shí)鐘省去了外部的晶振等元件,成本降低、電路板的體積也可以縮小,這對(duì)成本及體積敏感的應(yīng)用很具優(yōu)勢(shì)。但選用片內(nèi)RC振蕩時(shí),頻率會(huì)有±15%左右的誤差,頻率的穩(wěn)定性也比外接晶振要差,按理論計(jì)算值設(shè)置波特率參數(shù),無(wú)法保證牢靠的通信,但按以上自適應(yīng)波特率串口的第三種方法,每次通信前實(shí)測(cè)、計(jì)算、確定波特率常數(shù),就可以實(shí)現(xiàn)穩(wěn)定牢靠的通信,這樣充分利用了STC單片機(jī)的優(yōu)勢(shì)。
1STC單片機(jī)的特點(diǎn)
標(biāo)準(zhǔn)51芯片由于定時(shí)器最高辨別率只有1μs,對(duì)于較高的通信波特率來(lái)說(shuō),測(cè)量精度不夠,導(dǎo)致計(jì)算值不準(zhǔn),無(wú)法正常工作。STC系列單片機(jī)是在標(biāo)準(zhǔn)51單片機(jī)基礎(chǔ)上進(jìn)展起來(lái)的,它增加了許多有用的接口電路,擴(kuò)大了時(shí)鐘的頻率范圍,設(shè)計(jì)出了1T時(shí)鐘的芯片,可以通過(guò)軟件對(duì)系統(tǒng)時(shí)鐘分頻,并供應(yīng)了片內(nèi)RC振蕩時(shí)鐘,在目前51芯片的市場(chǎng)占有極大的份額。STC系列單片機(jī)采納片內(nèi)RC振蕩時(shí)鐘、自適應(yīng)波特率串口通信技術(shù),可以廣泛地應(yīng)用于分布式掌握、智能儀表、通信等行業(yè)。
2自適應(yīng)工作原理
STC單片機(jī)采納異步通信,UART工作于模式1(8位UART,波特率可變),用定時(shí)計(jì)數(shù)器2做波特率發(fā)生器,工作于模式2(8位自動(dòng)重裝模式),主從機(jī)按圖1方式連接,從機(jī)自適應(yīng)主機(jī)的波特率。
自適應(yīng)過(guò)程由主機(jī)發(fā)送聯(lián)絡(luò)字符開(kāi)頭。為了使從機(jī)獲得最大的測(cè)量脈寬,提高測(cè)量精度,由主機(jī)發(fā)送二進(jìn)制“0”.如圖2所示,二進(jìn)制“0”由1位起始位,8位數(shù)據(jù)位(低位在先)及1位停止位構(gòu)成,其中1位起始位和8位數(shù)據(jù)位全為0,所以低電平的寬度為9b.
從機(jī)查詢RXD引腳的電平,檢測(cè)到低電平后就啟動(dòng)定時(shí)器0開(kāi)頭計(jì)時(shí),再檢測(cè)到高電平就停止定時(shí)器0計(jì)時(shí),依據(jù)定時(shí)器0的定時(shí)值就可以計(jì)算出主機(jī)的波特率。
當(dāng)時(shí)鐘分頻寄存器CLK_DIV=0(不分頻),特別功能寄存器AUXR=0xC0(T0用1T時(shí)鐘),則:
而STC51系列單片機(jī)在UART模式1,時(shí)鐘模式為1T時(shí),其波特率公式為:
從機(jī)UART在模式1下,將式(4)或式(6)計(jì)算結(jié)果作為定時(shí)器1重裝值,設(shè)定通信參數(shù),通過(guò)串口回送應(yīng)答信號(hào)給主機(jī)。主機(jī)如正確接收到從機(jī)回送的信號(hào),就說(shuō)明從機(jī)已完成波特率自適應(yīng),可以開(kāi)頭正常通信了。
3誤差分析
為保證牢靠通信,要求通信雙方的波特率相對(duì)誤差小于2.5%.
在自適應(yīng)波特率校準(zhǔn)系統(tǒng)中,誤差主要來(lái)自兩個(gè)方面,一是定時(shí)器T0啟動(dòng)和停止滯后造成的誤差ΔT0;二是波特率發(fā)生器T1本身固有的一個(gè)機(jī)器周期誤差ΔT1=±1.由于STC51單片機(jī)采納1T時(shí)鐘定時(shí),ΔT0誤差只有標(biāo)準(zhǔn)51系列芯片的112,系統(tǒng)誤差主要由ΔT1打算。
以STC12C5620為例,當(dāng)采納片內(nèi)RC振蕩,時(shí)鐘頻率通常在5.2~6.9MHz之間。當(dāng)時(shí)鐘頻率為5.2MHz,SMOD=1時(shí),UART時(shí)鐘分別按12T,1T計(jì)算,見(jiàn)表1,表2.
表1、表2中加粗部分表示可以選用的波特率值,由表1、表2可知,只要編程時(shí)選擇合適的時(shí)鐘,在5.2MHz時(shí)鐘頻率下,波特率可以在300~115200b/s之間實(shí)現(xiàn)自適應(yīng),由T1取整帶來(lái)的誤差在0.5%以內(nèi)。當(dāng)系統(tǒng)時(shí)鐘為6.9MHz時(shí),用同樣的方法計(jì)算,也可以證明波特率可以在300~115200b/s之間實(shí)現(xiàn)自適應(yīng),由T1取整帶來(lái)的誤差也在0.5%以內(nèi)。由此可見(jiàn),STC12C5620采納片內(nèi)RC振蕩,可以在300~115200b/s之間完成波特率自適應(yīng),實(shí)現(xiàn)穩(wěn)定牢靠的通信。
4軟件流程與程序
主機(jī)軟件流程圖如圖3所示,從機(jī)軟件流程圖如圖4所示。
以下為C51波特率自適應(yīng)程序:
5應(yīng)用實(shí)例
采納STC12C5620設(shè)計(jì)的重力檢測(cè)開(kāi)關(guān),如圖5所示。為降低成本、縮小體積,采納了片內(nèi)RC振蕩,不設(shè)按鍵及顯示。重力檢測(cè)開(kāi)關(guān)首次工作前需設(shè)定一些參數(shù),并校準(zhǔn)。由于沒(méi)有鍵盤及顯示,采納和計(jì)算機(jī)聯(lián)機(jī)設(shè)置、校準(zhǔn)。本電路采納了上述的自適應(yīng)波特率工作方式,由PC機(jī)作主機(jī),通過(guò)串口來(lái)初始化重力檢測(cè)開(kāi)關(guān)的各參數(shù)。
設(shè)置時(shí),將重力檢測(cè)開(kāi)關(guān)與計(jì)算機(jī)之間用RS232線連接好,然后點(diǎn)擊PC機(jī)軟件界面上的“連接串口”按鈕進(jìn)行波特率自適應(yīng),當(dāng)界面上狀態(tài)欄提示“連接串口勝利!”時(shí),表示波特率自適應(yīng)工作正確完成,如圖6所示,可以進(jìn)行參數(shù)設(shè)置和校準(zhǔn)操作。設(shè)置、校準(zhǔn)后,重力檢測(cè)開(kāi)關(guān)就可脫機(jī)正常工作了。
經(jīng)反復(fù)驗(yàn)證,該電路在300~115200
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030中國(guó)遠(yuǎn)程辦公技術(shù)發(fā)展趨勢(shì)與市場(chǎng)格局分析報(bào)告
- 2025-2030中國(guó)航空配餐飲料選擇偏好與供需匹配研究
- 2025-2030中國(guó)自動(dòng)駕駛高精地圖資質(zhì)壁壘研究
- 2025-2030中國(guó)自動(dòng)售貨機(jī)鮮食商品損耗控制策略報(bào)告
- 2025-2030中國(guó)羊奶制品差異化競(jìng)爭(zhēng)策略與渠道建設(shè)分析報(bào)告
- 2025-2030中國(guó)網(wǎng)絡(luò)安全保險(xiǎn)產(chǎn)品設(shè)計(jì)與企業(yè)投保意愿調(diào)查報(bào)告
- 2025-2030中國(guó)管理咨詢行業(yè)旅游產(chǎn)業(yè)復(fù)蘇與市場(chǎng)前景研究報(bào)告
- 2025-2030中國(guó)管理咨詢行業(yè)客戶需求洞察與定制化服務(wù)設(shè)計(jì)報(bào)告
- 2025-2030中國(guó)管理咨詢行業(yè)人才需求與市場(chǎng)競(jìng)爭(zhēng)格局分析報(bào)告
- 2025-2030中國(guó)社區(qū)團(tuán)購(gòu)團(tuán)長(zhǎng)管理體系與區(qū)域擴(kuò)張策略報(bào)告
- 云南省2024-2025學(xué)年高二上學(xué)期11月期中考試數(shù)學(xué)試題(解析版)
- 手術(shù)室?guī)Ы汤蠋煃徫宦氊?zé)
- 牛津譯林版九年級(jí)英語(yǔ)上學(xué)期期中熱點(diǎn)題型專練刷題03名校選詞填空20篇(原卷版+解析)
- DB11T 2032-2022 工程建設(shè)項(xiàng)目多測(cè)合一技術(shù)規(guī)程
- 中小學(xué)教師職稱評(píng)審講課答辯英語(yǔ)學(xué)科全英答辯題目匯編(附漢語(yǔ)翻譯)
- HG∕T 5087-2016 2,6-二叔丁基苯酚
- (完整)馬克思主義政治經(jīng)濟(jì)學(xué)習(xí)題及參考答案
- 大規(guī)模模型蒸餾技術(shù)
- 12、口腔科診療指南及技術(shù)操作規(guī)范
- 我的家鄉(xiāng)-棗陽(yáng)
- GB/T 18851.4-2005無(wú)損檢測(cè)滲透檢測(cè)第4部分:設(shè)備
評(píng)論
0/150
提交評(píng)論