在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 在軟件中判斷單片機的冷啟動還是熱啟動

            在軟件中判斷單片機的冷啟動還是熱啟動

            作者: 時間:2013-09-29 來源:網(wǎng)絡 收藏
              能利用AT89C52本身的資源,在軟件中判斷還是?

              正常工作時在某幾個RAM中置標志,啟動時判斷這個標志即可,但要注意89C52內部RAM在很低的殘余電壓下仍能保持數(shù)據(jù),最好在電源上并一適當大小的放電電阻。

              所謂“”是指掉電后再啟動,而過程是不掉電的。內部RAM在掉電再上電后的值在理論上是隨機的(實際上大多會是0x00或0xff),這樣你可以在某幾個RAM中寫上一些特定的值,例如0x55,0xaa,在啟動時檢查這幾個RAM中的值是否與你預先寫入的值相等,如相等,表示沒有掉過電,是,否則就是。多設幾個這樣的標志,則隨機因素引起誤判的可能性極小。在PC中就是這樣判斷冷熱啟動的,用了兩個字節(jié)的RAM作標志,標志值我記得好象是0xAA55

              如果是用C編程,要注意大多數(shù)C編譯器都會在調用main()之前對RAM進行初始化(寫0或程序中指定的初始值),所以要改寫CSTARTUP,或將標志變量分配在一個特殊的“不初始化段”中(在有些編譯器中叫“NVRAM段”?,對不起,我記不大清楚,請自己查一下編譯器手冊)
            ==============================
            檢查SP的直,如果為07H,這是冷啟動,如為其他直為熱啟動,因為任何一個程序員都不會把堆棧指針放這末低,C51編譯器也一樣.而上電復位以后,SP=7.
            ================================
            PCON的掉電標志POF位,可行。
            ==============================
            占用1個IO口,外接RC,然后讀該IO
            ===============================
              在你的軟件陷阱復位程序前寫一個標志,而冷啟動和看門狗復位沒這個標志,這與在pc上同時按鍵盤上的3個鍵復位是一樣的。注意啟動完后要清標志。

            51單片機相關文章:51單片機教程


            單片機相關文章:單片機教程


            單片機相關文章:單片機視頻教程


            單片機相關文章:單片機工作原理


            晶振相關文章:晶振原理


            評論


            相關推薦

            技術專區(qū)

            關閉