久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 23272|回復(fù): 3
收起左側(cè)

51單片機波特率計算的公式和方法

[復(fù)制鏈接]
ID:104287 發(fā)表于 2016-1-31 21:08 | 顯示全部樓層 |閱讀模式
51 芯片的串口可以工作在幾個不同的工作模式下,其工作模式的設(shè)置就是使用SCON 寄存器。它的各個位的具體定義如下:
                SM0 SM1 SM2 REN TB8 RB8 TI RI
SM0、SM1 為串行口工作模式設(shè)置位,這樣兩位可以對應(yīng)進行四種模式的設(shè)置。串行口工作模式設(shè)置。

    波特率在使用串口做通訊時,一個很重要的參數(shù)就是波特率,只有上下位機的波特率一樣時才可以進行正常通訊。波特率是指串行端口每秒內(nèi)可以傳輸?shù)牟ㄌ匚粩?shù)。這里所指的波特率,如標(biāo)準9600 不是每秒種可以傳送9600個字節(jié),而是指每秒可以傳送9600 個二進位,而一個字節(jié)要8 個二進位,如用串口模式1 來傳輸那么加上起始位和停止位,每個數(shù)據(jù)字節(jié)就要占用10 個二進位,9600 波特率用模式1 傳輸時,每秒傳輸?shù)淖止?jié)數(shù)是9600÷10=960 字節(jié)。
    51芯片的串口工作模式0的波特率是固定的,為fosc/12,以一個12M 的晶振來計算,那么它的波特率可以達到1M。模式2的波特率是固定在fosc/64 或fosc/32,具體用那一種就取決于PCON 寄存器中的SMOD位,如SMOD 為0,波特率為focs/64,SMOD 為1,波特率為focs/32。
    模式1和模式3的波特率是可變的,取決于定時器1或2(52芯片)的溢出速率,就是說定時器1每溢出一次,串口發(fā)送一次數(shù)據(jù)。那么我們怎么去計算這兩個模式的波特率設(shè)置時相關(guān)的寄存器的值呢?可以用以下的公式去計算。

    上式中如設(shè)置了PCON寄存器中的SMOD位為1時就可以把波特率提升2倍。通常會使用定時器1工作在定時器工作模式2下,這時定時值中的TL1做為計數(shù),TH1做為自動重裝值,這個定時模式下,定時器溢出后,TH1的值會自動裝載到TL1,再次開始計數(shù),這樣可以不用軟件去干預(yù),使得定時更準確。在這個定時模式2下定時器1溢出速率的計算公式如下:
  溢出速率=(計數(shù)速率)/(256-TH1初值)
溢出速率=fosc/[12*(256-TH1初值)]
    上式中的“計數(shù)速率”與所使用的晶體振蕩器頻率有關(guān),在51 芯片中定時器啟動后會在每一個機器周期使定時寄存器TH 的值增加一,一個機器周期等于十二個振蕩周期,所以可以得知51芯片的計數(shù)速率為晶體振蕩器頻率的1/12,一個12M 的晶振用在51芯片上,那么51的計數(shù)速率就為1M。通常用11.0592M 晶體是為了得到標(biāo)準的無誤差的波特率,那么為何呢?計算一下就知道了。如我們要得到9600 的波特率,晶振為11.0592M 和12M,定時器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
    上面的計算可以看出使用12M晶體的時候計算出來的TH1不為整數(shù),而TH1的值只能取整數(shù),這樣它就會有一定的誤差存在不能產(chǎn)生精確的9600 波特率。當(dāng)然一定的誤差是可以在使用中被接受的,就算使用11.0592M 的晶體振蕩器也會因晶體本身所存在的誤差使波特率產(chǎn)生誤差,但晶體本身的誤差對波特率的影響是十分之小的,可以忽略不計。


回復(fù)

使用道具 舉報

ID:163878 發(fā)表于 2020-11-15 20:40 | 顯示全部樓層
很簡潔方便
回復(fù)

使用道具 舉報

ID:716304 發(fā)表于 2021-3-30 08:56 | 顯示全部樓層
哇塞整理的太好了,感謝
回復(fù)

使用道具 舉報

無效樓層,該帖已經(jīng)被刪除
ID:928284 發(fā)表于 2021-11-21 14:40 | 顯示全部樓層
波特率搞得頭都大了,一直沒有吃透這個公式
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产欧美在线一区二区 | 在线免费观看视频黄 | av网站观看| 亚洲精品在线播放 | 偷牌自拍 | 亚洲国产精品一区 | 欧美free性 | 色综合久久久久 | 欧美国产日韩在线 | 欧美精品一区二区三区在线播放 | 国产精品特级毛片一区二区三区 | 国产在线精品一区二区 | 日韩专区中文字幕 | 四虎影视1304t | 一区二区激情 | 99久久精品免费看国产高清 | 日韩欧美在线精品 | 天天操操操操操 | 久久精品免费观看 | 天天曰夜夜 | 美女日皮网站 | 免费观看一级特黄欧美大片 | 欧洲一区二区在线 | 欧美黑人巨大videos精品 | 免费一区二区三区 | 日韩性在线 | 国产一区二区在线免费播放 | 久久高清| 中文字幕免费中文 | 高清视频一区二区三区 | 国产精品亚洲精品日韩已方 | 成人国产精品久久 | 国产麻豆乱码精品一区二区三区 | 久久99深爱久久99精品 | 国产电影一区 | 淫片一级国产 | 日韩精品中文字幕在线 | 99精品久久久 | 日韩视频在线观看中文字幕 | 亚洲第一视频网站 | 亚洲一区二区在线视频 |