1. 程式人生 > >STM32 SPI時鐘問題

STM32 SPI時鐘問題

       APB1的最高頻率是36MHz,APB2的最高頻率是72MHz,而PCLK1和PCLK2一般也預設配置為其最高工作頻率36M和72M,詳參時鐘樹。

       SPI1時鐘由APB2時鐘分頻而來,可以選擇2、4、8、16、32、64、128、256這幾個分頻係數。而手冊規定STM32的SPI時鐘最快是18MHz。對於STM32F103的SPI1介面時鐘,由72M的PCLK2分頻得到,所以分配係數大於等於4(72M/4 = 18M)。對於STM32F103的SPI2/3介面時鐘,由36M的PCLK1分頻得到,所以分配係數大於等於2(36M/2 = 18M)。
如果配置SPI1時選擇了fPCLK/2的二分頻選項,那麼理論上SPI1的時鐘將為36MHz,經過我們實際測量也確實為36MHz。但是這個頻率大於手冊中最快18Mhz的要求。如果大家追求高速率使用36MHz,建議大家一定要加強測試環節,同時不建議大家在工控產品等高可靠性的場合使用。