1
完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电路板:Nucleo-144
芯片:STM32L4R5ZIT6P 大家好! 从 SRAM 执行代码时,我遇到了一个奇怪的问题。 我的固件位于闪存中,偶尔会跳转到 SRAM 中的外部加载二进制文件。由于这个二进制文件的周期计数非常重要,我使用 DWT 读取周期,在逐步执行代码时我意识到,当我在 SRAM 中执行代码时,一条简单指令(如 nop、add、it加载/存储操作需要更多周期)而不是 1,正如您所期望的那样。我发现这种行为很奇怪,我无法真正解释为什么在 SRAM 中执行需要更长的时间。 更多细节: 我在 SRAM1 中创建了一个部分(从 0x20000000 到 0x20030000)来保存动态二进制文件。这应该没问题,因为 SRAM1 连接到 I-Bus 和 D-Bus,唯一敲响警钟的是参考手册(rm0432,修订版 9)在第 107 页指出,物理重映射应该是启用以获得最佳性能。 我不想这样做,所以我将该部分移动到 SRAM2,在那里(根据参考手册,同一页)可以以最大性能执行。但是,这并没有解决我的问题。 此外,我认为这可能与我的时钟配置有关,但我在那里找不到任何问题。MCU 使用由 CubeMX 配置的 MSI 振荡器以 1 MHz 的频率运行。 关于尝试什么以及导致这种不一致的原因,我已经没有想法了。闪存中的循环行为是您所期望的。 有人知道什么可能导致这种循环行为吗? |
|
相关推荐
1个回答
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
请教:在使用UDE STK时,单片机使用SPC560D30L1,在配置文件怎么设置或选择?里面只有SPC560D40的选项
2725 浏览 1 评论
3237 浏览 1 评论
请问是否有通过UART连接的两个微处理器之间实现双向值交换的方法?
1807 浏览 1 评论
3646 浏览 6 评论
6034 浏览 21 评论
1336浏览 4评论
197浏览 3评论
对H747I-DISCO写程序时将CN2的st-link复用为usart1,再次烧录时无法检测到stlink怎么解决?
350浏览 2评论
STM32G474RE芯片只是串口发个数据就发烫严重是怎么回事?
442浏览 2评论
STM32处理增量式编码器Z信号如何判断中断是正转的还是反向转的?
271浏览 2评论
小黑屋| 手机版| Archiver| 德赢Vwin官网 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-22 15:15 , Processed in 1.229976 second(s), Total 78, Slave 62 queries .
Powered by 德赢Vwin官网 网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
德赢Vwin官网 观察
版权所有 © 湖南华秋数字科技有限公司
德赢Vwin官网 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号