-
本文讲述了将ANSIC程序移植到KeilC51上应该注意的事项。文章讲述了存储类型、指针类型、重入函数、根据目标系统RAM的分布的段定位和仿真栈设置、函数指针、NULL指针问题、字...
-
用惯了IAR觉着它真的灰常强大(虽然UI界面有点简单,没有Keil和Eclipse做的那么炫),随着使用的时间越来越长,不断有新的技巧和功能被发掘,第一是不断给俺带来惊喜,第二是成...
-
笔记:
(1)如何禁止KEIL初始化RAM为零?
1. 在KEIL Noinit 打钩
2.
<1> 另须对需要热启动保持的变量用__at...
-
今天将Keil MDK升级到了V4.54,使用J-link下载程序,发现MDK自带的Jlink驱动已经更新到V4.5版本,然后MDK提示有J-Link新固件,这之前也遇到过这类提示...
-
折腾了大半天,才搞明白一个空操作的指令
先在网上查有的说是__asm{"NOP"},从intrins.h里调用,可犄角旮旯全找了,也没看到什么intrint.h的文件...
-
putchar.c里面,是先检测TI再发送。
这样做的目的是把尽可能多的时间留给2次串口操作之间的程序,而不是把等待字节发送的时间白白空等待浪费掉。
...
-
引起我注意Keil c函数参数传递的是在一个偶然的机会,我在写一个函数的时候:如下write_byte(ulong addr, uchar dat){ &nb...
-
定位变量到指定的位置
使用定义在头文件 absacc.h中的 __at宏,可以将变量以如下方式定位到绝对地址处:
C 例子:
#include <absacc.h>...
-
Keil MDK自带了一个FCARM工具,用于将一个web服务器所需的网页文件(html、图片等)转成一个数据包,这样可以省去文件系统。也可以用于在代码里嵌入一些二进制文件,如图片...
-
使用CCS时,将鼠标放在函数(或变量)上时会出现函数(或变量)会自动提示函数(或变量)的声明及使用情况。
若工具提示或变量查看出现异常,例如无法查看TI给定的函数InitCpuT...
-
二月份的最后一天,忙活了一个月(这个月真是我工作以来最累的一个月,累虚了,呵呵),最后倒出点硬货,这样才能对得起广大博友嘛,哈哈。
直接进入正题。飞思卡尔自从推出AR...
-
头文件含义
avr_macros.h里面包含了读写16位寄存器的简化书写,和几个位操作函数
comp_a90.h对大量的内在函数做了简要书写
ina90.h包...
-
1. GNUgcc交叉编译器
运行于Linux操作系统下的自由软件GNUgcc编译器,不仅可以编译Linux操作系统下运行的应用程序、编译Linux本身,还可以作...
-
在C++中n%2==1什么意思?n/2什么意思?有n\2这种写法吗?
n%2==1 首先%是求余的符号,n%2就是对n求n除以2后的余数,这里余数只有两种情况就是0或者是1 ==...
-
周五查看一段代码,
发现里边有一个计算式写作:
p = 1 << (num % 8 -1);//修正见注2。
这里边num,p都是无符号字符型,
...
-
如果要在串口上打印字符串和数字的混合信息,使用printf比普通的s...
-
写代码是从模仿开始的,提高也是从观摩别人的优秀设计和代码开始的。所以阅读源代码至关重要,接下来赞从下列方面聊聊阅读源码的事情。
·目的
...
-
为了节省内存占用量,多个调用函数的参数都是指针地址,并添加了空指针判断,结果在调用PID函数后,我对输出结果进行判定是否为空,若为空则返回,代码如下:
...
-
一般情况下,源程序中所有的行都参加编译。但是有时希望对其中一部分内容只在满足一定条件才进行编译,也就是对一部分内容指定编译的条件,这就是“条...
-
在C/C++中经常需要进行存储器的操作,关于数据如何在存储器中存储的问题也是非常重要的,如何在保证数据量(信息量)的同时又保证数据的存储量最小,乍一听感觉没什么好讨论的。但是作为学...