-
目前单片机有多种C编译器,不同编译器之间有很多区别。总结后,主要有以下几点,需要弄清楚:
1.寄存器的定义
不少编译器已经自带了寄存器的定义文件,比如AT89S52, 使用KE...
-
问题一:器件与代码选型不一致
1.Options设置
编译结果:
2.Options设置
编译结果:
查找相关文件即可。
3.Options...
-
自己设计的PCB板子,在焊上元器件之后,经反复检查有无漏焊、短路的故障,确定没有问题以后,就需要进行下一步检查——上电下载程序验证功能。
本文档就着眼于这...
-
优化级别说明(仅供参考):
则其中的 Code Optimization 栏就是用来设置C51的优化级别。共有9个优化级别(书上这么写的),高优化级别中包含了前面所...
-
本文讲述了将ANSIC程序移植到KeilC51上应该注意的事项。文章讲述了存储类型、指针类型、重入函数、根据目标系统RAM的分布的段定位和仿真栈设置、函数指针、NULL指针问题、字...
-
用惯了IAR觉着它真的灰常强大(虽然UI界面有点简单,没有Keil和Eclipse做的那么炫),随着使用的时间越来越长,不断有新的技巧和功能被发掘,第一是不断给俺带来惊喜,第二是成...
-
笔记:
(1)如何禁止KEIL初始化RAM为零?
1. 在KEIL Noinit 打钩
2.
<1> 另须对需要热启动保持的变量用__at...
-
由于程序都是从网上下载下来的,很多都是在ADS下编译的,而使用MDK并不能直接编译通过,先把我遇到的一些问题汇总一下,主要是汇编程序编译出现的问题。
warning:...
-
putchar.c里面,是先检测TI再发送。
这样做的目的是把尽可能多的时间留给2次串口操作之间的程序,而不是把等待字节发送的时间白白空等待浪费掉。
...
-
定位变量到指定的位置
使用定义在头文件 absacc.h中的 __at宏,可以将变量以如下方式定位到绝对地址处:
C 例子:
#include <absacc.h>...
-
Keil MDK自带了一个FCARM工具,用于将一个web服务器所需的网页文件(html、图片等)转成一个数据包,这样可以省去文件系统。也可以用于在代码里嵌入一些二进制文件,如图片...
-
二月份的最后一天,忙活了一个月(这个月真是我工作以来最累的一个月,累虚了,呵呵),最后倒出点硬货,这样才能对得起广大博友嘛,哈哈。
直接进入正题。飞思卡尔自从推出AR...
-
1. GNUgcc交叉编译器
运行于Linux操作系统下的自由软件GNUgcc编译器,不仅可以编译Linux操作系统下运行的应用程序、编译Linux本身,还可以作...
-
周五查看一段代码,
发现里边有一个计算式写作:
p = 1 << (num % 8 -1);//修正见注2。
这里边num,p都是无符号字符型,
...
-
这两天重新安装了系统,先安装了VB6,再安装了VS2008、VS2010、VS2013、VS2015 Preview。偶然发现打开VB工程的时候每次都会出现一个VS正在配置的对话框...
-
写代码是从模仿开始的,提高也是从观摩别人的优秀设计和代码开始的。所以阅读源代码至关重要,接下来赞从下列方面聊聊阅读源码的事情。
·目的
...
-
一般情况下,源程序中所有的行都参加编译。但是有时希望对其中一部分内容只在满足一定条件才进行编译,也就是对一部分内容指定编译的条件,这就是“条...
-
在C/C++中经常需要进行存储器的操作,关于数据如何在存储器中存储的问题也是非常重要的,如何在保证数据量(信息量)的同时又保证数据的存储量最小,乍一听感觉没什么好讨论的。但是作为学...
-
堆栈是计算机程序中非常重要的一部分,主要用来参数的调用,局部变量的存储等,在C语言中的函数调用过程中通过不同函数的堆栈空间可以非常方便的找到传递进来的参数以及退出时应该返回的地址。...
-
最近的一系列的公司笔试,也来不及总结一下,虽然都是一些小公司但是还是有很多值得总结的内容。很多的内容都是自己没有认真看书导致的,主要的问题就是格式控制、转义字符串等问题,说实在的都...