干貨! 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è)、品牌資訊


        主站蜘蛛池模板: 精品国产一区二区三区www| 中文字幕人妻无码一区二区三区 | 无码夜色一区二区三区| 一区二区三区精密机械| 91久久精一区二区三区大全| 亚洲AV一区二区三区四区| 国产精品伦一区二区三级视频| 激情亚洲一区国产精品| 精品久久一区二区| 天天看高清无码一区二区三区| 国产精品视频免费一区二区| 国产短视频精品一区二区三区| 久久国产午夜一区二区福利 | 亚洲人成人一区二区三区| 美女免费视频一区二区三区| 国产精品亚洲一区二区三区在线观看 | 成人丝袜激情一区二区| 亚洲视频在线一区二区三区| 国产亚洲一区二区精品| 亚洲AV午夜福利精品一区二区 | 伊人色综合网一区二区三区| 亚洲av无码不卡一区二区三区| 国产在线观看一区二区三区精品| 亚洲A∨精品一区二区三区| 亚洲国产精品一区二区九九 | 亚洲av成人一区二区三区| 精品国产福利一区二区| 国产精品香蕉在线一区| 麻豆va一区二区三区久久浪| 国内精品一区二区三区最新| 国产一区二区三区播放心情潘金莲 | 台湾无码一区二区| 亚洲午夜电影一区二区三区 | 国产成人精品亚洲一区| 波多野结衣一区二区三区高清在线| 日韩精品人妻av一区二区三区| 国产亚洲情侣一区二区无| 日韩精品无码中文字幕一区二区| 精品少妇ay一区二区三区| 国产精品一区二区综合| 福利一区二区视频|