久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
新的AVR系列(例如,ATMEGA168等
[打印本頁]
作者:
hongniu
時間:
2015-6-24 19:14
標題:
新的AVR系列(例如,ATMEGA168等
新的AVR系列(例如,ATMEGA168等)使用增強功能的看門狗(Enhanced Watchdog Timer),與原來的看門狗相比較,除了有相同復位的功能以外,還增加了中斷的功能設計時。使用看門狗的中斷功能,可以實現從Power Down狀態喚醒CPU;另外同時能使中斷和復位功能,可以在系統發生錯誤時,先進入中斷狀態,保存關鍵數據到EEPROM,然后在進行系統復位。
AVR新的看門狗與舊狗(例如,ATMEGA16等)比較,增加了新的功能的同時脾氣也有了不少改變。設計時要摸清它的脾氣,以防被狗咬。
下面說明以ATMEGA16和ATMEGA168作一個簡單比較為例,簡要地說明一下注意要點:
看門狗定時器控制寄存器– WDTCR:
1.A1tmega168由于具有中斷功能,所以WDTCR增加了WDIF和WDIE兩個額外的bit的功能;
2.增加了WDP3,溢出周期可以有長達8秒;
3.新的看門狗在初始化時,WDT的值不再一定是0。只要MCUSR寄存器上的WDRF置位,WDT也將被強制置位。這時,如果WDE要清零,必須要WDRF先清零。
4.在設計時即使不用WDT,它也可能在無意中被能使,例如在runaway指針和調電情況下。因此即使不用WDT,在初始代碼中一定要檢查復位標志,如果WDT系統復位發生要采取處理步驟。
最近重新設計一個項目,由原先使用的ATMEGA16更新到ATMEGA168。把原代碼轉換后,測試結果異常。經過一天多的測試,才發現是新的看門狗惹的禍。以前用ATMEGA16,在初始化后才開始喂狗,可是新的AVR系列(例如ATMEGA168等),系統復位發生時(除上電復位外) ,WDT可能繼續運行,并使用最小溢出周期(大約15mS) ,造成了系統不斷復位。根據datasheet,在程序開始時的關狗后一切就恢復正常了:
#include <stdint.h>
#include <avr/wdt.h>
uint8_t mcusr_mirror;
void get_mcusr(void) \
__attribute__((naked)) \
__attribute__((section(".init3")));
void get_mcusr(void)
{
mcusr_mirror = MCUSR;
MCUSR = 0;
wdt_disable();
}
5.使用看門狗的中斷時,當WDIF和WDIE置位,就會產生中斷。進入相應的中斷程序后,系統自動WDIF和WDIE清零。下次要使用看門狗的中斷時必須重新WDIE
歡迎光臨 (http://www.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
亚洲欧洲精品成人久久奇米网
|
国产高清视频一区
|
瑞克和莫蒂第五季在线观看
|
国产精品色
|
拍真实国产伦偷精品
|
亚洲一区二区在线播放
|
色偷偷人人澡人人爽人人模
|
亚洲美女一区二区三区
|
色资源在线
|
99精品欧美一区二区蜜桃免费
|
亚洲精品一区二区三区在线观看
|
欧美视频网
|
国产精品免费一区二区三区四区
|
欧美极品在线观看
|
免费h在线
|
久久av.com
|
久久久久久久久久久国产
|
成人免费av在线
|
国产一区二区三区四区hd
|
日韩精品一区二区三区在线观看
|
免费xxxx大片国产在线
|
亚洲+变态+欧美+另类+精品
|
久久精品高清视频
|
国产91丝袜在线播放
|
黄色在线免费观看视频
|
少妇黄色
|
伊人网在线看
|
欧美福利久久
|
亚洲精品久久久
|
美女黄频
|
韩国精品一区二区三区
|
成人午夜在线视频
|
国产精品a久久久久
|
我我色综合
|
老外几下就让我高潮了
|
1区2区视频
|
国产片侵犯亲女视频播放
|
亚洲性视频
|
一区二区三区免费观看
|
精久久久
|
伊人久久免费视频
|