GD32F407的时钟学习记录
GD32F407的時鐘學習記錄
起因: 因工作原因,使用到了國產的GD32F407,順便學習了下他們的時鐘,構成,這里簡單講一下ADC,CAN,SPI的時鐘配置問題。
一.GD32F407的時鐘全局
這張時序圖里面最重要的是時鐘AHB,APB1,APB2。
我們的主板在制作時所用的外部晶振為8MHz經過先分頻后倍頻后,得到了Systemclock,然后再進行一些操作得到AHB,APB1,APB2等時鐘
二.我們程序里面的時鐘
打開我們的工程,打開
system_gd32f4xx.c文件可以看到這里定義的系統(tǒng)時鐘為168MHz
#define __SYSTEM_CLOCK_168M_PLL_8M_HXTAL (uint32_t)(168000000)
而在下面的定義中
所以:
AHB=168MHz
APB1=42MHz
APB2=84MHz
三.各模塊的時鐘
3.1 ADC
在時序圖里面ADC的時鐘源有兩個可選
AHB或APB2,翻看手冊中ADC模塊時鐘的介紹
它的意思是當我們選擇AHB作為時鐘源時,可以選擇5/6/10/20分頻,當外部時鐘最大為200MHz時,那么:
ADC最大頻率=AHB/5=40MHZ
當我們選擇APB2作為時鐘源時我們可以選擇2/4/6/8分頻
ADC部分的頻率我們可以通過代碼修改
我們所選的CLK2_DIV6所以是APB2時鐘6分頻
可供選擇的分頻有很多
3.2 SPI
在手冊中可以看到
SPI 的時鐘來自AHB時鐘,其時鐘頻率為168MHz
在程序中配置了其分頻
那么程序中SPI的實際頻率為=168/32=5.25MHz
可修改的分頻有
3.3 CAN
由手冊可知:
APB1的最高時鐘是50MHz
而實際情況下,我們這塊板子APB1的時鐘為42MHz.
在手冊中波特率計算公式如下:
注:
tq 是時間片在程序中設置對應的波特率
所以
總結
以上是生活随笔為你收集整理的GD32F407的时钟学习记录的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 黑莓 8830 全攻略 写了1天(下)
- 下一篇: 新媒体音乐,不适合闭目欣赏的前卫艺术