打印
[疑难问答]

c语言中case 几个百个常量有没有简单的方法

[复制链接]
844|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
CallReceiver|  楼主 | 2016-6-18 08:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
上位机触摸屏通过Modbus 给下位机传送数据,但是上位机给下位机点的数量非常多,地址也是连续的,把所有的地址写出来太繁琐了,
弄得程序非常臃肿,因为上位机是触摸屏,每个变量按地址下发时不确定性 ,只能按照 功能码06,不按功能码10 (数据量大,传送时间长)
各位有没有好的简单方法呢
例如自己写的  
uint16_t Write_RVCReg( uint16_t Adrr_Data,uint16_t Value_Axis)

{

          uint16_t  ret=0;

     switch(Adrr_Data)

     {
         case 0x0000:  XRECV[0] = Value_Axis;    break;//
          case 0x0001:  XRECV[1] = Value_Axis;    break;
          case 0x0002:  XRECV[2] = Value_Axis;    break;
          case 0x0003:  XRECV[3] = Value_Axis;    break;
          case 0x0004:  XRECV[4] = Value_Axis;    break;               
          case 0x0005:  XRECV[5] = Value_Axis;    break;
          case 0x0006:  XRECV[6] =  Value_Axis;    break;
                .
                .
                .
                .
           case 0xnnnn:XRECV[nnnnn] =  Value_Axis;    break;

        default:    break;

      }


}
沙发
boy1990| | 2016-6-18 08:12 | 只看该作者
说白了就是 c语言,switch case,case后的常量为1到100规律性的,能有什么简单方法

使用特权

评论回复
板凳
sourceInsight| | 2016-6-18 09:05 | 只看该作者
函数指针数组??有没有想过。

使用特权

评论回复
地板
CallReceiver|  楼主 | 2016-6-18 09:07 | 只看该作者
sourceInsight 发表于 2016-6-18 09:05
函数指针数组??有没有想过。

往那边想过,可惜一点思路没有

使用特权

评论回复
5
handleMessage| | 2016-6-18 09:23 | 只看该作者
建议你调试的时候 在每个中断里加个调试信息。你好确定每次进入的是哪个中断啊。

使用特权

评论回复
6
zhouhuanの| | 2016-6-18 09:25 | 只看该作者
宏定义,行号和case 对应。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

64

主题

1695

帖子

1

粉丝