新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > AVR EEPROM讀寫

        AVR EEPROM讀寫

        作者: 時間:2016-11-11 來源:網絡 收藏
        void Write_byte_eeprom(unsigned short address,unsigned char data)

        {
        while (EECR&(1<EEAR = address;
        EEDR = data;
        EECR |= (1<EECR |= (1<}

        本文引用地址:http://www.104case.com/article/201611/316567.htm

        unsigned char Read_byte_eeprom(unsigned short address)
        {
        while (EECR&(1<EEAR = address;
        EECR |= (1<
        return EEDR;
        }

        void Refresh_eeprom(void)
        {
        unsigned char i = 0;
        unsigned char check = 0;
        unsigned char *p = (unsigned char *)&ram;

        asm("cli");

        ram.start = 0x55;
        for (; i<(sizeof(ram)-1); i++)
        {
        Write_byte_eeprom(i,*(p+i));
        check += *(p+i);
        }
        Write_byte_eeprom(i,check);

        asm("sei");
        }

        void Read_eeprom(void)
        {
        unsigned char i = 0;
        unsigned char check = 0;
        unsigned char *p = (unsigned char *)&ram;

        for (; i<(sizeof(ram)-1); i++)
        {
        *(p+i) = Read_byte_eeprom(i);
        check += *(p+i);
        }
        *(p+i) = Read_byte_eeprom(i);
        //取值合理性判斷

        if ((*(p+i) != check) || (*p != 0x55))
        {
        Parameter_reset();
        }

        }



        關鍵詞: AVREEPROM讀

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 云浮市| 株洲市| 阳西县| 泾川县| 靖江市| 延川县| 太湖县| 绥宁县| 宜良县| 都兰县| 浦东新区| 彝良县| 西乌珠穆沁旗| 麻江县| 黎川县| 永嘉县| 荣昌县| 太康县| 兴文县| 临沧市| 堆龙德庆县| 木里| 商洛市| 理塘县| 会昌县| 满洲里市| 哈密市| 施秉县| 辽宁省| 威信县| 长宁区| 库尔勒市| 东乡族自治县| 郸城县| 手游| 建德市| 冷水江市| 浪卡子县| 方山县| 长岛县| 碌曲县|