IAR切BANK--程序中的使用

本文介绍了在IAR集成开发环境中如何实现数据变量和函数的定位,包括三种变量定位方法和两种函数定位方式,并详细说明了如何修改.XCL连接文件。同时提到,对于banked函数和变量,IAR Linker会自动分配代码空间,而主函数的bank位置可通过__near_func关键字调整。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、在IAR的集成开发环境中实现数据变量定位方法如下三种

1、__no_init char alpha @ 0x0200;

2、#pragma location = 0x0202

const int beta;

3、const int gamma @ 0x0204 = 3;

或:

1)__no_init int alpha @ "MYSEGMENT"; //MYSEGMENT段可在XCL中开辟

2)#pragma location="MYSEGMENT"

const int beta;

3)const int gamma @ "MYSEGMENT" = 3;

 

二、如何实现函数定位

在IAR中函数定位有两种写法

1. void g(void) @ "MYSEGMENT"   //MYSEGMENT段可在XCL中编辑开辟

{

}

 或

2、#pragma location = "MYSEGMENT"

void h(void)

{

}

三、如何更改XCL文件

注意:在实现过程中可能涉及到.XCL连接文件的更改,请保存好原来的.XCL文件!

1. 打开相应的*c.xcl文件,用"-Z(CONST)段名=程序定位的目标段-FFDF"定义段的起始地址.

2. 在自己的C程序中用#pragma constseg(段名)定位自己的程序

3. 结束后恢复编译器的默认定位#pragma default(可以不要)

例:

IAR 1.26b环境

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值