OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 13400|回复: 9

关于影子寄存器存在的作用和原因

[复制链接]

16

主题

70

帖子

0

精华

初级会员

Rank: 2

积分
154
金钱
154
注册时间
2013-9-23
在线时间
0 小时
发表于 2014-8-28 14:31:24 | 显示全部楼层 |阅读模式

      其实对于影子寄存器我不陌生,因为学习STM32很久了。每次和定时器打交道都会出现它的身影,以前觉得它不影响编程就没好好了解。可是现在觉得它的作用了,而且自己总是模模糊糊也不行就好好查看资料和研读芯片手册。我就把我关于影子寄存器的见解说说,也不知道对不对,我们一块交流啊。

      影子寄存器是我在预装载寄存器里面知道的。我认为这个影子寄存器是起到缓冲,同步的作用的。就拿这个预装载寄存器来说吧。

     影子寄存器在这里实际上才是在比较的时候起作用的,也就是为预装载寄存器做缓冲,目的是为了当预装载寄存器ARR中的值更新后,影子寄存器仍然保持原来的值(这是在ARPE=1的情况下),参与比较操作的是影子寄存器,所以这样不会影响到计数器的工作误差。它在更新事件发生之后影子寄存器的值才从ARR寄存器那里获得更新,它也有同步的作用,使所有的相关寄存器数值都同时更新。 当ARPE为0时,影子寄存器是立即更新的,不等待更新事件 的发生。

       那为什么非得弄个影子寄存器呢?大家想想啊。因为定时器里面有这样一句话:“计数器、自动装载寄存器和预分频器寄存器可以由软件读写,在计数器运行时仍可以读写”。在运行时就可以写自动装载寄存器,那么当你对自动装载寄存器进行写入新值时,如果你的没有影子寄存器,那么肯定的你的计数器在这次溢出就会不准确。而如果有了影子寄存器且ARPE=1,那就不会出现这种情况了。起到了一个缓冲作用。

     其实STM32里面的影子寄存器不止存在这个自动装载寄存器里面。还存在很多寄存器里面。比如预分频寄存器。。。就是因为这个机制的存在才使得STM32能够更安全稳定的工作。这不也给自己带来一种解决问题的机制吗。以后可以多考虑缓冲备份。


        拙见。还请互相交流啊。

我自信,我努力,我成功
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-8-28 22:56:28 | 显示全部楼层
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

12

主题

72

帖子

0

精华

高级会员

Rank: 4

积分
504
金钱
504
注册时间
2015-9-9
在线时间
59 小时
发表于 2016-5-9 01:18:34 | 显示全部楼层
吊,找了半天,自己也看不明白,谢谢楼主分享
回复 支持 反对

使用道具 举报

6

主题

29

帖子

0

精华

初级会员

Rank: 2

积分
98
金钱
98
注册时间
2016-6-9
在线时间
24 小时
发表于 2016-6-30 17:19:48 | 显示全部楼层
今天遇到一个问题好像跟影子寄存器有关,http://www.openedv.com/forum.php ... mp;page=1#pid441809,由于是新手,也不是很懂……
回复 支持 反对

使用道具 举报

kxz1962 该用户已被删除
发表于 2017-2-6 17:45:52 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

7

主题

18

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
361
金钱
361
注册时间
2017-7-8
在线时间
46 小时
发表于 2017-7-26 09:10:58 | 显示全部楼层
刚刚在找关于影子寄存器的资料,楼主的分享很是不错呀。自己再去结合手册看看或许就能懂了
回复 支持 反对

使用道具 举报

1

主题

5

帖子

0

精华

新手上路

积分
43
金钱
43
注册时间
2017-7-21
在线时间
10 小时
发表于 2017-7-26 11:56:47 | 显示全部楼层
手册上有吧,Ctrl+F可以快速定位
回复 支持 反对

使用道具 举报

5

主题

36

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
303
金钱
303
注册时间
2017-12-23
在线时间
77 小时
发表于 2018-1-30 10:52:57 | 显示全部楼层
厉害了
回复 支持 反对

使用道具 举报

1

主题

13

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
285
金钱
285
注册时间
2019-8-20
在线时间
47 小时
发表于 2019-10-16 09:50:25 | 显示全部楼层
我想了好久才想清楚,为什么还要 那个影子寄存器呢,看了你的帖子后明白了,谢谢分享!!
回复 支持 反对

使用道具 举报

1

主题

15

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
456
金钱
456
注册时间
2018-10-12
在线时间
62 小时
发表于 2020-11-18 15:20:30 | 显示全部楼层
解惑,感谢分享!
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-22 14:51

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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