本文主要是介绍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调试笔记的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!