- 博客(4)
- 收藏
- 关注
转载 Import 和Extern的区别
IMPORT语法格式: IMPORT 符号 {[WEAK]} IMPORT 伪操作告诉编译器当前的符号不是在本源文件中定义的,而是在其他源文件中定义的,在本源文件中可能引用该符号,而且不论本源文件是否实际引用该符号,该符号均会被加入到本源文件的符号表中。(与下面的EXTERN的区别之处)符号在程序中区分大小写, [WEAK] 指定这个选项后,如果符号在所有的源文件中都没有定
2014-01-15 22:24:28
1812
转载 (*(volatile unsigned long *)) 的理解
(*(volatile unsigned long *))这个语句对于不同的计算机体系结构,设备可能是端口映射,也可能是内存映射的。如果系统结构支持独立的IO地址空间,并且是端口映射,就必须使用汇编语言完成实际对设备的控制,因为C语言兵没有提供真正的“端口”的概念。如果是内存映射,那就方便多了。以 #define IOPIN (*((volatile unsigned long *
2014-01-15 21:49:32
690
转载 #define GPBCON (*(volatile unsigned *)0x56000010) 的理解
对于不同的计算机体系结构,设备可能是端口映射,也可能是内存映射的。如果系统结构支持独立的IO地址空间,并且是端口映射,就必须使用汇编语言完成实际对设备的控制,因为C语言并没有提供真正的“端口”的概念。如果是内存映射,那就方便的多了。 以#define IOPIN (*((volatile unsigned long *)0xE0028000)) 为例:作为一个宏定义
2014-01-03 19:16:47
1284
转载 ARM启动代码$HandlerLabel HANDLER $HandleLabel的理解
启动代码有如下的宏定义:MACRO $HandlerLabel HANDLER $HandleLabel ;宏定义,请仔细理解$HandlerLabel;由于ADS仅支持FD(满递减)型堆栈sub sp,sp,#4 ;将堆栈退一个字用于保存下面用到的R0stmfd sp!,{r0} ;将R0压入堆栈ldr r0,=$HandleLabel;将HandleLabel的
2013-12-23 19:43:48
523
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人