-
1.首先我们先看看IAR自带的"if"和"for"模板,点击菜单栏Edit->Code Templates->Insert Templates,然后选择如下图所示:
...
-
用keilMDK试了一个STM32F107的例子,打开后编译链接,结果编译通过,链接却提示有5个函数没有声明,但是回头再看文件,明明有引用头文件啊,为什么还不过呢?
我又试了...
-
目前单片机有多种C编译器,不同编译器之间有很多区别。总结后,主要有以下几点,需要弄清楚:
1.寄存器的定义
不少编译器已经自带了寄存器的定义文件,比如AT89S52, 使用KE...
-
问题一:器件与代码选型不一致
1.Options设置
编译结果:
2.Options设置
编译结果:
查找相关文件即可。
3.Options...
-
调试过程中难免出现一些问题,许多同学也有类似的问题,现在就把可能出现的bug陆续更新吧!
1.Building configuration: as - DebugUp...
-
今天调试时遇到了这个问题,以前都不注意这些警告错误,现在看来争取要做到:0错误,0警告。
中断中和中断外都调用了同一个串口打印函数,一直有上述的报警,没在意,今天调试时发现串口打...
-
优化级别说明(仅供参考):
则其中的 Code Optimization 栏就是用来设置C51的优化级别。共有9个优化级别(书上这么写的),高优化级别中包含了前面所...
-
今天调试时遇到了这个问题,以前都不注意这些警告错误,现在看来争取要做到:0错误,0警告。
中断中和中断外都调用了同一个串口打印函数,一直有上述的报警,没在意,今天调试时发现串口打...
-
本文讲述了将ANSIC程序移植到KeilC51上应该注意的事项。文章讲述了存储类型、指针类型、重入函数、根据目标系统RAM的分布的段定位和仿真栈设置、函数指针、NULL指针问题、字...
-
笔记:
(1)如何禁止KEIL初始化RAM为零?
1. 在KEIL Noinit 打钩
2.
<1> 另须对需要热启动保持的变量用__at...
-
大家知道使用KEIL FOR ARM可以通过两种编译器来进行编译,一种就是比较古老的CARM,另一种就是现在KEIL力推的REALVIEW MDK,现在的版本可能已经到了3.5左右...
-
putchar.c里面,是先检测TI再发送。
这样做的目的是把尽可能多的时间留给2次串口操作之间的程序,而不是把等待字节发送的时间白白空等待浪费掉。
...
-
引起我注意Keil c函数参数传递的是在一个偶然的机会,我在写一个函数的时候:如下write_byte(ulong addr, uchar dat){ &nb...
-
定位变量到指定的位置
使用定义在头文件 absacc.h中的 __at宏,可以将变量以如下方式定位到绝对地址处:
C 例子:
#include <absacc.h>...
-
使用CCS时,将鼠标放在函数(或变量)上时会出现函数(或变量)会自动提示函数(或变量)的声明及使用情况。
若工具提示或变量查看出现异常,例如无法查看TI给定的函数InitCpuT...
-
1. GNUgcc交叉编译器
运行于Linux操作系统下的自由软件GNUgcc编译器,不仅可以编译Linux操作系统下运行的应用程序、编译Linux本身,还可以作...
-
周五查看一段代码,
发现里边有一个计算式写作:
p = 1 << (num % 8 -1);//修正见注2。
这里边num,p都是无符号字符型,
...
-
写代码是从模仿开始的,提高也是从观摩别人的优秀设计和代码开始的。所以阅读源代码至关重要,接下来赞从下列方面聊聊阅读源码的事情。
·目的
...
-
一般情况下,源程序中所有的行都参加编译。但是有时希望对其中一部分内容只在满足一定条件才进行编译,也就是对一部分内容指定编译的条件,这就是“条...
-
堆栈是计算机程序中非常重要的一部分,主要用来参数的调用,局部变量的存储等,在C语言中的函数调用过程中通过不同函数的堆栈空间可以非常方便的找到传递进来的参数以及退出时应该返回的地址。...