<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 模擬技術(shù) > 設(shè)計應(yīng)用 > MC9S08MG64實時時鐘的校準(zhǔn)和補償(二)

          MC9S08MG64實時時鐘的校準(zhǔn)和補償(二)

          作者: 時間:2013-10-15 來源:網(wǎng)絡(luò) 收藏
          -text-size-adjust: auto; orphans: 2; widows: 2; webkit-text-stroke-width: 0px">說明

          當(dāng)開發(fā)GW64工程時,推薦在iRTC的初始化中禁止掉iRTC中斷,或者定義iRTC中斷服務(wù)程序。因為即使當(dāng)下載一個新程序時,iRTC模塊仍然保留著上一次的配置(iRTC可以由VBAT供電,MCU掉電時,iRTC的配置仍然保留)。在初始化時必須禁止掉iRTC中斷,或者定義其中斷服務(wù)程序。否則可能發(fā)生不可預(yù)期的錯誤。

          5 補償流程

          使用上述軟件,我們可以不用關(guān)心補償算法的細節(jié),按照下面的簡單步驟來完成晶體振蕩電路在全溫度范圍內(nèi)的自動補償:

          (1) 把補償間隔和補償值設(shè)置為0(Interval = 0, Value = 0),在全工作溫度范圍內(nèi)調(diào)整溫度并記錄頻率偏差值。測量點越多越好。

          (2) 利用測量點擬合拋物線(a(x - t)2 + k),得出拋物線參數(shù)a, t, k。

          (3) 把參數(shù)寫入程序中。

          對于同一批次的晶體,如果晶體的一致性比較好,可以用上面的步驟確定出參數(shù)a,和t。在批量生產(chǎn)時,在任意一個溫度點測量晶體的誤差,即可反推出k。其他溫度點的誤差即可通過拋物線公式計算得出,根據(jù)誤差查表得到需要的補償間隔和補償值。把補償間隔和補償值寫入補償寄存器即可得到精確的秒脈沖輸出。參數(shù)a, t和k 都要保存在非易失性存儲器中以防掉電丟失。

          6 總結(jié)

          本文介紹了iRTC的補償機制和如何輸出均勻秒脈沖的問題,探討了如何在全溫度范圍內(nèi)對iRTC進行補償。iRTC可以在長時間內(nèi)保持高精度,F(xiàn)TM模塊用來輸出每個周期都很均勻的秒脈沖。在全溫度范圍內(nèi)的補償精度依賴于晶體的一致性,建議采用高精度,一致性好的晶體。溫度測量器件基于成本考慮建議采用NTC電阻,根據(jù)測量值用查找表來確定溫度,NTC電阻應(yīng)盡量靠近晶體。MG64有一個內(nèi)部溫度傳感器,通過標(biāo)定也可以達到比較高的測溫精度,使用它可以進一步降低系統(tǒng)的硬件成本。

          電涌保護器相關(guān)文章:電涌保護器原理


          過電壓保護器相關(guān)文章:過電壓保護器原理
          電機保護器相關(guān)文章:電機保護器原理

          上一頁 1 2 3 4 下一頁

          關(guān)鍵詞: MC9S08MG64 實時時鐘

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();