干貨! STM32串口波特率計(jì)算

        波特率計(jì)算STM32下的波特率與串行端口外設(shè)時(shí)鐘密切相關(guān)。

        USART 1的時(shí)鐘源自APB2,USART 2-5的時(shí)鐘源自APB1。

        在STM32中,有一個(gè)波特率寄存器USART_BRR,如下所示:STM32串行端口波特率由USART_BRR設(shè)置,STM32波特率寄存器支持小數(shù)設(shè)置以提高精度。

        USART_BRR的前4位數(shù)字代表小數(shù),后12位數(shù)字代表整數(shù)。

        但這不是我們要設(shè)置的波特率,我們需要計(jì)算串行端口的波特率。

        實(shí)際上,波特率的計(jì)算公式如下:從上面的表達(dá)式中,我們引入了一個(gè)新的量USARTDIV,它表示串行時(shí)鐘源fck的分頻。

        假設(shè)我們已經(jīng)知道波特率和fck時(shí)鐘頻率的大小,則可以通過上式計(jì)算USARTDIV的具體大小,然后可以通過USART的值設(shè)置波特率寄存器。

        USARTDIV是通過上面的表達(dá)式獲得的,它是一個(gè)帶小數(shù)的浮點(diǎn)數(shù)(例如27.75)。

        將小數(shù)部分與整數(shù)部分分開,得到整數(shù)值n(例如27)和十進(jìn)制值m(例如0.75)。

        使用這兩個(gè)值,我們可以填寫USART_BRR寄存器并設(shè)置串行端口的波特率。

        將整數(shù)部分m(27 = 0x1B)直接寫入U(xiǎn)SART_BRR的最后12位數(shù)字;將小數(shù)部分n乘以16得到的整數(shù)值(例如0.75 x 16 = 12 = 0xC)被寫入U(xiǎn)SART_BRR的前4位,最后USART_BRR的值為0x1BC。

        注意:如果小數(shù)部分乘以16并且仍然有小數(shù),則需要四舍五入并除去小數(shù)部分以獲得新的整數(shù),然后將其寫入U(xiǎn)SART_BRR的前四位。

        為什么在計(jì)算波特率的公式中乘以16。

        我們知道串行通信是通過兩條線路TXD和RXD進(jìn)行通信的。

        當(dāng)接收器的RXD連接到發(fā)送器的TXD時(shí),接收器的TXD連接到發(fā)送器。

        使用RXD,接收器和發(fā)送器可以通過RXD和TXD相互傳輸數(shù)據(jù)。

        當(dāng)接收器檢測(cè)到RXD線的電平被拉至低電平時(shí),它立即開始接收由發(fā)送器發(fā)送的數(shù)據(jù)。

        剛才的低電平只是通知接收器它可以接收數(shù)據(jù)的開始位。

        如下圖所示,在數(shù)據(jù)傳輸中,信號(hào)可能會(huì)受到一些干擾并引起抖動(dòng)。

        如果接收端僅對(duì)這些信號(hào)數(shù)據(jù)采樣一次,則可能會(huì)采樣抖動(dòng)和不準(zhǔn)確的數(shù)據(jù),這將使數(shù)據(jù)傳輸不準(zhǔn)確。

        因此,通常需要對(duì)接收端的采樣數(shù)據(jù)線上的數(shù)據(jù)進(jìn)行多次采樣。

        ,然后通過比較獲得準(zhǔn)確的數(shù)據(jù)。

        如前所述,USARTDIV意味著對(duì)串行端口的時(shí)鐘源fck的頻率進(jìn)行分頻,而這16則恰好意味著1bit數(shù)據(jù)的采樣數(shù)。

        為什么?反轉(zhuǎn)該表達(dá)式的分子和分母,可以得出以下表達(dá)式的每一位的傳輸時(shí)間僅為1 / TX_baud。

        該總時(shí)間除以16,因此每個(gè)采樣的時(shí)間正好是T1,即經(jīng)過新的分頻后的周期。

        初始串行端口時(shí)鐘信號(hào)來自APBx,因此需要將APBx時(shí)鐘信號(hào)劃分為等于T1的頻率,因此有必要?jiǎng)澐諹SARTDIV的頻率。

        *本文在線轉(zhuǎn)載,版權(quán)歸原作者所有。

        如果有任何侵權(quán),請(qǐng)聯(lián)系以將其刪除。

        免責(zé)聲明:本文的內(nèi)容是在21ic授權(quán)后發(fā)布的。

        版權(quán)屬于原始作者。

        該平臺(tái)僅提供信息存儲(chǔ)服務(wù)。

        本文僅代表作者的個(gè)人觀點(diǎn),并不代表該平臺(tái)的立場(chǎng)。

        如有任何疑問,請(qǐng)與我們聯(lián)系,謝謝!

        產(chǎn)品知識(shí)/行業(yè)、品牌資訊

        行業(yè)、品牌資訊


        主站蜘蛛池模板: 人妻AV中文字幕一区二区三区| 国产成人综合精品一区| 台湾无码一区二区| 精品视频一区二区三区| 久久精品一区二区三区资源网| 日韩精品无码久久一区二区三| 国产精品男男视频一区二区三区| 日韩电影在线观看第一区| 天堂Aⅴ无码一区二区三区| 久久久久人妻一区二区三区vr| 蜜桃无码AV一区二区| 国产一区二区在线观看| 久久久久国产一区二区三区| 无码人妻精品一区二区三| 国模私拍福利一区二区| 美女免费视频一区二区| 无码av免费一区二区三区试看| 男人的天堂av亚洲一区2区 | 久99精品视频在线观看婷亚洲片国产一区一级在线 | 成人影片一区免费观看| 日韩人妻精品一区二区三区视频| 日韩视频一区二区| 亚洲一区动漫卡通在线播放| 精品乱子伦一区二区三区| 在线精品一区二区三区| 亚洲一区二区电影| 人妻免费一区二区三区最新| 国模一区二区三区| 亚洲AV无码一区二区三区久久精品| 亚洲色婷婷一区二区三区| 午夜肉伦伦影院久久精品免费看国产一区二区三区| 中文字幕不卡一区| 中文字幕在线一区| 精品亚洲一区二区| 日韩精品无码一区二区中文字幕| 日本韩国黄色一区二区三区| 国产一区二区三区电影| 濑亚美莉在线视频一区| 国产成人无码aa精品一区| 国产一区在线播放| 国产日韩高清一区二区三区|