資料介紹
51單片機(jī)定時(shí)計(jì)數(shù)器溢出率計(jì)算和串口的波特率之間的關(guān)系
51 芯片的串口可以工作在幾個(gè)???同的工作模式下,其工作模式的設(shè)置就是使用SCON 寄存器。它的各個(gè)位的具體定義如下:
SM0 SM1 SM2 REN TB8 RB8 TI RI
SM0、SM1 為串行口工作模式設(shè)置位,這樣兩位可以對(duì)應(yīng)進(jìn)行四種模式的設(shè)置。串行口工作模式設(shè)置。
波特率在使用串口做通訊時(shí),一個(gè)很重要的參數(shù)就是波特率,只有上下位機(jī)的波特率一樣時(shí)才可以進(jìn)行正常通訊。波特率是指串行端口每秒內(nèi)可以傳輸?shù)牟ㄌ匚粩?shù)。這里所指的波特率,如標(biāo)準(zhǔn)9600 不是每秒種可以傳送9600個(gè)字節(jié),而是指每秒可以傳送9600 個(gè)二進(jìn)位,而一個(gè)字節(jié)要8 個(gè)二進(jìn)位,如用串口模式1 來傳輸那么加上起始位和停止位,每個(gè)數(shù)據(jù)字節(jié)就要占用10 個(gè)二進(jìn)位,9600 波特率用模式1 傳輸時(shí),每秒傳輸?shù)淖止?jié)數(shù)是9600÷10=960 字節(jié)。
51芯片的串口工作模式0的波特率是固定的,為fosc/12,以一個(gè)12M 的晶振來計(jì)算,那么它的波特率可以達(dá)到1M。模式2的波特率是固定在fosc/64 或fosc/32,具體用那一種就取決于PCON 寄存器中的SMOD位,如SMOD 為0,波特率為focs/64,SMOD 為1,波特率為focs/32。
模式1和模式3的波特率是可變的,取決于定時(shí)器1或2(52芯片)的溢出速率,就是說定時(shí)器 1每溢出一次,串口發(fā)送一次數(shù)據(jù)。那么我們?cè)趺慈ビ?jì)算這兩個(gè)模式的波特率設(shè)置時(shí)相關(guān)的寄存器的值呢?可以用以下的公式去計(jì)算。
上式中如設(shè)置了PCON寄存器中的SMOD位為1時(shí)就可以把波特率提升2倍。通常會(huì)使用定時(shí)器1工作在定時(shí)器工作模式2下,這時(shí)定時(shí)值中的TL1做為計(jì)數(shù),TH1做為自動(dòng)重裝值,這個(gè)定時(shí)模式下,定時(shí)器溢出后,TH1的值會(huì)自動(dòng)裝載到TL1,再次開始計(jì)數(shù),這樣可以不用軟件去干預(yù),使得定時(shí)更準(zhǔn)確。在這個(gè)定時(shí)模式2下定時(shí)器1溢出速率的計(jì)算公式如下:
溢出速率=(計(jì)數(shù)速率)/(256-TH1初值)
溢出速率=fosc/[12*(256-TH1初值)]
上式中的“計(jì)數(shù)速率”與所使用的晶體振蕩器頻率有關(guān),在51 芯片中定時(shí)器啟動(dòng)后會(huì)在每一個(gè)機(jī)器周期使定時(shí)寄存器TH 的值增加一,一個(gè)機(jī)器周期等于十二個(gè)振蕩周期,所以可以得知51芯片的計(jì)數(shù)速率為晶體振蕩器頻率的1/12,一個(gè)12M 的晶振用在51芯片上,那么51的計(jì)數(shù)速率就為1M。通常用11.0592M 晶體是為了得到標(biāo)準(zhǔn)的無誤差的波特率,那么為何呢?計(jì)算一下就知道了。如我們要得到9600 的波特率,晶振為11.0592M 和12M,定時(shí)器1 為模式2,SMOD 設(shè)為1,分別看看那所要求的TH1 為何值。代入公式:
11.0592M
9600=(2÷32)×((11.0592M/12)/(256-TH1))
TH1=250
12M
9600=(2÷32)×((12M/12)/(256-TH1))
TH1≈249.49
上面的計(jì)算可以看出使用12M晶體的時(shí)候計(jì)算出來的TH1不為整數(shù),而TH1的值只能取整數(shù),這樣它就會(huì)有一定的誤差存在不能產(chǎn)生精確的9600 波特率。當(dāng)然一定的誤差是可以在使用中被接受的,就算使用11.0592M 的晶體振蕩器也會(huì)因晶體本身所存在的誤差使波特率產(chǎn)生誤差,但晶體本身的誤差對(duì)波特率的影響是十分之小的,可以忽略不計(jì)。
(mbbeetchina)
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 【Practical】51單片機(jī)串行口與波特率
- 51單片機(jī)的串行接口介紹
- 51單片機(jī)串行口的工作方式解析資料下載
- AT89S51單片機(jī)的串行口學(xué)習(xí)課件免費(fèi)下載 9次下載
- AT89S52單片機(jī)的串行口教程課件免費(fèi)下載 11次下載
- 單片機(jī)教程之串行口與串行通信的詳細(xì)資料說明 15次下載
- 80C51單片機(jī)的串行口結(jié)構(gòu)和原理的程序免費(fèi)下載
- 如何進(jìn)行51單片機(jī)串行口的速率設(shè)置
- 51單片機(jī)教程之51單片機(jī)的串行口應(yīng)用舉例資料說明 18次下載
- 51單片機(jī)教程之80C51單片機(jī)的串行口介紹及如何進(jìn)行串行總線的擴(kuò)展 27次下載
- 基于51單片機(jī)匯編語言教程:22課單片機(jī)串行口通信程序設(shè)計(jì) 25次下載
- 單片機(jī)串行口與PC機(jī)通訊資料 26次下載
- 單片機(jī)串行口的并行通信技術(shù) 103次下載
- 單片機(jī)串行口應(yīng)用舉例
- 51單片機(jī)的串行口擴(kuò)展方法
- 51單片機(jī)的四種工作模式怎么去設(shè)置 4004次閱讀
- 51單片機(jī)的T0、T1定時(shí)器四種工作方式各有什么特點(diǎn)? 2.8w次閱讀
- 如何設(shè)置51單片機(jī)的串行口來實(shí)現(xiàn)與PC機(jī)通信 3870次閱讀
- MCS-51單片機(jī)定時(shí)器和計(jì)數(shù)器的4種工作方式解析 3.2w次閱讀
- AT89S51單片機(jī)串行口的內(nèi)部結(jié)構(gòu)解析 3268次閱讀
- 單片機(jī)串行通信的結(jié)構(gòu)組成及工作原理解析 6365次閱讀
- 兩臺(tái)8031單片機(jī)通過串行口進(jìn)行數(shù)據(jù)交換 1720次閱讀
- 51單片機(jī)擴(kuò)充串行口的方法 9217次閱讀
- 51單片機(jī)CPU結(jié)構(gòu)各部件的原理詳細(xì)分析 2.7w次閱讀
- 51單片機(jī)定時(shí)/計(jì)數(shù)器詳解(工作原理及模式、應(yīng)用) 14.2w次閱讀
- 單片機(jī)串行口介紹,8051單片機(jī)的通信方式 1.6w次閱讀
- 10KM遠(yuǎn)距多個(gè)單片機(jī)的主從方式串行通信分析 1495次閱讀
- 單片機(jī)串行口通信程序設(shè)計(jì) 1.1w次閱讀
- 單片機(jī)串行口通信程序設(shè)計(jì) 8731次閱讀
- 單片機(jī)串行口與74LS164的正確配合使用方法 1.6w次閱讀
下載排行
本周
- 1TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 2開關(guān)電源基礎(chǔ)知識(shí)
- 5.73 MB | 6次下載 | 免費(fèi)
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設(shè)計(jì)
- 0.60 MB | 3次下載 | 免費(fèi)
- 5基于FPGA的光纖通信系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 0.61 MB | 2次下載 | 免費(fèi)
- 6基于FPGA的C8051F單片機(jī)開發(fā)板設(shè)計(jì)
- 0.70 MB | 2次下載 | 免費(fèi)
- 751單片機(jī)窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費(fèi)
- 8基于51單片機(jī)的RGB調(diào)色燈程序仿真
- 0.86 MB | 2次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33564次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21548次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
- 0.00 MB | 6653次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537796次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191185次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183278次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論
查看更多