你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。
chrome
firefox
safari
ie8及以上
ST
意法半导体官网
STM32
中文官网
ST
全球论坛
登录/注册
首页
技术问答
话题
资源
创客秀
视频
标签
积分商城
每日签到
STM32的位带区和位带别名区的地址换算不明白,求教!
[复制链接]
lure
提问时间:2018-8-9 22:15 /
我看了它的位带说明,自己理解的
总的思想是:
位带区
nbit
位的位带别名区地址
=
位带别名区基地址(起始地址)
+
(位带偏移地址
*8+n
)
*4
0<=n<=7 但是n是有限制还是无限制?若n ==8 ,岂不和下一个冲突了?这个没看懂,求教!
位带区
位带区bit位n
位带别名区
0x40000000
0
0x42000000
0x40000000
1
0x42000004
0x40000000
2
0x42000008
0x40000000
3
0x4200000C
0x40000000
4
0x42000010
0x40000000
5
0x42000014
0x40000000
6
0x42000018
0x40000000
7
0x4200001C
0x40000000
8
0x42000020
……
……
……
0x40000001
0
0x42000020
0x40000001
1
0x42000024
0x40000001
2
0x42000028
0x40000001
3
0x4200002C
……
……
……
点评
zero99
付费主题?改了吧
发表于 2018-8-10 09:39
toofree
求助贴用“付费主题”,是要被管管打pp的
发表于 2018-8-10 00:19
赞
0
收藏
0
评论
4
分享
发布时间:2018-8-9 22:15
举报
请先
登录
后回复
4个回答
feixiang20
回答时间:2018-8-9 23:05:50
a0a.1 32b0c
限制在范围内的。
记得MCS51吗? MCS51就是有位操作,以一位(BIT)为数据对象的操作,MCS51可以简单的将P1口的第2位独立操作:P1.2=0
1.2=1;这样就把P1口的第三个脚(BIT2)置0置1。而现在STM32的位段、位带别名区就为了实现这样的功能。 它的对象可以是SRAM、I/O和外设空间。要实现对这些地方的某一位的操作。它是这样做的:在寻址空间(32位对应的地址空间为 4GB)的另一地方,取个别名区空间,从这个地址开始处,每一个字(32BIT)对应SRAM或I/O的一位。 这样,1MB SRAM就可以有 32MB 的对应别名区空间,就是1位膨胀到32位(1 BIT变为1个字节)。我们对这个别名区空间内的某一字操作(置0或置1),就等于它映射的 SRAM 或 I/O相应的某地址的某一位的操作。
评分
参与人数
1
蝴蝶豆
+3
收起
理由
zero99
+ 3
查看全部评分
赞
0
评论
回复
支持
反对
七哥
回答时间:2018-8-10 00:13:37
a0a.1 32b0c
本帖最后由 toofree 于 2018-8-10 00:18 编辑
位段中byte_offset是字节偏移地址,即以字节为单位递增。
byte_offset×32,即是表示用32个地址去表示一个字节内的8位。
bit_number×4,是说,每一个位,都由一个32位的数来表示,即占4个字节。
一个位用位段表示要占4个字节,自然8个位,就要占32个字节。
评分
参与人数
1
蝴蝶豆
+3
收起
理由
zero99
+ 3
查看全部评分
赞
0
评论
回复
支持
反对
所属标签
相似问题
关于
意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号
手机版
快速回复
返回顶部
返回列表
记得MCS51吗? MCS51就是有位操作,以一位(BIT)为数据对象的操作,MCS51可以简单的将P1口的第2位独立操作:P1.2=0
评分
查看全部评分
位段中byte_offset是字节偏移地址,即以字节为单位递增。
byte_offset×32,即是表示用32个地址去表示一个字节内的8位。
bit_number×4,是说,每一个位,都由一个32位的数来表示,即占4个字节。
一个位用位段表示要占4个字节,自然8个位,就要占32个字节。
评分
查看全部评分