打印
[CW32F030系列]

CW32操作 FLASH地址对齐要求

[复制链接]
354|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
forgot|  楼主 | 2024-1-3 08:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
地址边界对齐,即使用 16bit 位宽访问 FLASH 时的地址必须是偶地址,使用 32bit 位宽时的地址必须是 4 的倍数地址。

正确地址对齐的代码示例:
8bit 读取:
tempdata = *( ( uint8_t * ) 0x0000 0001 ) ;
16bit 读取:
tempdata = *( ( uint16_t * ) 0x0000 0002 ) ;
32bit 读取:
tempdata = *( ( uint32_t * ) 0x0000 0004 ) ;

错误地址对齐的代码示例:
16bit 读取:
tempdata = *( ( uint16_t * ) 0x0000 0001 ) ;
32bit 读取:
tempdata = *( ( uint32_t * ) 0x0000 0003 ) ;

使用特权

评论回复
沙发
cr315| | 2024-1-3 10:27 | 只看该作者
在实际应用中,需要根据所使用的FLASH芯片的数据手册来确定具体的地址对齐要求,以确保正确的读写操作和最佳的性能

使用特权

评论回复
板凳
中国龙芯CDX| | 2024-1-9 14:58 | 只看该作者
地址对齐其实更方便读写操作

使用特权

评论回复
地板
jf101| | 2024-2-25 18:02 | 只看该作者
地址边界对齐,即使用 16bit 位宽访问 FLASH 时的地址必须是偶地址,使用 32bit 位宽时的地址必须是 4 的倍数地址。

使用特权

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

本版积分规则

1721

主题

12973

帖子

54

粉丝