新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 治標治本,徹底解決AVR單片機EEPROM數據丟失問題

        治標治本,徹底解決AVR單片機EEPROM數據丟失問題

        作者: 時間:2016-12-01 來源:網絡 收藏
        + i),temp);
        }
        }
        if (CheckAllPage() == VALID)
        {
        return VALID;
        }
        return INVALID;
        }
        使用方法(三個備份):
        1、定義一個數組:EEPROMData[EepromPageSize-2] ,數組定義為EepromPageSize-2是為了給每個備份留2個字節的校驗
        2、要保存數據時,先把數據放到數組中,然后調用EepromWriteBlock()函數,把這個數組的數據寫進EEPROM,三個備份要寫三次。
        3、寫完了之后,調用CheckWriteCRC()函數,該函數會計算出當前備份的CRC16檢驗數據并寫到EEPROM備份的尾部,有多少個備份就要調用多少次。
        4、至此,數據的備份工作已經完成。
        5、校驗數據(一般在復位后運行),執行CheckAllPage()函數,若通過了,則EEPROM數據沒有問題,否則要運行DataRecover()函數,對損壞的備份進行修復
        ------------------修改原因:修改變量的定義形式

        上一頁 1 2 3 4 5 6 7 下一頁

        關鍵詞: AVR單片機EEPROM數據丟

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 资源县| 宽城| 商城县| 乌兰察布市| 临颍县| 项城市| 新巴尔虎右旗| 温宿县| 始兴县| 喀什市| 南投市| 霍林郭勒市| 盐城市| 焦作市| 大埔县| 曲松县| 资兴市| 珠海市| 巨野县| 岑溪市| 阿拉善右旗| 淮南市| 兴城市| 安塞县| 色达县| 临西县| 荔波县| 乌兰察布市| 福贡县| 乌拉特中旗| 伊吾县| 鸡东县| 西乡县| 故城县| 原阳县| 西昌市| 阳东县| 盈江县| 昭通市| 乡城县| 乐山市|