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

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

3天內不再提示

關于UART/CAN/PLL時鐘計算波特率的方法

0xQC_gh_ed4f95b ? 來源:華芯微特32位MCU ? 作者:華芯微特32位MCU ? 2022-03-18 16:52 ? 次閱讀

本文介紹

SWM系列關于UART/CAN/PLL等時鐘相關模塊,計算波特率的方法。

01

UART波特率的計算

SWM181系列

SWM260系列

SWM320系列

319fc618-a684-11ec-952b-dac502259ad0.png

計算公式:

目標波特率= 系統(tǒng)主時鐘 ÷ (16 * (BAUD + 1))

UART通訊波特率初始化:

31bc8bea-a684-11ec-952b-dac502259ad0.png

BAUD的取值為整數為佳。如小數位大于5,串口數據包越大引起的累積誤差會隨之增大。

SWM190系列

SWM341系列

SWM201系列

31cc6b14-a684-11ec-952b-dac502259ad0.png

計算公式:

目標波特率=

系統(tǒng)主時鐘 ÷ (BAUD.BAUD x16 +BAUD.FRAC + 1)

UART通訊波特率初始化:

31dca2ea-a684-11ec-952b-dac502259ad0.png

可通過 BAUD 寄存器 FRAC 位進行波特率微調,使波特率的誤差在 5%以內,提高波特率精度。

02

CAN波特率的計算

SWM181系列

SWM320系列

SWM341系列

具有CAN通訊模塊

31ef357c-a684-11ec-952b-dac502259ad0.png

計算公式:

BRP =

系統(tǒng)時鐘÷2÷目標波特率÷(1+(BS1+1)+(BS2+1)) -1

CAN通訊波特率初始化:

32018aa6-a684-11ec-952b-dac502259ad0.png

注意

BRP的值要為整數。BS1、BS2的配置值要使得BRP值為整數。

1

確定目標波特率

2

確定系統(tǒng)時鐘

3

TEMP為中間值,TEMP = 系統(tǒng)時鐘÷2÷目標波特率。

4

SWM181系列、SWM320系列輸入BRP的值,取值范圍為0 ~ 31。

SWM341系列輸入BRP,取值范圍在0~1023。

5

輸入BS1的值,取值范圍為0 ~ 15。

6

B2的值會根據TEMP、BRP、BS1的值進行計算。取值范圍為 0 ~ 7。

7

BS1、BS2的值不宜過小。就是采樣點設置最好在后半段,即(1+bs1)/(1+bs1+bs2)推薦70%~90%。

8

CAN 初始化配置中SJW的取值建議,SJW小于PBS1和PBS2的最小值,最大值不超過4。

03

PLL時鐘的計算

SWM181系列

SWM320系列

SWM341系列

具有CAN通訊模塊

32175822-a684-11ec-952b-dac502259ad0.png322ac038-a684-11ec-952b-dac502259ad0.png

PLL輸出頻率 =

PLL輸入時鐘 ÷ INDIV x 4 x FBDIV ÷ OUTDIV =

VCO輸出頻率 ÷ OUTDIV

注意

SWM320 -- VCO輸出頻率需要在 [600MHz, 1200MHz] 之間。

SWM320的系統(tǒng)時鐘不能超過120Mhz。

SWM341 -- VCO輸出頻率需要在 [600MHz, 1400MHz] 之間。

SWM341的系統(tǒng)時鐘不能超過150Mhz。

SWM190系列、SWM260系列,VCO輸出頻率需要在 [300MHz, 600MHz] 之間。

SWM190、SWM260的系統(tǒng)時鐘不能超過60Mhz

1

確定PLL輸入時鐘。可以是內部RC振蕩,也可以是外部晶振

2

確定目標系統(tǒng)時鐘

3

確定PLL_IN_DIV,一般設置為6,或是可以被PLL輸入時鐘源整除的數,取值范圍1 ~ 31

4

確定PLL_IN_DIV,需手動輸入,一般取值為5或10的倍數,取值范圍1 ~ 511

5

自動計算VCO的頻率,根據公式自動計算,確定必須在要求范圍內。

6

PLL_OUT_DIV值會自動計算,取值必須是2,或4,或8,一般取值為8

7

系統(tǒng)時鐘計算值,是用于與目標系統(tǒng)時鐘進行比較,便于調整PLL_IN_DIV、PLL_FB_DIV、PLL_OUT_DIV。

SYNWIT MCU UART波特率、CAN波特、PLL系統(tǒng)時鐘計算應用工具,有助于應用過程中提高對波特率、系統(tǒng)時鐘的理解,和取值設置。工具文件可以通過百度網盤進行下載應用參考。如下:

鏈接:

https://pan.baidu.com/s/1atLWlk1_SUR8WjISr-Bfpw

提取碼:byv2

文件名:

CAN_UART_波特率&PLL時鐘計算_20220314.xlsx。(存放位置在“其它公用資料”)

原文標題:SYNWIT MCU 時鐘計算應用工具

文章出處:【微信公眾號:華芯微特32位MCU】歡迎添加關注!文章轉載請注明出處。

審核編輯:彭菁

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

    關注

    57

    文章

    2663

    瀏覽量

    462432
  • 計算
    +關注

    關注

    2

    文章

    437

    瀏覽量

    38604
  • uart
    +關注

    關注

    22

    文章

    1199

    瀏覽量

    100823
  • 波特率
    +關注

    關注

    2

    文章

    290

    瀏覽量

    33922

原文標題:SYNWIT MCU 時鐘計算應用工具

文章出處:【微信號:gh_ed4f95bde4df,微信公眾號:華芯微特32位MCU】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    can波特率計算

    can波特率其實并不難計算,這里給出了can波特率的簡單計算,并給出了實例STM32的
    發(fā)表于 12-14 17:02 ?1.2w次閱讀
    <b class='flag-5'>can</b><b class='flag-5'>波特率</b><b class='flag-5'>計算</b>

    什么是串口波特率?串口波特率的分類及應用詳解

    什么是串口波特率串口波特率是指串口通信系統(tǒng)中傳輸數據的速率。在UART串口通信中,數據以位(bit)的形式傳輸,波特率是指每秒鐘傳輸的位數。在串口通信中,
    的頭像 發(fā)表于 08-08 10:09 ?5303次閱讀
    什么是串口<b class='flag-5'>波特率</b>?串口<b class='flag-5'>波特率</b>的分類及應用詳解

    非標準CAN波特率計算

    影響CAN總線穩(wěn)定的因素有很多,其中波特率是一項非常重要的指標,很多工程師在選擇波特率時非常頭疼。今天我們就來說說該如何快速解決特殊波特率計算
    發(fā)表于 07-29 08:00

    CAN波特率計算

    車輛使用的250K 的波特率,使用STM32制作的控制板中的CAN波特率計算波特率=APB1Clock/(1+
    發(fā)表于 08-20 08:11

    CAN通信波特率設置

    CAN通信波特率設置 LM3S2000、LM3S5000、LM3S8000系列CPU內部有1~3路CAN控制器,通過對CAN位定時寄存器CANBIT及
    發(fā)表于 04-06 18:00 ?24次下載

    CAN 波特率計算器(MCP2515)

    電子發(fā)燒友網站提供《CAN 波特率計算器(MCP2515).exe》資料免費下載
    發(fā)表于 08-13 19:46 ?311次下載

    51波特率計算

    51波特率計算
    發(fā)表于 12-28 11:07 ?2次下載

    CAN特殊波特率如何計算

    CAN總線采用的是異步串行通信,也就是沒有單獨的時鐘線來保證各個收發(fā)器之間時鐘的一致,每個收發(fā)器是按事先設置的波特率來對總線上的電平進行分位。因此
    發(fā)表于 08-17 18:19 ?7011次閱讀
    <b class='flag-5'>CAN</b>特殊<b class='flag-5'>波特率</b>如何<b class='flag-5'>計算</b>

    非標準的CAN波特率計算方法

      CAN總線采用的是異步串行通信,也就是沒有單獨的時鐘線來保證各個收發(fā)器之間時鐘的一致,每個收發(fā)器是按事先設置的波特率來對總線上的電平進行分位。因此
    發(fā)表于 09-19 09:07 ?26次下載
    非標準的<b class='flag-5'>CAN</b><b class='flag-5'>波特率</b><b class='flag-5'>計算方法</b>

    STM32 CAN總線傳輸波特率計算

    由于CAN屬于異步通訊,沒有時鐘信號線,連接在同一個總線網絡中的各個節(jié)點會像串口異步通訊那樣,節(jié)點間使用約定好的波特率進行通訊。
    發(fā)表于 11-10 09:02 ?6711次閱讀
    STM32 <b class='flag-5'>CAN</b>總線傳輸<b class='flag-5'>波特率</b>的<b class='flag-5'>計算</b>

    串口波特率計算詳解

    STM32下波特率計算詳解波特率計算????STM32下的波特率和串口外設時鐘息息相關,USA
    發(fā)表于 12-05 09:06 ?22次下載
    串口<b class='flag-5'>波特率</b><b class='flag-5'>計算</b>詳解

    MSP432UART波特率時鐘關系

    時,都會進行波特率的設置,在MSP432中如何快速設置波特率??1.首先確定時鐘頻率下面是可選項(一般選用12MHZ/24MHZ)2.串口配置參數結構體設置最主要設置這三項這是如何計算
    發(fā)表于 12-16 16:54 ?11次下載
    MSP432<b class='flag-5'>UART</b><b class='flag-5'>波特率</b>與<b class='flag-5'>時鐘</b>關系

    STM32下波特率計算詳解

    波特率計算 STM32下的波特率和串口外設時鐘息息相關,USART 1的時鐘來源于APB2,USART 2-5的
    發(fā)表于 02-11 10:46 ?20次下載
    STM32下<b class='flag-5'>波特率</b><b class='flag-5'>計算</b>詳解

    MPC5744p的CAN通信波特率計算

    本篇筆記主要記錄MPC5744p的CAN通信波特率計算,以及需要注意的問題。
    的頭像 發(fā)表于 07-10 17:40 ?2487次閱讀

    MPC5744p的CAN通信波特率如何計算

    本篇筆記主要記錄MPC5744p的CAN通信波特率計算,以及需要注意的問題
    的頭像 發(fā)表于 01-20 14:58 ?1831次閱讀
    MPC5744p的<b class='flag-5'>CAN</b>通信<b class='flag-5'>波特率</b>如何<b class='flag-5'>計算</b>