标题: 为什么在C语言switch里面不能改变里面的值? [打印本页]

作者: vb2002    时间: 2024-8-8 23:03
标题: 为什么在C语言switch里面不能改变里面的值?
麻烦帮我看看这段C语言代码可以吗 谢谢大家.
这段代码为什么在switch里面不能改变里面的值哦. 变量哪里错了吗?
  1. typedef unsigned char u8;
  2. typedef unsigned int u16;
  3. code u8  uuzu[]={5,15,35,155};
  4.   
  5. u8 save;
  6. u8 state;
  7. u8 dat;
  8. u16 EEPROMId = 0020;
  9. u8 time;

  10.         while(1)
  11.         {      
  12.                 dat = IapRead(EEPROMId + 1);                        //读取下一字节数据255
  13.                 printf("dat=%bu\r\n",dat);
  14.                 printf("id=%u\r\n",EEPROMId);               
  15.                 if(dat == 0XFF)                                        //下一字节字节未写入数据255
  16.                 {
  17.                         dat = IapRead(EEPROMId);                //读取当前字节数据
  18. //                        SetMode(CMD_PROGRAM);                        //写入数据
  19.                        
  20.                        
  21.                 printf("uu %bu \r\n",uuzu);
  22.                        
  23.          
  24.                        
  25.                           IapProgram(EEPROMId+1, state);
  26.                        
  27.                 switch(state)
  28.                         {      
  29.                               
  30.                                 case 0: PWMA_CCR1=1;break;
  31.                                 case 1: PWMA_CCR1=5;break;
  32.                                 case 2: PWMA_CCR1=15;break;
  33. //                                case 3: IapProgram(EEPROMId+1,Dat[4]);break;
  34.                                 default: PWMA_CCR1=55;break;
  35.                               
  36.                         }         
复制代码



作者: 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