串口是我們開發過程中最常用的通信接口之一,今天在開發的時候發現串口1和2都可以正常的初始化,唯獨串口3無論怎麼初始化寄存器都都全爲0,在網上查找的時候發現一個兄弟是搞錯芯片了,他的芯片沒有串口3所以無法初始化鏈接在此但是我用的芯片是STM32F103RE系列是有4個串口的!
因爲我的串口3是串口1移植過來的,串口2是別人寫的驅動,後來經過仔細查看比對,感覺肯定是時鐘沒有初始化,經過查看參考手冊果然如此
在移植的時候不僅要把USARTX這些參數改過來,同時要注意自己外設是掛在哪條時鐘總線上的!
下面的纔是正確的