注册 登录
查看: 386|回复: 9

山外哥,请教直立车时序问题

[复制链接]
发表于 2014-3-27 09:40:52 | 显示全部楼层 |阅读模式
设置的PIT为最高优先级,开电时车轮缓慢转,当进入dma重点和场中断之后,轮子就不受控制的疯转,请问这个问题怎么解决?
回复

使用道具 举报

发表于 2014-3-27 11:12:04 | 显示全部楼层
场中断设置为最高优先级(场中断时间很短的),然后PIT其次。

另外,PIT里不要有过多的内容,简单的控制直立的就好了。那些参数调试这类的,直接在主函数里进行
回复 支持 反对

使用道具 举报

发表于 2014-3-27 12:30:32 | 显示全部楼层
栾端静 发表于 2014-3-27 11:12
场中断设置为最高优先级(场中断时间很短的),然后PIT其次。

另外,PIT里不要有过多的内容,简单的控制 ...

那速度控制和方向控制要不要也放在中断函数里面?
回复 支持 反对

使用道具 举报

发表于 2014-3-27 12:57:28 | 显示全部楼层
草原上的星星 发表于 2014-3-27 12:30
那速度控制和方向控制要不要也放在中断函数里面?

那些主要都是运算,可中断的,可以放在中断里处理的。当然,最好就实际测测,如果出错,还得在线调试,看看啥原因导致出错。

我调试的时候,习惯在默认中断函数里设个断点,有啥异常都会进入默认中断的,然后调出IAR 的调用栈,很容易找到问题所在。
回复 支持 反对

使用道具 举报

发表于 2014-3-27 13:00:03 | 显示全部楼层
栾端静 发表于 2014-3-27 12:57
那些主要都是运算,可中断的,可以放在中断里处理的。当然,最好就实际测测,如果出错,还得在线调试,看 ...

嗯,那怎么知道哪一块用了多长时间?用Keil的时候我知道在哪看,但IAR我就不知道了
回复 支持 反对

使用道具 举报

发表于 2014-3-27 13:05:05 | 显示全部楼层
草原上的星星 发表于 2014-3-27 13:00
嗯,那怎么知道哪一块用了多长时间?用Keil的时候我知道在哪看,但IAR我就不知道了

IAR 没这功能,不过山外哥提供的代码,可以用K60的定时器测一段代码运行了多久。
两个编译器各有优缺点啦。
回复 支持 反对

使用道具 举报

发表于 2014-3-27 13:07:23 | 显示全部楼层
栾端静 发表于 2014-3-27 13:05
IAR 没这功能,不过山外哥提供的代码,可以用K60的定时器测一段代码运行了多久。
两个编译器各有优缺点啦。 ...

用定时器怎么测?是不是还要在上位机显示出来?
回复 支持 反对

使用道具 举报

发表于 2014-3-27 13:12:00 | 显示全部楼层
草原上的星星 发表于 2014-3-27 13:07
用定时器怎么测?是不是还要在上位机显示出来?

山外哥有例程的啊,pit或者lptmr都可以用来测。
串口打印也行,液晶显示效果也行,在线调试查看变量值也行啊,随你修改而已
回复 支持 反对

使用道具 举报

发表于 2014-3-27 13:13:49 | 显示全部楼层
栾端静 发表于 2014-3-27 13:12
山外哥有例程的啊,pit或者lptmr都可以用来测。
串口打印也行,液晶显示效果也行,在线调试查看变量值也行 ...

嗯,好的,获益匪浅,多谢了。向你学习中
回复 支持 反对

使用道具 举报

发表于 2014-3-29 20:35:38 | 显示全部楼层
请问一下你解决了么  我也遇到同样的问题
回复 支持 反对

使用道具 举报

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

本版积分规则

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