打印

使用ITCM导致程序异常

[复制链接]
205|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
你画我瞎|  楼主 | 2018-8-3 20:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
论坛的朋友们,我最近在使用STM32H750XBH6时遇到一个问题,想请教下。
我用的是keil的RTE里面的CMSIS-RTOSV2组件,目前使用了RTX5、USB、文件系统,我创建了一个线程App_main(),然后把包含这个函数的.c文件里的+RO放在.sct分散加载文件中,并且在链接选项中使用此文件。然后初始化了USB从机作为USB虚拟串口,并且把标准输入输出printf重定向到USB虚拟串口。现在就出现了一个问题,我如果不使用ITCM区域,App_main()所在的.c文件+RO默认是分配在flash里面,这时我在线程中printf()打印输出就跑着很正常,但是只要把App_main()所在的.c文件里的+RO放入ITCM里面,跑着跑着就进入hardfault了。
因为我的printf重定向到USB输出了(USBD_CDC_ACM_PutChar函数),我在重定向这里把USB输出注释掉(USBD_CDC_ACM_PutChar注释掉),也就是说prinft最终是没有效果的,这时也是正常的,不死机。
不知道有没有人遇到我这样的问题。

使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

395

主题

395

帖子

0

粉丝