宏定义计算出错

2020-02-11 08:56发布

请教各位大神,为啥宏定义ACT1_RCLA_STOP_ON实际的值并不是420,但是ACT1_RCLA_TAIL_ON的值是80?

#define  RCLB_TAIL_UP                           4
#define  RCLA_TAIL                                11
#define  RCLB_TAIL_DOWN                      6
#define  RCLA_STOP                                7
#define  RCLB_STOP                                7

#define  ACT1_CYCLE                              200  //周期200ms
#define  ACT1_RATIO                              10   //系数
#define  ACT1_RCLA_WAIT                       1500 //1500ms

#define  ACT1_RCLA_TAIL_ON                ((RCLB_TAIL_UP*ACT1_CYCLE)/ACT1_RATIO)     // 80  
#define  ACT1_RCLA_STOP_ON    (((RCLA_TAIL*ACT1_CYCLE)+(RCLB_TAIL_DOWN*ACT1_CYCLE)+ACT1_RCLA_TAIL_ON)/ACT1_RATIO))// 420
#define  ACT1_RCLA_STOP_OFF             ((RCLA_STOP*ACT1_CYCLE)+ACT1_RCLA_WAIT+ACT1_RCLA_STOP_ON)               // 710
#define  ACT1_RCLA_TAIL_OFF              ((RCLA_STOP*ACT1_CYCLE)+(RCLB_TAIL_DOWN*ACT1_CYCLE)+ACT1_RCLA_STOP_OFF) //970
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
15条回答
rundream
1楼-- · 2020-02-12 18:15
 精彩回答 2  元偷偷看……
机器人天空
2楼-- · 2020-02-12 22:06
rundream 发表于 2018-5-18 22:49
世界五百强企业提供的算力!

我懂了,是我的错
ACT1_RCLA_TAIL_ON 计算结果已经除以系数10,而下面ACT1_RCLA_STOP_ON整体又除以系数10所以导致结果有问题
#define  ACT1_RCLA_STOP_ON    (((RCLA_TAIL*ACT1_CYCLE)+(RCLB_TAIL_DOWN*ACT1_CYCLE)+ACT1_RCLA_TAIL_ON)/ACT1_RATIO))// 420
机器人天空
3楼-- · 2020-02-13 01:29
感谢rundream和luobote55两位坛友的指点

一周热门 更多>