STM32單片機硬件關鍵基礎精華及注意事項
如何獲得高精度的RTC本文引用地址:http://m.butianyuan.cn/article/170908.htm
STM32使用Pierce振蕩器,原理圖及重要參數(shù)如下:
三個步驟選擇一個合適的LSE
第一步:增益裕量(Gainmargin)計算
選擇一個晶振(參考MCU的數(shù)據(jù)手冊確定晶振的頻率)
計算晶振的增益裕量(Gainmargin)并檢查其是否大于5:
如果Gainmargin《 5,說明這不是一個合適的晶振,應當再挑選一個低ESR值和低CL值的晶振,重新第一步。如果Gainmargin》 5,進行第二步。
第二步:外部負載電容的計算
計算CL1和CL2的值,并檢查標定為該計算值的電容是否能在市場上獲得。如果能找到容值為計算值的電容,則晶振可以在期望的頻率正常起振。然后轉到第三步。
如果找不到容值為計算值的電容:
該應用對頻率要求很高,你可使用一個可變電容并將其調整到計算值,然后轉到第三步。如果對頻率的要求不是特別苛刻,選擇市場上能獲得的電容中容值距計算值最近的電容。
第三步:驅動級別及外部電阻的計算
計算驅動級別DL并檢查其是否大于DLcrystal:
如果DL《 DLcrystal,沒必要使用外部電阻,祝賀你,你找到了合適的晶振。如果DL》 DLcrystal,你應該計算RExt 使其確保DL《 DLcrystal 并據(jù)此重新計算Gainmargin。如果Gainmargin》 5,祝賀你,你找到了合適的晶振。如果Gainmargin《 5,你別無選擇,再重新挑選另外一個晶振吧。然后重新回到第一步。
ST推薦的LSE型號
對于STM32™的LSE部分,推薦使用CL《7pF的晶振(過大的CL會導致過大的gmcrit,從而無法保證足夠的增益裕量)。
RTC是一個計數(shù)器,對輸入時鐘分頻、計數(shù)、比較
RTC的校準
設置BKP_RTCCR寄存器,每220(1048576)個時鐘周期中,減去相應周期數(shù),每個單位能實現(xiàn)0.954(1000000/220) ppm的精度校準,BKP_RTCCR寄存器取值范圍0-127,時鐘可以調慢0 -121 ppm。
對于32,768Hz晶振,可補償頻偏范圍為:32,768Hz 《 fLSE《 32,772Hz ????調慢,設置RTC預分頻寄存器RTC_PRLH / RTC_PRLL。
例如:由預設值32768調整為32766,再設置BKP_RTCCR寄存器,此時,對于32,768Hz晶振,可補償頻偏范圍:
復位電路
外部復位信號低脈沖至少保持300ns,系統(tǒng)復位信號不影響備份區(qū)域的工作,NRST復位引腳是CMOS工藝的開漏電路。在產(chǎn)生內(nèi)部復位信號時,NRST引腳會輸出一個低電平。
SWJ調試電路
SWJ電路設計及注意事項
調試燒錄失敗的常見原因
1、目標芯片沒有正確連接,不能正常工作:
解決方法:確保目標板的最小系統(tǒng)正確連接,芯片能正常工作:VDD、VDDA及VSS 、VDDS已全部正確連接,復位電路能夠可靠復位,各復位源不互相影響。
2、芯片內(nèi)原先燒錄的代碼影響了新的調試操作:
芯片內(nèi)原先燒錄的代碼出錯,芯片上電運行,進入未定義狀態(tài),不能進入調試模式。芯片內(nèi)原先燒錄的代碼啟動了某些外設,或者將SWJ引腳配置為普通I/O口。
解決方法:選擇芯片的BOOT0/BOOT1引腳從RAM啟動,或先擦除芯片內(nèi)代碼。
3、芯片已被讀/寫保護:
調試工具不能讀寫芯片內(nèi)置的Flash。
解決方法:先使用調試工具解除芯片的讀/寫保護。
STM32硬件電路設計注意事項
STM32的基本系統(tǒng)主要涉及下面幾個部分:
1、電源
1)、無論是否使用模擬部分和AD部分,MCU外圍出去VCC和GND,VDDA、VSSA、Vref(如果封裝有該引腳)都必需要連接,不可懸空;
2)、對于每組對應的VDD和GND都應至少放置一個104的陶瓷電容用于濾波,并接該電容應放置盡量靠近MCU;
2、復位、啟動選擇
1)、Boot引腳與JTAG無關。其僅是用于MCU啟動后,判斷執(zhí)行代碼的起始地址;
2)、在電路設計上可能Boot引腳不會使用,但要求一定要外部連接電阻到地或電源,切不可懸空;
3、調試接口
4、ADC
1)、ADC是有工作電壓的,且與MCU的工作電壓不完全相同。MCU工作電壓可以到2.0V~3.6V,但ADC模塊工作的電壓在2.4V~3.6V。設計電路時需要注意。
5、時鐘
1)、STM32上電默認是使用內(nèi)部高速RC時鐘(HSI)啟動運行,如果做外部時鐘(HSE)切換,外部時鐘是不會運行的。因此,判斷最小系統(tǒng)是否工作用示波器檢查OSC是否有時鐘信號,是錯誤的方法;
2)、RTC時鐘要求使用的32.768振蕩器的寄生電容是6pF,這個電容區(qū)別于振蕩器外部接的負載電容;
5、GPIO
1)、IO推動LED時,建議盡量考慮使用灌電流的方式。
2)、在Stop等低功耗模式下,為了更省電,通常情況下建議GPIO配置為帶上拉的輸出模式,輸出電平由外部電路決定;
6、FSMC
1)、對應100pin或144pin,F(xiàn)SMC的功能與I2C是存在沖突的,如果FSMC時鐘打開,I2C 1的硬件模式無法工作。這在STM32F10xxx的勘誤表中是有描述的。
ST官方推薦的幾大主流開發(fā)板的原理圖,在畫電路的時候可以做為參考依據(jù):
1、IAR
1)、STM32F103RBT6
2)、STM32F103ZET6
2、MDK
1)、STM32F103RBT6
2)、STM32F103ZET6
3、Raisonance
1)、STM32F103RBT6
2)、STM32F103VET6
4、ST官方的板
1)、STM3210E-LK
2)、STM3210B-EVAL
3)、STM3210E-EVAL
4)、STM3210C-EVAL
模數(shù)轉換器相關文章:模數(shù)轉換器工作原理
電容傳感器相關文章:電容傳感器原理 晶振相關文章:晶振原理 鎖相環(huán)相關文章:鎖相環(huán)原理 調壓器相關文章:調壓器原理
評論