一直理解STM8S定時器有點問題,所以在做定時器時候,出現(xiàn)了好奇怪的問題.比如,今次在理解預裝載值時候出現(xiàn)問題,導致動態(tài)調(diào)整預裝載值均無法得到自己預期的效果.
我們可以看參考手冊定時器這塊的描述,或者上網(wǎng)找一些文章.在此,推薦一下微雪針對這塊寫的文章,大家看完應該有所了解.
微雪電子-STM8 時基單元
而我碰到的問題,主要理解的兩句話就可以解決我的疑惑.
向上計數(shù)模式
在向上計數(shù)模式中,計數(shù)器從0計數(shù)到用戶定義的比較值(TIMx_ARR寄存器的值),然后重新從0開始計數(shù)并產(chǎn)生一個計數(shù)器溢出事件,同時,如果TIM1_CR1寄存器的UDIS位是0,將會產(chǎn)生一個更新事件(UEV)。
從 0—>TIMx_ARR寄存器的值 產(chǎn)生溢出事件
向下計數(shù)模式
在向下模式中,計數(shù)器從自動裝載的值(TIMx_ARR寄存器的值)開始向下計數(shù)到0,然后再從自動裝載的值重新開始計數(shù),并產(chǎn)生一個計數(shù)器向下溢出事件。如果TIM1_CR1寄存器的UDIS位被清除,還會產(chǎn)生一個更新事件(UEV)。
從 TIMx_ARR寄存器的值—>0 產(chǎn)生溢出事件