标题:
debug
[打印本页]
作者:
liuyang
时间:
2011-11-16 23:58
标题:
debug
1,时钟干扰。对于强时钟同步的操作,比如spi,不可用实时仿真调试,会造成时钟干扰。
2,对于多维数组和指针,不是什么情况下都可以互换的,多维指针当多维数组用的时候,要知道次一维的确切长度。当数组用时,建议用 type name[][18]类似这样的形参,也可在函数里动态分配,但要记得释放空间。
3,codewarrior默认没打开浮点运算,如果需要浮点运算,可以在新建工程的时候选上,但浮点运算的速度很慢,应该是软件模拟的。
4,xs128的dflash,写数据时,如果不写在连续的空间,会出现数据没成功写入,写之前必须擦除扇区,擦除扇区可能会造成数据丢失,建议把需要的内容都读取出来,再全部写入。烧程序的时候会清空flash。
5,时刻注意类型转换的问题,尤其是有符号和无符号的对换。
6,不要声明过大的局部变量,单片机堆栈小,大数组什么的用动态分配
7,如果发现一个变量无法被赋值,可声明为易变变量,关键字 volatile,告诉编译器每次都从内存中读取数据,而不是从临时寄存器(更新较慢,可能是不同步的)读取。一般用在中断中被改变的变量。
8,浮点数的保存,可把它的地址指向的数据转换成无符号数保存下来,要读取的时候再转换。
9,内存回收,这个在单片机一定要考虑的。
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1