嵌入式與韌體

在每1 ms一次的計時器中斷處理常式中,無條件地重設看門狗計時器(餵狗)並不好,其原因下列何者正確?

  1. A看門狗規定不可以從中斷中觸碰
  2. B即使主程式因無限迴圈等原因停住,中斷仍會持續執行,使看門狗無法偵測到異常
  3. C每1 ms餵狗一次的話,看門狗會損壞
查看答案與解析

正確答案:B. 即使主程式因無限迴圈等原因停住,中斷仍會持續執行,使看門狗無法偵測到異常

看門狗是若在規定時間內沒有被餵狗,就會重設微控制器,使其從失控中恢復的機制。然而計時器中斷即使在主程式停止時仍會持續執行,若在那裡無條件餵狗,就無法察覺程式已停住。基本做法是確認主迴圈或各工作各自正常執行完一輪,只有在全部到齊時才餵狗。

  • A. 並沒有這樣的規定。
  • B. 正確。確認正常運作後才餵狗。
  • C. 頻繁餵狗並不會損壞。
練習這個領域 前往領域頁面

嵌入式與韌體的其他題目

  1. 關於嵌入式裝置的開機載入程式(bootloader)的作用,下列何者正確?
  2. 在以無線方式改寫韌體(OTA更新)的裝置中,於快閃記憶體準備兩個放置韌體的位置(A面與B面),其理由下列何者正確?
  3. 在以電池運作的嵌入式裝置中,使用微控制器睡眠模式的主要目的,下列何者正確?
  4. 某感測器裝置只在全部時間的1%以10 mA運作,其餘99%的時間以10 µA休眠。平均消耗電流最接近下列何者?
  5. 在小型微控制器的韌體中,經常避免使用malloc等動態記憶體配置,其理由下列何者正確?

這個領域的比較