【導讀】由于其缺點(diǎn),MCU 中的內部振蕩器配備了微調其頻率的機制,與樂(lè )器不同。這通常是通過(guò)微型電容替換盒調整振蕩器 RC 電路中的電容來(lái)完成的。
由于其缺點(diǎn),MCU 中的內部振蕩器配備了微調其頻率的機制,與樂(lè )器不同。這通常是通過(guò)微型電容替換盒調整振蕩器 RC 電路中的電容來(lái)完成的。
電容替換盒包含一系列開(kāi)關(guān)和電容器,可產(chǎn)生一定精度范圍內的任何電容。例如,考慮以下電容器網(wǎng)絡(luò ),它可以并聯(lián)組合以產(chǎn)生 0nF 到 255nF 的任何整數電容。
這些開(kāi)關(guān)有條件地包含 2 次冪的電容器。例如,僅閉合右側的三個(gè)開(kāi)關(guān)會(huì )產(chǎn)生 7nF。是的,它是二進(jìn)制的!
現在,由于 RC 振蕩器通過(guò)對電容器充電和放電來(lái)工作,因此這些開(kāi)關(guān)需要是模擬的。因此,這些微型電容替代盒使用一種特殊類(lèi)型的開(kāi)關(guān),稱(chēng)為傳輸門(mén) 或模擬開(kāi)關(guān)。這些很像繼電器的半導體替代品;它們控制數字信號并切換模擬信號。有許多商用傳輸門(mén) IC,例如 CD4016、CD4066 和 CD4053。
從程序員的角度來(lái)看,內部振蕩器的頻率調整歸結為修改內存映射寄存器的值。該寄存器中的位控制電容替換模塊中的開(kāi)關(guān)。
內部時(shí)鐘源調整寄存器,在 s08 系列中廣泛使用。圖片來(lái)自恩智浦。
對于 S08 系列的某些成員,該寄存器稱(chēng)為 ICSTRM(內部時(shí)鐘源調整)。這是一個(gè)8位寄存器,二進(jìn)制復位值為10000000。這8位控制一個(gè)電容替換模塊,進(jìn)而影響振蕩器的周期 :該寄存器的值越大,電容和周期越高。當然,這對頻率有相反的影響。
簡(jiǎn)單的校準程序
以下是您可以在 MCU 上執行的一個(gè)不錯的調整過(guò)程:
運行生成 1kHz 方波的應用程序。
迭代直到無(wú)法改進(jìn):
測量生成信號的周期。
將 Trim 寄存器修改為 1ms。
重新編譯并運行。
迭代的原因是,由于微調模塊中電容器值的不確定性(例如一組高度略有不同的樓梯),您對微調寄存器估計的更改將因某些未知因素而偏離。迭代可以解決這種不規則性。
自動(dòng)化此過(guò)程
您可能希望為您的應用程序自動(dòng)執行此過(guò)程,以便您的程序在加電時(shí)校準振蕩器,作為啟動(dòng)序列的一部分。
為此,您需要一個(gè)可靠的時(shí)鐘參考來(lái)與 MCU 生成的固定頻率信號進(jìn)行比較。盡管這看起來(lái)毫無(wú)意義,因為外部時(shí)鐘信號是您首先要避免的,但該外部信號不必滿(mǎn)足您的時(shí)鐘要求;它必須準確且穩定。
自動(dòng)微調過(guò)程的另一個(gè)重要細節是算法:上述過(guò)程適用于擁有示波器和出色計算器的工程師。然而,許多校準函數使用逐次逼近方法。這與逐次逼近型ADC使用的算法相同,其本質(zhì)是二分搜索算法。毫不奇怪,對于 N 位調整寄存器來(lái)說(shuō),這需要 N 次迭代。
要了解 ADC 中的逐次逼近,您可能需要閱讀Elliott Smith 撰寫(xiě)的文章《了解逐次逼近寄存器 ADC》 。
設備程序員
除了對 ROM 存儲器和微控制器進(jìn)行編程之外,還有一些設備編程器還提供有用的附加功能。有些甚至在您的微控制器上執行此微調程序,以便您方便地對一批設備進(jìn)行編程,微調每個(gè)單元上的內部振蕩器。
一些設備編程器能夠校準其目標微控制器的內部振蕩器。
免責聲明:本文為轉載文章,轉載此文目的在于傳遞更多信息,版權歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權問(wèn)題,請聯(lián)系小編進(jìn)行處理。
推薦閱讀: