完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我有 STM32G473VCT6 单片机。根据部件号,该设备应具有 256kB 闪存(尺寸代码 C)。闪存大小寄存器 (0x1FFF75E0) 也显示 256kB(寄存器值 0x100)。但是我可以读取并成功写入 512kB 的数据。STM32CubeProgrammer 还显示了 256 页,每页 2kB。内存布局适用于 512kB 设备。
这是真正的 ST 芯片。我是从mouser买的。 据我所知,所有尺码版本的制造都是相同的,然后分为三个尺码组以优化多个价格类别的销售。 问题 1. 为什么这个额外的闪存没有锁定或对用户隐藏? 这个额外的闪光会引起一些混乱,因为数据表在这个主题上非常模棱两可。引用 STM32G473xB/C/E 数据表:“STM32G473xB/xC/xE 设备具有 512 KB 的嵌入式闪存,可用于存储程序和数据。” 这意味着所有 3 种类型都有 512kB 的闪存,但是当您查看功能表或订购信息时,它会显示 B=128kB、C=256kB 和 E=512kB。 问题 2. 我应该如何组织我的代码才能与真正的 256kB 设备兼容?我认为拥有比您支付的更多闪光灯的情况并不常见。 如果我在双库模式下工作,我应该使用每个库的一半(64 页而不是 127 页)吗?还是我应该只使用 1 家银行?还是每页一半?寻址呢?bank 1 和 bank 2 之间的地址空间是否有空洞?当我切换到单组模式时寻址会改变吗? 这些问题源于 STM32G4 参考手册 (RM0440) 中关于内存布局的歧义。文档中的所有内存布局表都对 512kB 设备有效,但对 256kB 或 128kB 设备并不总是有意义。 谢谢你 |
|
相关推荐
1个回答
|
|
你的假设是正确的。双bank模式下有gap,single bank模式下没有gap。
|
|
|
|
只有小组成员才能发言,加入小组>>
请教:在使用UDE STK时,单片机使用SPC560D30L1,在配置文件怎么设置或选择?里面只有SPC560D40的选项
2617 浏览 1 评论
3203 浏览 1 评论
请问是否有通过UART连接的两个微处理器之间实现双向值交换的方法?
1776 浏览 1 评论
3602 浏览 6 评论
5981 浏览 21 评论
931浏览 4评论
1308浏览 4评论
在Linux上安装Atollic TRUEStudio的步骤有哪些呢?
576浏览 3评论
使用DMA激活某些外设会以导致外设无法工作的方式生成代码是怎么回事
1296浏览 3评论
1350浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-19 10:49 , Processed in 2.305355 second(s), Total 76, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号