当前位置:首页 > > strongerHuang
[导读]关注、星标公众号,不错过精彩内容 作者:strongerHuang 微信公众号:嵌入式专栏 1写在前面 很多初学者习惯使用软件仿真,应该是很多人都知道的一款仿真软件。 以前开发板相对较贵,且快递不方便,使用仿真软件可以理解。现在便宜的STM32开发板就十几块,还用

关注、星标公众,不错过精彩内容

作者:strongerHuang

微信公众号:嵌入式专栏

1写在前面

很多初学者习惯使用软件仿真,应该是很多人都知道的一款仿真软件。


以前开发板相对较贵,且快递不方便,使用仿真软件可以理解。现在便宜的STM32开发板就十几块,还用仿真软件,我不是很理解。


有经验的人都知道,仿真和实际运行情况很多时候都不一样,相信不用我说,大家都明白。


因此,我个人不是很推荐大家仿真,本文内容可能存在纰漏,仅限个人学习。


下面讲述基于Keil MDK-ARM 和 IAR EWARM进行仿真打印的配置。



2Keil仿真打印配置

Keil MDK-ARM不能仿真,原因出在仿真参数出现了问题:


修改这两处参数为:DARMSTM.DLL   -pSTM32F103ZE


基于前面使用STM32CubeMX生成工程,修改此处仿真相关配置即可。


下面提供的工程,直接编译,再点击调试按钮,打开UART 1#,全速运行,就能看到printf打印效果:



3IAR仿真打印配置

IAR下的仿真打印,我没有研究透彻,只是经过测试验证,可以运行。


这里仿真打印,我使用SWO方式:


重定义代码为:

int fputc(int ch, FILE *f){  ITM_SendChar(ch);  return ch;}


IAR仿真效果:


当然,有些配置我没有研究明白,比如滴答中断计数,为什么仿真没有正常执行。所以,我自定义延时函数。



4下载

为方便大家理解,提供源码工程下载,包含Keil和IAR实例代码:

STM32F103(HAL)_仿真


百度网盘:

https://pan.baidu.com/s/1aYBuHtOgtLqLvj6SsMYlQA


提取码:nbd3


提示:

1.公众号不支持外部链接,请复制链到浏览器打开。

2.链接失效,请关注公众号,回复『printf系列教程』获取最新链接。

3.源码仅供学习参考,实际项目请按需修改。


推荐阅读:

几个类似 VS Code的开源编辑器工具

CMSIS RTOS API,内核通用API接口

Linux 内核的 100% 自由版本 GNU Linux-libre 5.8 发布


关注 微信公众号『strongerHuang』,后台回复“1024”查看更多内容,回复“加群”按规则加入技术交流群。


长按前往图中包含的公众号关注

免责声明:本文内容由21ic获得授权后发布,版权归原作者所有,本平台仅提供信息存储服务。文章仅代表作者个人观点,不代表本平台立场,如有问题,请联系我们,谢谢!

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读
关闭