在线免费在线观看的a_久久国产晶品免费视频_亚洲最大视频偷拍网站_一级特级毛片一级黄色

您好,歡迎訪問上海意泓電子科技有限責(zé)任公司網(wǎng)站!
4新聞資訊
您的位置: 首頁 ->  新聞資訊 -> 單片機(jī)

?AVR 看門狗使用

文章出處:?jiǎn)纹瑱C(jī) 責(zé)任編輯:上海意泓電子科技有限責(zé)任公司 發(fā)表時(shí)間:
2020
11-10

    //觀察喂狗與不喂狗的區(qū)別,使用PB口的LED指示燈做狀態(tài)指示。

    //將PB口的LED指示燈使能開關(guān)切換到"ON"狀態(tài)。

    #include


    #define DISP_DDR DDRB

    #define DISP_PORT PORTB

    //看門狗WDT初始化程序

    void wdt_init(void)

    {

        asm("wdr");   //clr wdt

        WDTCR=0x0F;   //enable wdt,clk = 2048,2.1S

    }

    void main(void)

    {

        uint8 i;


        DISP_DDR = 0XFF;

        wdt_init();


        while(1)

        {

            DISP_PORT++;    //數(shù)據(jù)顯示向上加,作AVR正常運(yùn)行的指示

            asm("wdr");    //喂狗,去除此句將導(dǎo)致狗餓死,AVR復(fù)位

            delay50ms(20);

        }

    }

    void WDT_off(void)

    {

        asm("cli");

        asm("wdr");   //復(fù)位看門狗,即喂狗

        /* Clear WDRF in MCUSR */

        MCUSR &= ~(1<

        /* 置位 WDTOE  和 WDE*/

        WDTCR |= (1<

        /* 關(guān)閉 WDT */

        WDTCR = 0x00;

    }

     void WATCHDOG_Feed()

     {

         asm("wdr");   //復(fù)位看門狗,即喂狗

     }

//在AVR的運(yùn)行程序中設(shè)置讓PB顯示端口自加。若AVR正常工作,

//及時(shí)喂狗,則單片機(jī)設(shè)置的顯示端口正常自加。

//去除語句:asm("wdr");單片機(jī)不斷復(fù)位,程序得不到允許,自加數(shù)據(jù)沒有顯示往上加。


初始化,然后喂狗,喂狗要在看門狗咬人之前,(復(fù)位之前喂狗) 
注:清狗指令不能放定時(shí)器中斷里,因此不管程序飛跑到哪里, 
執(zhí)行哪里,中斷產(chǎn)生后都會(huì)執(zhí)行中斷函數(shù), 
所以在定時(shí)器里的清狗指令會(huì)使WDT起不到作用(失效)。

上海意泓電子科技有限責(zé)任公司 版權(quán)所有 未經(jīng)授權(quán)禁止復(fù)制或鏡像

CopyRight 2020-2025 www.toastedesign.com All rights reserved   滬ICP備2021005866號(hào)