最近看STM8S_RM_CHV4.PDF 中TIM1 (page110)..有以下问题非常纠结,活了20多年,第一次感觉中文理解能力不行 。
首先 自动装载寄存器(TIM1_ARR)=预装载寄存器+影子寄存器组成。
当发生一个更新事件时,所有的寄存器都被更新,硬件同时(依据URS位)设置更新标志位(TIMx_SR寄 存器的UIF位):
自动装载影子寄存器被重新置入预装载寄存器的值(TIMx_ARR)。
预分频器的缓存器被置入预装载寄存器的值(TIMx_PSC寄存器的内容)。????????
预装载寄存器到底是个什么东西,我的理解是当更新事件发生:预装载寄存器给了影子寄存器;预装载寄存器的值(TIMx_PSC寄存器的内容) 写入预分频器。但是预装载寄存器和TIMX_PSC有关系吗?它不是属于自动装载寄存器的吗?它怎么可以在产生更新事件后直接操作两次啊?
还有下文:
预分频器的值由预装载寄存器写入,保存了当前使用值的影子寄存器在低位(LS)写入时被载入。
需两次单独的写操作来写16位寄存器,高位(MS)先写。不要使用先写低位(LS)的LDW指令。
新的预分频器的值在下一次更新事件到来时被采用。
我想问的是:在产生更新事件后,预装载寄存器到底是怎么去操作的?望大师指教! |