女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

關于USART波特率 TIM的外設預分頻值

黃工的嵌入式技術圈 ? 來源:黃工的嵌入式技術圈 ? 2020-03-06 14:52 ? 次閱讀

使用、參考STM32標準外設庫,寄存器開發的朋友也需要注意一些細節問題。

1USART串口預分頻

許多朋友用寄存器開發,就需要對寄存器中每一位十分熟悉才行。

但是在STM32中外設的寄存器很多,不像51這類單片機,就那么為數不多的寄存器,而且寄存器也能很容易理解。

有朋友其實已經發現,UART波特率設置太高,或太低就不能實現了。看下圖波特率計算公式:

從上圖可以看得出,波特率與fCK和USARTDIV。其中USARTDIV是一個無符號的定點數,這12位的值設置在USART_BRR寄存器。

結合上面圖文,大家應該可以知道,波特率也是有一個范圍的,而且波特率是存在誤差的。

舉一個例子:fCK = 36M,波特率 = 100,那么計算出USARTDIV = 36M / 1600 =22500.

然而,12位的數最大為4095,所以,越界了。

寫這些其實希望不管你使用寄存器,還是庫開發,其實都需要了解這些,避免入坑。

2

TIM定時器預分頻

前面有朋友問了我關于TIM定時器的問題,說自己參考STM32標準外設庫,配置定時器,但是定時卻不準確。

經過交談,他把配置代碼截圖給我看了。我一看,就看出問題出在預分頻值上。

而這位朋友是使用STM32F407,主頻168M,他想讓定時器每秒計數1000個,就是上面“SystemCoreClock / 1000”。

然而,他卻沒有考慮溢出問題:168M / 1000 = 168K,PrescalerValue最大值為65535.

另一個關于APB1、APB2時鐘問題

有朋友發現自己配置的定時會相差一倍,其實原因也是在于預分頻值不對造成的。

讓大家看一下下圖兩個預分頻宏定義:

原因在于:有的TIM定時器時鐘是APB1,有的是APB2。這兩個時鐘一般默認配置是相差一倍,所以定時也就會相差一倍。

關于TIM使用的APB時鐘差異,大家可以通過查看“參考手冊”RCC章節,或結合STM32Cube工具理解。

定時器RCC時鐘:

定時器Cbue時鐘配置:

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • STM32
    +關注

    關注

    2289

    文章

    11011

    瀏覽量

    362297
  • 定時器
    +關注

    關注

    23

    文章

    3287

    瀏覽量

    117193
  • Tim
    Tim
    +關注

    關注

    0

    文章

    84

    瀏覽量

    18229
  • USART
    +關注

    關注

    1

    文章

    200

    瀏覽量

    31612
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    CAN總線十萬個為什么 | CAN自定義波特率有什么用?

    導讀CAN總線通信中,波特率一致并不總能保證通信順暢。本文將揭秘自定義波特率的原理和應用,探討如何通過優化采樣點和提高容忍度解決通信問題,助力工程師提升通信穩定性。通常情況下,CAN總線通信只需確保
    的頭像 發表于 02-07 11:36 ?582次閱讀
    CAN總線十萬個為什么 | CAN自定義<b class='flag-5'>波特率</b>有什么用?

    RS232通信的波特率設置說明

    RS232通信的波特率設置是確保數據正確傳輸的關鍵參數之一。以下是對RS232通信波特率設置的說明: 一、波特率的概念 波特率是指每秒傳輸的比特數(bps),是衡量數據傳輸速度的重要指
    的頭像 發表于 12-10 16:26 ?3658次閱讀

    波特率設置中的常見問題解析

    在數字通信系統中,波特率是一個關鍵參數,它直接影響數據傳輸的效率和可靠性。然而,在實際應用中,波特率的設置往往會引起一些常見的問題。 一、波特率與數據速率的混淆 問題描述: 許多人會將波特率
    的頭像 發表于 11-22 10:06 ?1411次閱讀

    波特率與串行通信的關系 各種設備波特率轉換的方法

    波特率(Baud Rate)是串行通信中的一個重要參數,它指的是信號傳輸的速率,即單位時間內傳輸的符號(或信號狀態)的數量。在串行通信中,波特率決定了數據傳輸的速度,因此對于通信效率和設備兼容性
    的頭像 發表于 11-22 10:01 ?1449次閱讀

    常見的波特率標準和協議

    波特率是指在數據通信中,每秒鐘傳輸的符號數(或比特數),是衡量數據通信速度的重要指標。在不同的通信協議和場景中,常見的波特率標準和協議有所不同。以下是一些常見的波特率標準和協議: 一、串口通信
    的頭像 發表于 11-22 09:56 ?5194次閱讀

    Wi-Fi與藍牙的波特率對比分析

    Wi-Fi與藍牙是兩種不同的無線通信技術,它們在波特率(或稱數據傳輸速率)方面存在顯著的差異。以下是對Wi-Fi與藍牙波特率的對比分析: 一、Wi-Fi的波特率 概述 : Wi-Fi(無線局域網
    的頭像 發表于 11-22 09:54 ?1542次閱讀

    波特率的定義和計算方法 波特率與數據傳輸速度的關系

    波特率的定義 波特率(Baud Rate),又稱調制速率或傳符號,是指每秒傳輸的符號數目,單位為波特(Bd)。它是一個數字信號通信中重要的參數,在串行通信協議中經常被用作衡量串行數據
    的頭像 發表于 11-22 09:49 ?8085次閱讀

    MCU串口自動識別波特率原理分析

    現在的單片機資源越來越豐富了,其中我們常用的串口也是內部集成了多個,關鍵功能也越來越強了。 我們有些應用可能會用到串口自動識別波特率,今天就來講講MCU串口自動識別波特率底層的常見的原理,以及MCU的案例。
    的頭像 發表于 10-23 16:12 ?1799次閱讀
    MCU串口自動識別<b class='flag-5'>波特率</b>原理分析

    波特率9600和115200的區別

    在現代通信技術中,數據傳輸速率是一個關鍵的性能指標。對于串行通信,波特率是衡量數據傳輸速度的基本單位。波特率9600和115200是兩種常見的設置,它們在不同的應用場景中有著各自的優勢和局
    的頭像 發表于 10-18 14:56 ?4968次閱讀

    波特率與比特有何關系 波特率與數據傳輸速率的關系

    波特率(Baud Rate)和比特(Bit Rate)是衡量數據通信系統性能的兩個重要參數,它們之間有著密切的關系,但并不完全相同。 波特率(Baud Rate): 波特率是指在數據
    的頭像 發表于 10-18 14:55 ?2211次閱讀

    uart波特率和傳輸頻率的關系 UART串口的常用波特率為多少

    UART(Universal Asynchronous Receiver/Transmitter)是一種廣泛使用的異步串行通信技術,它允許兩臺設備之間進行雙向數據傳輸。在UART通信中,波特率和傳輸
    的頭像 發表于 10-06 16:12 ?6189次閱讀
    uart<b class='flag-5'>波特率</b>和傳輸頻率的關系 UART串口的常用<b class='flag-5'>波特率</b>為多少

    串口通信中的波特率你真的了解嗎?差距竟如此重要!

    波特率在串口通信中的作用在串口通信中,波特率起著至關重要的作用。因為在傳輸數據時,發送方和接收方需要以相同的波特率進行通信。如果兩端的波特率不同,那么就會出現數據丟失、傳輸錯誤等問題,
    的頭像 發表于 08-27 11:46 ?2659次閱讀
    串口通信中的<b class='flag-5'>波特率</b>你真的了解嗎?差距竟如此重要!

    關于比特波特率的定義與區別介紹

    比特波特率都是衡量數字通信中數據傳輸速率的重要參數。比特率直接表示了單位時間內傳輸的數據量(以比特為單位),而波特率則表示了信號變化的速率(以符號為單位)。在實際應用中,需要根據具體的調制方式和通信協議來確定兩者之間的關系。
    的頭像 發表于 08-05 14:31 ?964次閱讀

    如何更改波特率

    我正在嘗試使用與此文檔相關的命令更改波特率:https://github.com/Arduinolibrary/DFRob ... _v0.23.pdf 這是固件版本:00200.9.4 當我
    發表于 07-16 06:10

    485自動收發電路的波特率是多少

    485自動收發電路的波特率并不是一個固定的,而是可以根據具體的應用需求和電路設計進行調整的。在實際應用中,波特率的設置會受到多種因素的影響,包括傳輸距離、信號衰減、噪音環境、設備性能以及通信協議
    的頭像 發表于 07-13 09:41 ?4406次閱讀