STM8调试笔记
Posted 快乐的老鼠
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了STM8调试笔记相关的知识,希望对你有一定的参考价值。
调试STM8S003F3P6
http://www.waveshare.net/article/STM8-3-1-10.htm
1. 我在里面定义一个数组,大约300B,内存是1KB,为什么提示异常啊?
#error clnkDebug\\demo.lkf:1 segment .ubsct size overflow (41)
The command: "clnk -l"C:\\ProgramFiles\\COSMIC\\CXSTM8_32K\\Lib" -l"C:\\ProgramFiles\\COSMIC\\CXSTM8_32K\\Lib" -oDebug\\demo.sm8 -mDebug\\demo.map Debug\\demo.lkf " has failed, the returnedvalue is: 1
exit code=1.
解决方法:
设置成LongStack,重新编译即可.
2. 还没写几行代码就提示falsh空间不够了!
#error clnk Debug\\demo.lkf:1segment .text size overflow (433)
解决方法:
勾上Split Function in …
再重新编译下即可.
3. 每次编译时候都提示这个,怎么关掉?
解决方法:选中Automatic Files
5. 从STM8s103芯片换到105芯片上,定时器中断进不去了?
终于解决了,是在stm8s.h这个头文件上没有更改芯片型号,所以在编译的时候虽然通过了,但内部地址乱了,导致这种结果发生
6. STM8s105没有UATRT1,只有UART2
7. 编辑时候旁边出现粉红色的底纹
在这分界处中文会被变成乱码,解决方法:
改成80会好点.
8. 编译时候出现如下错误
解决方法是:
今天遇到类似的问题,最后发现是comsic的C编译器规定,枚举类型成员最后一个不要加逗号“,”,否则认为成员丢失。
9. 编译时候发现atof编译报错
解决方法:勾上Float即可
如何生成hex文件?
1.工程设置中,Post-Build选项卡中,有如下设置
chex -o$(OutputPath)$(TargetSName).s19 $(OutputPath)$(TargetSName).sm8
这是生成*.s19文件的。
2.如欲生成HEX文件,设置如下:
chex -fi -o $(OutputPath)$(TargetSName).hex $(OutputPath)$(TargetSName).sm8
10. 烧写代码的时候提示校验错误
出现这样的问题原因是程序一下载进去就开始执行了,如果你的代码里有初始化eeprom的操作,就会弹出上述的对话框,解决办法是加个开机延时,建议100ms.
以上是关于STM8调试笔记的主要内容,如果未能解决你的问题,请参考以下文章