以前這樣可以的
uint bnm; //16位變量
uchar bnmh,bnml; //變量的高8位,低8位
void main()
{
bnmh=bnm/256;
bnml=bnm%256;
bnm=bnmh*256+bnml;
IapErase(0x0400); //扇區擦除
IapProgram(0x0400,bnmh); //保存高8位
IapProgram(0x0401,bnml); //保存低8位
}
以前STC15F單片機保存后讀出的數正常。現在用STC8G2K64S4,保存讀出不正常了。頻率提高了,發現要調整的地方都調了。其它功能正常,就這個16位變量結果不對。
各位還有其它方法嗎? |