本文介紹了低端微控制器單元中可用的內(nèi)部RC振蕩器校準(zhǔn)機(jī)制。介紹了自動校準(zhǔn)的基本校準(zhǔn)程序和注意事項(xiàng)。
MCU中的內(nèi)部振蕩器微調(diào)
由于它們的缺點(diǎn),MCU中的內(nèi)部振蕩器具有微調(diào)其頻率的機(jī)制,與樂器不同。這通常是通過一個微型電容替代盒調(diào)整振蕩器的RC電路中的電容來完成的。
電容替換盒包含一系列開關(guān)和電容器,可在一定精度范圍內(nèi)產(chǎn)生任何電容。例如,考慮以下電容器網(wǎng)絡(luò),這些電容器可以并聯(lián)組合以產(chǎn)生從0nF到255nF的任何整數(shù)電容。
開關(guān)有條件地包括2次方的電容器。例如,僅閉合右側(cè)的三個開關(guān)會產(chǎn)生7nF。是的,它是二進(jìn)制的!
現(xiàn)在,由于RC振蕩器通過對電容器進(jìn)行充電和放電來工作,因此這些開關(guān)需要是模擬的。出于這個原因,這些微型電容替代盒使用一種特殊類型的開關(guān),稱為傳輸門或模擬開關(guān)。這些很像繼電器的半導(dǎo)體替代品。它們控制數(shù)字信號并切換模擬信號。有很多商用傳輸門IC,如CD4016、CD4066和CD4053。
有關(guān)傳輸門的更多信息,請閱讀RobertKeim的文章TheCMOSTransmissionGate。
從程序員的角度來看,內(nèi)部振蕩器的頻率調(diào)整歸結(jié)為修改內(nèi)存映射寄存器的值。該寄存器中的位控制電容替換模塊中的開關(guān)。
內(nèi)部時鐘源微調(diào)寄存器,廣泛用于s08系列。
對于S08系列的某些成員,該寄存器稱為ICSTRM(內(nèi)部時鐘源微調(diào))。這是一個8位寄存器,二進(jìn)制復(fù)位值為10000000。這8位控制電容替換模塊,進(jìn)而影響振蕩器的周期:此寄存器的值越高,電容和周期越高。當(dāng)然,這對頻率有相互影響。
簡單的校準(zhǔn)程序
這是您可以在MCU上執(zhí)行的一個很好的修整程序:
運(yùn)行一個生成1kHz方波的應(yīng)用程序。
迭代直到無法改進(jìn):
測量生成信號的周期。
將Trim寄存器修改為1ms。
重新編譯并運(yùn)行。
迭代的原因是,由于微調(diào)模塊中電容器值的不確定性(例如一組高度略有不同的樓梯),您將為微調(diào)寄存器估計的更改將因某些未知因素而關(guān)閉。迭代處理了這種不規(guī)則性。
自動化這個過程
您可能希望為您的應(yīng)用程序自動執(zhí)行此過程,以便您的程序在上電時校準(zhǔn)振蕩器,作為引導(dǎo)序列的一部分。
為此,您將需要一個可靠的時鐘參考來與您的MCU生成的固定頻率信號進(jìn)行比較。盡管這似乎毫無意義,因?yàn)槟紫纫苊馐褂猛獠繒r鐘信號,但該外部信號不必滿足您的時鐘要求;它必須是準(zhǔn)確和穩(wěn)定的。
自動微調(diào)過程的另一個重要細(xì)節(jié)是算法:上述過程適用于擁有示波器和漂亮計算器的工程師。然而,許多校準(zhǔn)函數(shù)使用逐次逼近法。這與逐次逼近型ADC使用的算法相同,其本質(zhì)是二分搜索算法。毫不奇怪,對于一個N位修整寄存器,這需要N次迭代。
要了解ADC中的逐次逼近,您可能需要閱讀ElliottSmith撰寫的文章了解逐次逼近寄存器ADC。
設(shè)備程序員
除了對ROM存儲器和微控制器進(jìn)行編程之外,還有一些設(shè)備編程器提供有用的附加功能。有些甚至在您的微控制器上執(zhí)行此微調(diào)程序,以便您方便地對一批設(shè)備進(jìn)行編程,微調(diào)每個單元上的內(nèi)部振蕩器。
如果您想知道在您即將切斷設(shè)備電源時將正確的修整值寫入RAM寄存器有什么好處,那么您就大功告成了!
MCU制造商通常在非易失性存儲器中提供一個特殊位置來存儲設(shè)備的微調(diào)值。這不會自動工作:您的代碼仍然必須在啟動時從該位置獲取值并將值寫入修整寄存器。
-
微控制器
+關(guān)注
關(guān)注
48文章
7923瀏覽量
153817 -
振蕩器
+關(guān)注
關(guān)注
28文章
3970瀏覽量
140500 -
rc振蕩器
+關(guān)注
關(guān)注
3文章
49瀏覽量
9800
發(fā)布評論請先 登錄
微控制器中的內(nèi)部RC振蕩器

MCU內(nèi)部振蕩器簡述

低成本微控制器單元中經(jīng)常使用的內(nèi)部RC振蕩器的優(yōu)點(diǎn)和需求
STM32F030如何設(shè)置微控制器以使用外部振蕩器?
用于ST微控制器的振蕩器設(shè)計指南
RC振蕩器 實(shí)驗(yàn)六
微控制器時鐘―選擇晶振諧振槽路、RC振蕩器還是硅振蕩器?

常用的振蕩器類型有哪些,微控制器應(yīng)用中如何選擇

ipconfig不是內(nèi)部或外部_使用MCU(微控制器單元)內(nèi)部振蕩器的優(yōu)點(diǎn)和缺點(diǎn)

PIC單片機(jī)RC振蕩器的使用及校準(zhǔn)方法

AN4736_如何校準(zhǔn)STM32L4xx內(nèi)部RC振蕩器

應(yīng)用筆記|如何在 STM32U5 系列上校準(zhǔn)內(nèi)部 RC 振蕩器
MCU內(nèi)部振蕩器的優(yōu)缺點(diǎn)有哪些

評論