注册 登录
查看: 274|回复: 2

[其他] 程序有个奇怪的错误,不知道怎么造成的,求指导

[复制链接]
发表于 2014-4-20 01:15:04 | 显示全部楼层 |阅读模式
因为调直立时发现一旦把小车拿起来,车轮就会朝一个方向跑飞,所以就用虚拟示波器看了看数值,发现奇怪的问题,实在想不明白。
Speed_L是我左轮电机的控制值,mmm和lll是特地设出来作比较的,其他地方都没有用到,
程序如下:

    mmm=Speed_L;
    lll=mmm;

    if(Speed_L > 4900)  Speed_L=4900;
    if(Speed_L < -4900) Speed_L=-4900;

    if(mmm > 4900)  mmm=4900;
    if(mmm < -4900) mmm=-4900;

我发现,lll这个值是来回变化的,但是 Speed_L 和 mmm 从第一次变到-4900之后就没变过了。
下面的图里  黄色线 是lll ,一直在变
           粉色线 是speed_L 和  mmm  ,一直是-4900.不懂是为什么。求指导啊。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复

使用道具 举报

发表于 2014-4-20 11:49:50 | 显示全部楼层
数组越界?这个问题,只能单步调试才找到原因的。
lll 是 从 Speed_L 获得值的,然后到发送到上位机,你看看什么时候修改了它的值。
回复 支持 反对

使用道具 举报

发表于 2014-4-20 11:50:04 | 显示全部楼层
有可能是数据越界等原因导致的
回复 支持 反对

使用道具 举报

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

本版积分规则

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