逐梦论坛's Archiver

逆风飞扬 发表于 2006-2-5 20:38

Keil C 调试心得.htm

我们使用keil c调试某系统时积累的一些经验

1、由于keil c对中文支持不太好,因而会出现显示的光标与光标实际所在不一致的现象,这会对修改中文注释造成影响。在windows2000下面,我们可以把字体设置为courier,这样就可以显示正常。
2、当使用有片外内存的mcu(如w77e58,它有1k片外内存)的时候,肯定要设置标志位,并且编译方式要选择大模式,否则会出错。
3、当使用keil c跟踪程序运行状态的时候,要把引起warning的语句屏蔽,否则有可能跟踪语句的时候会出错。
4、在调用数组的时候,keil c是首先把数组load进内存。如果要在c中使用长数组的时候,我们可以使用code关键字,这样就实现了汇编的db的功能,keil c是不会把标志code的数组load入内存的,它会直接读取rom。
5、当编程涉及到有关通信,时序是很重要的。拉高管脚的执行速度远远比检查管脚电平的要快。
6、在等待管脚电平变化的时候,我们需要设置好超时处理,否则程序就会因为一个没有预计的错误而死锁。
7、能用c语言实现的地方,尽量不要用汇编,尤其在算法的实现,用汇编是晦涩难懂。
8、程序的几个参数数组所占篇幅很大,其中液晶背景数组最长,有四千个byte,因而把那些初始化数组都放在另外一个c文件,在主文件使用使用关键字extern定义,这样就不会对主文件的编写造成干扰。
9、所有函数之间的相关性越低越有利于以后功能的扩展。
10、6.20版在编译带code关键字的数组时,编译通过但是单片机运行结果是错误的,改用6.14版后正常。

hbyzz123 发表于 2006-5-21 12:26

[EM03]

meidi125 发表于 2006-6-3 21:24

[EM03]

strong2004 发表于 2006-10-29 21:42

谢谢大大

bowl_76 发表于 2006-10-31 01:51

[EM25]

gbl111 发表于 2007-7-24 12:00

bu hao yi si wo bu dongde, wo xiang zhao guan yu vme yong de c yu yan bianche de ziliao, tai nan zhaole

页: [1]

Powered by Discuz! Archiver 7.2  © 2001-2009 Comsenz Inc.