本帖最后由 10xjzheng 于 2014-5-25 18:04 编辑
调试单片机其实是很多人写程序过程的一个周期相对长的一个环节,会调试的人才能更好地解决问题,用了一年多的单片机,想想是时候来学习下一些调试的技巧,学一些办法更好地调试。但是很少人写着方面的资料,都是靠经验。
在我看来,低级一点调试办法只要是看现象,比如设置一些LED灯在某个程序环节就亮或者蜂鸣器响来说明一些问题之类,高级一点的调试办法主要是使用串口吧。希望在这里能像各位大神学习下调试的办法,我近期是想些一些可以复用的调试程序块,给单片机,方便单片机调节。完成程序之后,调试段可以全身而退,并且占用资源比较少。
我看过原子的一个文章,也许我可以学习下他
http://www.openedv.com/posts/list/877.htm引用下面他说的话,就是我想达到的效果。
“有了USMART,你可以轻易的修改函数参数、查看函数运行结果,从而快速解决问题。比如你调试一个摄像头模块,需要修改其中的几个参数来得到最佳的效果,普通的做法:写函数->修改参数->下载->看结果->不满意->修改参数->下载->看结果->不满意….不停的循环,直到满意为止。而利用USMART,则只需要在串口调试助手里面输入函数及参数,然后直接串口发送给单片机,就执行了一次参数调整,不满意的话,你在串口调试助手修改参数在发送就可以了,直到你满意为止。这样,修改参数十分方便,不需要编译、不需要下载、不会让单片机折寿。”
正所谓磨刀不误砍柴工,我想掌握调试的办法至关重要。
大神们发表下自己一下调试的心得给我们这些初学者学习下吧,大家都可以再这里交流下自己调试的程序,调试的方法,或者帮忙上一些资料,谢谢。
1.gif (412.16 KB, 下载次数: 0)
下载附件
2014-5-25 16:20 上传
俺调试都是自己做好16位的数码管和LCD模块,哪个方便用哪个调试。。。。那个PRINTF速度太慢,有的程序里PRINTF反倒会导致问题。所以,数码管的速度最快,但显示有限制,LCD的速度次之,但是可以显示很多内部信息。。。很不错(OLED的显示速度非常快,可以用来代替LCD哦,对于观察某些快速变化的东西,OLED的优势是绝对的。。)
以上是我的笨办法。。。
一周热门 更多>