自己可以做网站空间吗,网站的策划建设方案书,网站系统开发怎么做,ppt哪个网站质量高IAREWARM中段后缀含义 后缀 段类型 含义 AC CONST 绝对地址定位常数 AN DATA 用关键字__no_init声明的绝对地址定位数据 C CONST 常数 I DATA 初始化值为非0的数据 ID CONST 上述数据的初始式 N DATA 未初始化的数据 Z DATA 初始化值为0的数据 ROM用于…IAREWARM中段后缀含义 后缀 段类型 含义 AC CONST 绝对地址定位常数 AN DATA 用关键字__no_init声明的绝对地址定位数据 C CONST 常数 I DATA 初始化值为非0的数据 ID CONST 上述数据的初始式 N DATA 未初始化的数据 Z DATA 初始化值为0的数据 ROM用于保存CONST和CODE段而RAM用于保存DATAS段。
CODE段类型ROM 中的执行代码
CONST段类型ROM中的数据
DATA段类型RAM 中的数据 常用的段说明 段名 功 能说 明 段类型 属性 INTVEC 保存Reset 和异常向量含跳转到cstartup 或中断服务程序的指令。必须在0x00-0x3F 地址范围内 CODE 只读 ICODE 保存启动代码位于能被INTVEC 中的转移指令达到的前32MB 字节内。 CODE 只读 DIFUNCT 包含指向C建构模块的指针。该模块在调用main 之前由cstartup 执行。 CODE 只读 SWITAB 保存软件中断向量表 CODE 只读 CODE 保存程序代码可以在ROM 中执行。 CODE 只读 CODE_ID 永久性保存声明为_ramfunc 的程序代码。这些代码初始化时从CODE_ID拷贝到CODE_I 中RAM然后在RAM 中执行。 CONST 只读 INITTAB 保存需要在启动时初始化的段地址和段长度表格。 CONST 只读 DATA_ID 保存DATA_I 段中变量的初值这些值在系统初始化时由cstartup 从DATA_ID 拷贝到DATA_I。 CONST 只读 DATA_C 保存常数数据包括文字字符串 CONST 只读 CHECKSUM 保存段的校验和 CONST 只读 CODE_I 上电后保存声明为_ramfunc的程序代码掉电后丢失。初始化时从CODE_IDROM拷贝到CODE_I中然后在RAM中执行。 DATA 读/写 DATA_I 保存声明为非零初值的静态全局变量其初值开始在DATA_ID中系统初始化时由cstartup从DATA_ID 拷贝到DATA_I。 DATA 读/写 DATA_Z 保存声明初值为零或没有声明初值的静态全局变量 DATA 读/写 DATA_N 保存非易失存储器中用_no_init 关键字声明的静态全局变量 DATA 读/写 CSTACK C/C内部数据堆栈用户模式 DATA 读/写 SVC_STACK 操作系统堆栈管理模式用于具有特权的操作系统任务 DATA 读/写 ABT_STACK 数据访问中止模式堆栈用于虚拟存储器及存储器保护 DATA 读/写 UND_STACK 未定义指令中止模式堆栈支持硬件协处理器软件仿真 DATA 读/写 FIQ_STACK 快中断模式堆栈用于高速数据传输或通道处理 DATA 读/写 IRQ_STACK 中断模式堆栈用于通用中断处理 DATA 读/写 HEAP 堆Heap是C\C中为malloc 和 free 或new 和delete 保留的动态分配存储空间。 DATA 读/写 IAR EWARM中段定位参数 参数 含义 c CPU类型 D 定义文件后面要使用的参数例如说明始末地址或段大小 Z 以连续方式定位段 P 以压缩方式定位段 Q 自动完成段初始化复制 -D
-Dsymbolvalue
作用
使用-D选项可以定义一些纯粹的符号一般用于声明常数。
参数
symbol是未在其它地方定义过的外部符号value是symbol所代表的值。例如
-D_BANK_LEN0x800
-D_BANK_START0x1800
-D_BANK_STEP0x10000
-D_BANK_NUM0x40
就定义了2个标识了ROM起始和结束地址的符号这样以后关于ROM地址的配置都可以直接使用这2个符号使得配置文件的可读性增强。
在//前面必需有空格
/*前面可有可无空格
前后都不能有空格在
_BANK_STEP紧挨着-D -Z
-Z[][(SPLIT-)type]segments[|#]range[, range]…
作用
使用-Z命令的目的是规定segments在存储空间中占据的位置和区间。如果链接器发现某个segment没有使用-Z-b或者-P中的任何一个命令进行定义则会报错。
参数 使用参数表示为segments分配空间时不考虑任何已经被使用的地址空间。这适用于当某些segments的地址空间需要发生重叠的情形。【可选】
type 参数type规定了segments的存储类型默认为UNTYPED。表1列举了IAR的ARM C/C编译器所支持的segments类型。【可选】 segments参数segments列出了参与链接的一个或多个segment中间可用逗号分隔。这些segments在存储空间中的顺序和被列出的先后顺序一致。在segment名后面添加‘nnnn’可以让XLINK为该segment所分配的空间增加nnnn字节。 | #规定了segments在存储空间中如何分配其中”“从指定范围的起始处开始为segments分配空间而”#“从指定范围的结尾处开始为segments分配空间。如果这两个参数都没有出现则segments会被分配在当前最后一个有确定链接地址的segment后面如果当前没有任何segment被链接则被分配在0地址。
-Z(CODE)MAKECODE_CONST0xFF0000-0xFF00FF
-Z(XDATA)ECHO_BUF0xa4400:0x2000 -P
-P(CODE)BT_ON_SEG,BT_ON_CONST,RF_SEG[_BANK_START:_BANK_LEN]*_BANK_NUM_BANK_STEP
用,分割相同的段 -Q
-Qsegmentinitializer_segment
作用
自动设置segment的拷贝初始化。链接器会产生一个新的initializer_segment如CODE_ID其内容与segment如CODE_I完全一致。相关的符号表和调试信息都会和segment相关联如CODE_I。initializer_segment的内容通常在ROM中必须在初始化阶段被复制到segment通常在RAM中。 -c
-cprocessor
作用
规定目标处理器的类型。如-carm。