STM8单片机C语言编程技巧Word版
传播优秀Word版文档,希望对您有帮助,可双击去除!
如何分配变量到指定的地址
举例:
unsigned char temp_A@0x00; //定义无符号变量temp_A,强制其地址为0x00 unsigned char temp_B@0x100; //定义无符号变量temp_B,强制其地址为0x100
@tiny unsigned char temp_C; //定义无符号变量temp_C,由编译器自动在地址小于0x100的RAM中为其分配一个地址
@near unsigned char temp_D; //定义无符号变量temp_D,由编译器自动在地址大于0xFF 的RAM中为其分配一个地址
另外也可以采用伪指令"pragma"将函数或者变量定义到指定的section中,例如:
#pragma section [name] // 将下面定义的未初始化变量定义到.name section中Unsigned char data1;
Unsigned int data2;
……(任何需要定义在.name section中的变量)
……
#pragma section [] // 返回到正常的section.
注意:pragma伪指令可以用来定位函数,初始化变量或者未初始化变量。这三者用不同的括号区分。
(name):代码
[name] :未初始化变量
{name}:初始化变量
如何在COSMIC C文件中使用汇编语言
在COSMIC C文件中使用汇编语言常见的方法有如下两种:使用#asm …#endasm组合格式
或_asm("…"); 单行格式。
举例1:
unsigned char temp_A;
Void func1(void)
{
...
#asm
PUSH A
LD A,(X)
LD _temp_A,A
POP A
#endasm
...
}
注:在C嵌汇编环境下使用全局变量,要在该全局变量名称前加下划线"_"。
举例2:
Void func1(void)
{
...
_asm("rim");
- 学会观察
- 学雷锋主题班会
- 滨海国际机场城市候机楼项目建议书
- 西游记读书小报读书卡电子小报好书推荐手抄报模板书香满园快乐读书语文读后感板报八开
- 玛雅 MAYA44 V3
- 龙光海悦城邦推广方案
- 注塑部技术员职责考核表
- 黔东南州非物质文化遗产名录
- 小学一年级英语绍兴县湖塘中心小学
- 在全市工程建设领域突出问题治理工作情况汇报会议上的讲话
- 住建局2018年开展优化营商环境工作情况自查汇报
- 4.2民族精神 发扬光大 课件6(政治粤教版九年级全册)
- 中考化学化学溶液的形成综合练习题含答案解析
- 优秀课件-5.4《铺地砖问题》人教新课标(2014秋)(共14张PPT)[优秀课件]
- 七年级历史复习选择题库加答案