硬汉嵌入式论坛

 找回密码
 立即注册
查看: 633|回复: 7
收起左侧

[技术讨论] STM32 能否按字节和半字访问

[复制链接]

58

主题

267

回帖

446

积分

高级会员

积分
446
发表于 2023-6-13 11:13:07 | 显示全部楼层 |阅读模式
向大佬请教个问题:

STM32 的 MCU 能否按字节(8位) 和 半字(16位)访问寄存器、内存、外设寄存器和 Flash?

可以的话有没有相关资料?


是指硬件层面是否支持上述访问,而不是对 32位 寄存器进行读-改-写操作后达成的效果。
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107101
QQ
发表于 2023-6-13 11:28:06 | 显示全部楼层
没有特别说明不支持的,都支持。
回复

使用道具 举报

58

主题

267

回帖

446

积分

高级会员

积分
446
 楼主| 发表于 2023-6-13 11:34:14 | 显示全部楼层
eric2013 发表于 2023-6-13 11:28
没有特别说明不支持的,都支持。

有对应的操作指令? 如果 C 代码里变量是 u8,那就会只操作一个字节?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107101
QQ
发表于 2023-6-13 11:39:06 | 显示全部楼层
ihavedone 发表于 2023-6-13 11:34
有对应的操作指令? 如果 C 代码里变量是 u8,那就会只操作一个字节?

可以看M内核权威指南,很多指令都有个字,半字和字节操作。
回复

使用道具 举报

58

主题

267

回帖

446

积分

高级会员

积分
446
 楼主| 发表于 2023-6-13 13:48:09 | 显示全部楼层
eric2013 发表于 2023-6-13 11:39
可以看M内核权威指南,很多指令都有个字,半字和字节操作。

多谢
回复

使用道具 举报

2

主题

269

回帖

275

积分

高级会员

积分
275
发表于 2023-6-13 23:19:00 | 显示全部楼层
关键字 对齐访问 我理解是编译器会帮你做的,只要不强制类型转换一般没问题,有大佬列举了M0 M0+ M23之类不支持非对齐访问。
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107101
QQ
发表于 2023-6-14 10:28:40 | 显示全部楼层
cctv180 发表于 2023-6-13 23:19
关键字 对齐访问 我理解是编译器会帮你做的,只要不强制类型转换一般没问题,有大佬列举了M0 M0+ M23之类不 ...

这个我整理过一次,M权威指南有个表格个的。
https://www.armbbs.cn/forum.php?mod=viewthread&tid=109400




回复

使用道具 举报

210

主题

1045

回帖

1685

积分

至尊会员

More we do, more we can do.

积分
1685
发表于 2023-6-15 22:06:19 | 显示全部楼层
Load和Store支持不同位宽,其余多数是32位的
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-18 07:02 , Processed in 0.293370 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表