标题:
为什么在C语言switch里面不能改变里面的值?
[打印本页]
作者:
vb2002
时间:
2024-8-8 23:03
标题:
为什么在C语言switch里面不能改变里面的值?
麻烦帮我看看这段C语言代码可以吗 谢谢大家.
这段代码为什么在switch里面不能改变里面的值哦. 变量哪里错了吗?
typedef unsigned char u8;
typedef unsigned int u16;
code u8 uuzu[]={5,15,35,155};
u8 save;
u8 state;
u8 dat;
u16 EEPROMId = 0020;
u8 time;
while(1)
{
dat = IapRead(EEPROMId + 1); //读取下一字节数据255
printf("dat=%bu\r\n",dat);
printf("id=%u\r\n",EEPROMId);
if(dat == 0XFF) //下一字节字节未写入数据255
{
dat = IapRead(EEPROMId); //读取当前字节数据
// SetMode(CMD_PROGRAM); //写入数据
printf("uu %bu \r\n",uuzu);
IapProgram(EEPROMId+1, state);
switch(state)
{
case 0: PWMA_CCR1=1;break;
case 1: PWMA_CCR1=5;break;
case 2: PWMA_CCR1=15;break;
// case 3: IapProgram(EEPROMId+1,Dat[4]);break;
default: PWMA_CCR1=55;break;
}
复制代码
作者:
xiaobendan001
时间:
2024-8-9 07:28
哪个不能改变?另外,有个小写的dat还有个Dat[4],Dat是在哪儿定义的?
作者:
张天师
时间:
2024-8-9 08:49
PWA寄存器属于扩展寄存器,加上P_SW2 = 0x80; 试试
作者:
zhuls
时间:
2024-8-9 09:07
没看到state的赋值语句在哪里?所以state就一直是0.
作者:
mtt661
时间:
2024-8-9 10:24
没见到给state赋值啊
作者:
coody_sz
时间:
2024-8-9 10:59
当然可以任意操作。
作者:
vb2002
时间:
2024-8-10 21:27
zhuls 发表于 2024-8-9 09:07
没看到state的赋值语句在哪里?所以state就一直是0.
搞明白了. 就是这个问题, state没有赋值,, 一直是0
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1