OpenEdv-开源电子网

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

请问这句话是什么意思?

[复制链接]

106

主题

418

帖子

0

精华

高级会员

Rank: 4

积分
764
金钱
764
注册时间
2016-7-26
在线时间
123 小时
发表于 2016-9-14 21:29:25 | 显示全部楼层 |阅读模式
10金钱
`T3T]A(ZGN9K@_D[Z%@~~{5.png
画线处是为什么?

最佳答案

查看完整内容[请看2#楼]

这个寄存器有两个实体, 真正参与运行的是背后的影子寄存器。 关掉这一位,前面寄存器的值就不能送到影子里面。 大概如此吧。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

58

主题

6294

帖子

1

精华

资深版主

Rank: 8Rank: 8

积分
11537
金钱
11537
注册时间
2014-4-1
在线时间
1314 小时
发表于 2016-9-14 21:29:26 | 显示全部楼层

这个寄存器有两个实体,
真正参与运行的是背后的影子寄存器。
关掉这一位,前面寄存器的值就不能送到影子里面。

大概如此吧。


回复

使用道具 举报

6

主题

305

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
2876
金钱
2876
注册时间
2016-7-17
在线时间
404 小时
发表于 2016-9-14 21:56:58 | 显示全部楼层
有些寄存器是带有缓冲的,也就是一个寄存器名下有两个寄存器,比如几个为A,B。你读写的是A,实际参与TIM工作的是B。你把数据写入A,A的数据何时写入B是由控制寄存器的控制位决定的,如划线部分,可以在你写入A后立即复制入B,也可以在发生更新事件(如溢出)时写入,也就是说先干完本轮的比较后再按新的值工作。
这样做的目的是防止本轮比较更新事件丢失。如ARR=100,CCR=80,CNT达到了75,新的CCR为70,你写入了70,如果直接写入CCR,由于CNT已经达到75,可能会丢失本次更新事件。
回复

使用道具 举报

106

主题

418

帖子

0

精华

高级会员

Rank: 4

积分
764
金钱
764
注册时间
2016-7-26
在线时间
123 小时
 楼主| 发表于 2016-9-14 22:15:32 | 显示全部楼层
本帖最后由 慕名兰 于 2016-9-14 22:19 编辑
f1174562 发表于 2016-9-14 21:56
有些寄存器是带有缓冲的,也就是一个寄存器名下有两个寄存器,比如几个为A,B。你读写的是A,实际参与TIM工 ...

它的意思是:“屏蔽”更新事件就可以“避免预装载寄存器更新影子寄存器”,而影子寄存器恰好有一种方法被更新(更新事件产生后影子寄存器被更新,即APRE=1)。它想表达的是:当APRE=1时,UDIS的好处就像你所的那样可以防止本轮的更新事件被丢失(事件没到来影子寄存器不会被更新就避免被更新)?????可以这样理解吗?
回复

使用道具 举报

6

主题

305

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
2876
金钱
2876
注册时间
2016-7-17
在线时间
404 小时
发表于 2016-9-14 22:53:37 | 显示全部楼层
慕名兰 发表于 2016-9-14 22:15
它的意思是:“屏蔽”更新事件就可以“避免预装载寄存器更新影子寄存器”,而影子寄存器恰好有一种方法被 ...

对,UDIS=1是只循环计数而不产生更新事件,影子寄存器(ARR、CCR、PSC)不会被更新。另外ARPE位只管ARR。
回复

使用道具 举报

106

主题

418

帖子

0

精华

高级会员

Rank: 4

积分
764
金钱
764
注册时间
2016-7-26
在线时间
123 小时
 楼主| 发表于 2016-9-14 23:08:05 | 显示全部楼层
f1174562 发表于 2016-9-14 22:53
对,UDIS=1是只循环计数而不产生更新事件,影子寄存器(ARR、CCR、PSC)不会被更新。另外ARPE位只管ARR。

算是明白了,谢谢啦
回复

使用道具 举报

106

主题

418

帖子

0

精华

高级会员

Rank: 4

积分
764
金钱
764
注册时间
2016-7-26
在线时间
123 小时
 楼主| 发表于 2016-9-14 23:10:30 | 显示全部楼层
f1174562 发表于 2016-9-14 22:53
对,UDIS=1是只循环计数而不产生更新事件,影子寄存器(ARR、CCR、PSC)不会被更新。另外ARPE位只管ARR。

能否请允许我再问一个:

6G1`%%YWMR@H}WL`Y4KB.png

I{Y9%UJ$@INX7)ZT)REJ.png

第一个图说更新事件产生中断,而这个事件(“更新事件”)包含计数器的上溢和下溢

第二个图又说计数器的上溢和下溢可以产生 “更新事件”。


这到底是什么关系(更新事件与计数器的溢出)?

回复

使用道具 举报

6

主题

305

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
2876
金钱
2876
注册时间
2016-7-17
在线时间
404 小时
发表于 2016-9-14 23:18:30 | 显示全部楼层
一个意思,溢出包括上溢出和下溢出,对应向上或向下计数,首先说它们都是事件,而这些事件会导致计数器重新开始,这就是更新,如果设置了中断或DMA,还可以产生中断或DMA。
回复

使用道具 举报

106

主题

418

帖子

0

精华

高级会员

Rank: 4

积分
764
金钱
764
注册时间
2016-7-26
在线时间
123 小时
 楼主| 发表于 2016-9-15 15:52:34 | 显示全部楼层
f1174562 发表于 2016-9-14 23:18
一个意思,溢出包括上溢出和下溢出,对应向上或向下计数,首先说它们都是事件,而这些事件会导致计数器重新 ...

这下子全懂了,谢谢!!!
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-5-25 15:36

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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