找回密码
 立即注册
查看: 170|回复: 4

关于存储奇怪的问题,请高手赐教

[复制链接]

48

主题

87

回帖

907

积分

高级会员

积分
907
发表于 2026-10-21 15:30:21 | 显示全部楼层 |阅读模式
所以stc32g12k128芯片,进行存储时第一次未存储,读出的数是FF,因此我在读出数据进行判断对于某个数值,给一个固定的数值,也算是默认值,单两组数给出不同的值,请高手赐教什么原因


        if(pGain>500) pGain=60;
        if(iGain>500) iGain=251;
        if(dGain>500) dGain=2;
       
        if(pGain_210>500) pGain=55;
        if(iGain_210>500) iGain=240;
        if(dGain_210>500) dGain=3;

上面三个数值给出的就是60、251、2.但下面的三个读出都是-1,请问高手什么原因
回复

使用道具 举报 送花

已绑定手机

7

主题

445

回帖

6692

积分

论坛元老

积分
6692
发表于 2026-10-21 15:37:48 | 显示全部楼层
对啊,FF就是-1,所以>500不成立。
要看数据类型是否有符号。
回复

使用道具 举报 送花

83

主题

8317

回帖

1万

积分

超级版主

积分
17932
发表于 2026-10-21 15:40:14 | 显示全部楼层
你将pGain_210、iGain_210、dGain_210打印出来看看
回复

使用道具 举报 送花

已绑定手机

2

主题

154

回帖

470

积分

中级会员

积分
470
发表于 2026-10-21 16:13:02 | 显示全部楼层
可以用一个字节存标记(或版本号),读取时判断,如果这个标记是FF,则是首次,使用默认值。
if( *pVer == 0xFF) { 默认值} //pVer是指向配置的eeprom的u8 far指针
else { 读取其余配置值};
回复

使用道具 举报 送花

1

主题

128

回帖

641

积分

高级会员

积分
641
发表于 2026-10-25 21:46:53 | 显示全部楼层
给出的信息太少了。
回复

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2026-11-7 13:00 , Processed in 0.072949 second(s), 71 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表