关于STC12C5A60S2的EEPROM的读写程序问题
到最后的一步了,就是把写入数据的一个unsigned long数据写入eeprom里面
然后开机的时候再读出来……
可是stc里面写入和读出eeprom的都是unsigned char的……于是一系列的整改……直到现在……投降了希望有高手拯救一下我感激不尽啊~~!
还有就是他的EEPROM存储多个字节是这样写的么?
Byte_Program(0x00, arr[1]);
Byte_Program(0x01, arr[2]);
Byte_Program(0x02, arr[3]);
Byte_Program(0x03, arr[4]);
IAP_Disable();
用这组ANSI C的函数可以方便些。long型数据占4个字节,建4个单元数组,用stdio.h定义的sprintf();s函数,把long数据打印到数组里,然后发送保存。就OK。没试过,我感觉应该可以。
有木有人知道哇…………STC12c5a60s2里面EEPROM多字节是否这样写的……文件里面的例程只是单字节的方式而已……暂时来说还真心不知道是程序不行还是编程的方式不行哇
还有就是他的EEPROM存储多个字节是这样写的么?
Byte_Program(0x00, arr[1]);
Byte_Program(0x01, arr[2]);
Byte_Program(0x02, arr[3]);
Byte_Program(0x03, arr[4]);
IAP_Disable();
unsigned long int 是4个字节. 你说的unsigned char 是一个字节. 你把unsigned long 分到四个unsigned char 里就行了. 比如: unsigned long temp; unsigned char a[4], i;
for(i=0;i<4;i++)
{
}
unsigned long int 是4个字节. 你说的unsigned char 是一个字节. 你把unsigned long 分到四个unsigned char 里就行了. 比如: unsigned long temp; unsigned char a[4], i;
for(i=0;i<4;i++)
{
a[i]= temp;
temp>>8;
}
可以了~~~~我用的是联合~~~完美解决问题~~~如果遇上同样问题可以MMM我~~~太幸福了~~~感谢各位~~~
也想弄弄
小编,可以问问你关于STC12c5a60s2串口初始化和寄存器的问题不?
小编,你的这个问题是咋解决的?
union LongData
{
unsigned long word ;
unsigned char byte[4];
};
AD存入word。然后byte对应的四个分别存好eeprom,那就OK了,很快的!
如果只是简单应用,直接除法运算都可以啦
呵呵,我现在也要搞这个,麻烦大家了,请问你们是怎样保存的?
在吗卧槽,小编速度加我QQ327222179,救人如救火,关于联合那块有问题请教