你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。
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管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
微信公众号
手机版
快速回复
返回顶部
返回列表
记得MCS51吗? MCS51就是有位操作,以一位(BIT)为数据对象的操作,MCS51可以简单的将P1口的第2位独立操作:P1.2=01.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相应的某地址的某一位的操作。
评分
查看全部评分
位段中byte_offset是字节偏移地址,即以字节为单位递增。
byte_offset×32,即是表示用32个地址去表示一个字节内的8位。
bit_number×4,是说,每一个位,都由一个32位的数来表示,即占4个字节。
一个位用位段表示要占4个字节,自然8个位,就要占32个字节。
评分
查看全部评分