打印
[匠人手记]

程序调试(除错)过程中的一些雕虫小技(更新:2010-04-09)

[复制链接]
楼主: 程序匠人
手机看帖
扫描二维码
随时随地手机跟帖
61
madboy21| | 2009-9-5 23:14 | 只看该作者 回帖奖励 |倒序浏览
顶顶顶~~~~~
我用的几款芯片都是8脚的。调试时通常需要找一个引脚来做人机界面

使用特权

评论回复
62
RAYINGPX| | 2009-9-8 23:56 | 只看该作者
技术在于积累,成功在于执着!!!学习!,学习!!,再学习!!!

使用特权

评论回复
63
my1693| | 2009-9-11 14:06 | 只看该作者
本人菜鸟一个,前一段时间一直在调试一个单片机的程序,如果之前看了匠人大侠的这篇**,中间肯定能少走很多弯路!顶~~~~~~~~

使用特权

评论回复
64
waytoCTO| | 2009-9-12 15:57 | 只看该作者
呵呵,剧终了吗,我刚看完,发现自已用过里面的很多方法,不过都是突发奇想!!!

支持下,技术在于积累,成功在于执着!!!

使用特权

评论回复
65
21ID| | 2009-9-14 21:44 | 只看该作者
受教了

使用特权

评论回复
66
yvhkvihc| | 2009-9-15 16:54 | 只看该作者
先占个位置:lol

使用特权

评论回复
67
wanghao123| | 2009-9-16 00:06 | 只看该作者
谢谢,受益匪浅
呵呵:lol
努力学习中~~~

使用特权

评论回复
68
叶汉明| | 2009-9-18 00:53 | 只看该作者
谢谢匠人分享经验,再次感谢。
获益良多

使用特权

评论回复
69
zyok| | 2009-9-18 00:56 | 只看该作者
留个爪印
有空再来学习...

使用特权

评论回复
70
ytmkkk1986| | 2009-9-19 16:17 | 只看该作者
顶好!

使用特权

评论回复
71
role_2099| | 2009-9-21 14:40 | 只看该作者
匠人同志,确实是不能评分了,提示“不能对发表超过24小时的**评分”
口头鼓励一下吧,希望继续下去,加油

使用特权

评论回复
72
bing103| | 2009-9-21 16:27 | 只看该作者
受用了!谢谢!

使用特权

评论回复
73
程序匠人|  楼主 | 2009-9-22 12:34 | 只看该作者
匠人按:本连载已经停顿好久了,但看到这么多人顶帖,实在感动,要么,咱再挤点牙膏出来?

十、拉闸睡觉!统一管理调试代码

前面介绍的几种方法,需要在程序中增加一些临时性的调试代码。

有些调试代码是无害的,比如只是一些延时指令,或者是在不使用的IO口上有一些输出而已。

但另一些调试代码,与正式要求的程序功能是相冲突的。那么这些代码在完成调试之后就应该被删除或屏蔽掉。

那么会不会出现意外,把本该被删除的代码漏删了?结果埋下祸害?——如果调试代码少,出错的概率比较低,只要认真仔细点还好办;但是如果程序中的调试代码写得比较多,那么确实很担心会发生这种问题。

或者另一种情况,就是前脚把调试代码删除或屏蔽掉,后脚发现还需要再调试,又要重新输入或打开那些代码?

如何管理这些代码呢?这个我们要向宿舍管理员学习了。他们是这么做的,给所有房间安装一个总电闸。到了晚上11点就把总闸一拉,看书的、打牌的、喝酒的、胡侃的、泡妞的、夜游的、Y们都给我老老实实睡觉去吧!

程序中,这样的总闸也是可以通过条件编译的方式来实现的。就像这样:

//#define TEST_MD        //调试状态标志(在调试时打开,正式烧录芯片时屏蔽)

//在编写调试代码时,采用下面的形式:
#ifdef TEST_MD                //如果是调试状态,则编译这段代码
        ……
        ……
#else                        //如果不是调试状态,则编译这段代码
        ……
        ……
#endif


一个总闸,把管理简单化了。欧耶!

(连载也许未完,也许已完,视大家的关注程度和匠人的状态而定……)

使用特权

评论回复
评分
参与人数 2威望 +2 收起 理由
fushaobing + 1 赞一个!
llrsnake + 1 学习了
74
bing103| | 2009-9-22 14:10 | 只看该作者
继续顶!

使用特权

评论回复
75
zywic5| | 2009-9-22 16:30 | 只看该作者
好东西,学习中,顶,再顶

使用特权

评论回复
76
yyyyxxxxdd| | 2009-9-22 18:05 | 只看该作者
mark

使用特权

评论回复
77
chenluck| | 2009-9-24 15:15 | 只看该作者
不懂汇编的人,写出来的C程序可以用,但不会是最优的!
只有学习汇编才能真只了解单片机的工做原理!

使用特权

评论回复
78
gszzjf| | 2009-9-24 21:53 | 只看该作者
顶 坚决顶

使用特权

评论回复
79
jqjszxd0| | 2009-9-27 09:31 | 只看该作者
来学习的经验的

使用特权

评论回复
80
281506431| | 2009-9-27 14:47 | 只看该作者
经验来源于积累,成功源自于执着!
学习中.........

使用特权

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

本版积分规则