杰发科技AC7801——使用EEP写版本号和日期
代码仅作为示例
各位看官自己优化即可
#include <stdlib.h>
#include "ac780x_sweeprom.h"
uint32_t g_testReadA[10] = {0};
unsigned char g_version[50] = "V3.1_"__DATE__
"_"__TIME__;
unsigned int g_Write[2] = {0};
unsigned int g_test1 = 0;
unsigned int g_test2 = 0;
unsigned int g_test3 = 0;
unsigned int g_test4 = 0;
/**
* @brief main function
*
* @param[in] none
* @return none
*/
int main(void)
{
InitDelay();
SWEEPROM_Init(512, 31);
EFLASH_UnlockCtrl();
SWEEPROM_Read(0, (uint16_t *)g_testReadA, 1);
if (g_testReadA[0] == 0xffff)
{
g_test1 = g_version[0] & 0x00ff;
g_test2 = (g_version[1] << 8) & 0xff00;
g_Write[0] = g_test1 + g_test2;
SWEEPROM_Write(0, (uint16_t *)&g_Write[0], 1);
g_test1 = g_version[2] & 0x00ff;
g_test2 = (g_version[3] << 8) & 0xff00;
g_Write[0] = g_test1 + g_test2;
SWEEPROM_Write(1, (uint16_t *)&g_Write[0], 1);
g_test1 = g_version[4] & 0x00ff;
g_test2 = (g_version[5] << 8) & 0xff00;
g_Write[0] = g_test1 + g_test2;
SWEEPROM_Write(2, (uint16_t *)&g_Write[0], 1);
g_test1 = g_version[6] & 0x00ff;
g_test2 = (g_version[7] << 8) & 0xff00;
g_Write[0] = g_test1 + g_test2;
SWEEPROM_Write(3, (uint16_t *)&g_Write[0], 1);
g_test1 = g_version[8] & 0x00ff;
g_test2 = (g_version[9] << 8) & 0xff00;
g_Write[0] = g_test1 + g_test2;
SWEEPROM_Write(4, (uint16_t *)&g_Write[0], 1);
g_test1 = g_version[10] & 0x00ff;
g_test2 = (g_version[11] << 8) & 0xff00;
g_Write[0] = g_test1 + g_test2;
SWEEPROM_Write(5, (uint16_t *)&g_Write[0], 1);
g_test1 = g_version[12] & 0x00ff;
g_test2 = (g_version[13] << 8) & 0xff00;
g_Write[0] = g_test1 + g_test2;
SWEEPROM_Write(6, (uint16_t *)&g_Write[0], 1);
g_test1 = g_version[14] & 0x00ff;
g_test2 = (g_version[15] << 8) & 0xff00;
g_Write[0] = g_test1 + g_test2;
SWEEPROM_Write(7, (uint16_t *)&g_Write[0], 1);
g_test1 = g_version[16] & 0x00ff;
g_test2 = (g_version[7] << 8) & 0xff00;
g_Write[0] = g_test1 + g_test2;
SWEEPROM_Write(8, (uint16_t *)&g_Write[0], 1);
g_test1 = g_version[18] & 0x00ff;
g_test2 = (g_version[19] << 8) & 0xff00;
g_Write[0] = g_test1 + g_test2;
SWEEPROM_Write(9, (uint16_t *)&g_Write[0], 1);
}
while (1)
{
int a = 0;
}
}
原文地址:https://blog.csdn.net/qq_35697978/article/details/142641638
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!