关于hex文件的产生方法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1. 关于hex文件的产生方法:
在STVD下如何产生HEX文件,在STVD的Project -> Setting -> Post-Build Commands 栏内添加: chex -fi -o $(OutputPath)$(T argetSName).hex $(OutputPath)$(TargetSName).sm8
2. 将memory models选择mods或modsl应用注意:
使用的是STVD自动生成的stm8_interrupt_vector.c文件时,在使用modsl模式编译时,必须将
extern void _stext(); /* startup routine */ 这句改为
extern @near void _stext(); /* startup routine */ 需要增加@near 关键字。
程序大于32k后,要把const数据,main还有中断函数等定位到32k(地址64k)以内,不然程序会跑飞,而且编译链接的时候也不会报错。
3. 仿真调试
利用STM8小板上的3个LED灯,了解仿真环境。
利用建好的环境,修改main.c文件,修改后的如下
#i nclude "STM8S207R.h"
void main(void){
_asm("sim");
PD_DDR |= 0x0D;
PD_CR1 |= 0x0D;
PD_CR2 = 0x00;
_asm("nop");
PD_ODR |=0x01;
_asm("nop");
PD_ODR |=0x04;
_asm("nop");
PD_ODR |=0x08;
_asm("nop");
PD_ODR &=~0x0D;
_asm("nop");
_asm("rim");
while(1);
}
把 STM8S207R.h 文件放在建好的工程目录下,与main.c文件在用一个目录下。
STM8S207R.h文件下载STM8S207R.rar
在连机调试前,先设置下Debug instrument的Target Setting s…,实验板配套的是STLINK,所以就选ST LINK就可以了。
在点击DEBUG按钮前,先确认一下STLINK与STM8小板连接无误,STLINK与电脑已经连接,STM8小板已经连接了的外部电源,接通电源,板上的D4电源指示灯应该亮起,然后点击DEBUG按钮,进入仿真调试界面。
进入以后点 RESTART 按钮,就可以开始调试了。
按F10,单步执行,就可以看到led灯,依次被点亮,最好熄灭。