关于F4的FLASH size地址与定义的疑问

[复制链接]
 楼主| aozima 发表于 2012-6-29 21:10 | 显示全部楼层 |阅读模式
本帖最后由 aozima 于 2012-6-29 21:19 编辑

在F1的Reference manual中如下描述:
29.1 Memory size registers
29.1.1 Flash size register
Base address: 0x1FFF F7E0
Read only = 0xXXXX where X is factory-programmed

Bits 15:0 F_SIZE: Flash memory size
This field value indicates the Flash memory size of the device in Kbytes.
Example: 0x0080 = 128 Kbytes.

29.2 Unique device ID register (96 bits)
Base address: 0x1FFF F7E8


而在F4的Reference manual中却是如下:
33 Device electronic signature
33.1 Unique device ID register (96 bits)
Base address: 0x1FFF 7A10

33.2 Flash size
Base address: 0x1FFF 7A10
Address offset: 0x00
Read only = 0xXXXX where X is factory-programmed

Bits 15:0 F_ID(15:0): Flash memory size
This bitfield indicates the size of the device Flash memory expressed in Kbytes.
As an example, 0x4000 corresponds to 1024 Kbytes.


问题1:flash size与UID地址一样的。
    认为flash size与UID的前16位重复,但读出来为 32 00(407VG)。

问题2:0x4000 == 1024这里应该也是有问题的。
    可能是笔误?

查看的是当前最新版Reference manual(September 2011 Doc ID 018909 Rev 1)
logokfu 发表于 2012-6-30 07:00 | 显示全部楼层
还没测试过407的,但是我感觉手册确实有问题了。
airwill 发表于 2012-6-30 16:51 | 显示全部楼层
我也早就注意到这个奇怪的地方.
是把 Flash size 和 Unique device ID register 放在了一个地址了.  是不是 Flash size 作为 Unique device ID register 的一部分了? 希望 ST 能够解释一下.
 楼主| aozima 发表于 2012-6-30 20:29 | 显示全部楼层
是不是 Flash size 作为 Unique device ID register 的一部分了? 希望 ST 能够解释一下.

我芯片上面值是32 00 与1M也对不上。
我有空再多找几个芯片看看。
 楼主| aozima 发表于 2012-7-5 15:52 | 显示全部楼层
我芯片上面值是32 00 与1M也对不上。
我有空再多找几个芯片看看。
aozima 发表于 2012-6-30 20:29

确认不是这样,顶一下。
香水城 发表于 2012-7-6 09:41 | 显示全部楼层
参考手册写错了

正确的FLASH SIZE REG地址是0x1FFF 7A22

下个版本的参考手册会更正这个问题

谢谢LZ发现
 楼主| aozima 发表于 2012-7-6 12:16 | 显示全部楼层
参考手册写错了

正确的FLASH SIZE REG地址是0x1FFF 7A22

下个版本的参考手册会更正这个问题

谢谢LZ发现
香水城 发表于 2012-7-6 09:41

多谢,确认无误
  1. finsh>>short * flash_size
  2. finsh>>flash_size = 0x1FFF7A22
  3. finsh>>*flash_size
  4.        0x0400
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:RTOS RT-Thread

55

主题

2039

帖子

23

粉丝
快速回复 在线客服 返回列表 返回顶部