欢迎来到天天文库
浏览记录
ID:44355023
大小:103.98 KB
页数:6页
时间:2019-10-21
《定时器的应用二》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、2011-8-192,预分频器描述预分频器可以将计数器的时钟频率按1〜65536之间的任意值分频,它是基于一个(TIMx_PSC寄存器中的)16位寄存器控制的16位计数器。因为这个控制寄存器带有缓冲器,所以它能够在工作时被改变。新的预分频器的参数在下一次更新事件到来时被采用。如下图所示,就是在预分频器运行时,更改计数器参数的例子。ck_psc_n_rLrLTLn_n_rLrLn_n_n_n_n_n_n_riCEN
2、*ThierdockxCK.CNT
3、"1口口口门门1口口门CounterregisterF7恆问冋冋问UpdateevetM(UEV)
4、(00LPrescalerco
5、ntrolregister0」1WrrteanewvalueinTIMxPSCPrescalerbutler01Prescalercounter0图12图示:当预分频器的参数从1变到2吋,计数器的时序图JUWUUUWWWWU11nrLmwi'1nF7)K00k01rCK.PSCCENTmerdock=CK_CNTCounterregisl^Updateevent(UEV)PrMca京controlr^gisf^r0」3zWritean^wvalueinTIMxPSCPrescalerbuffer03图13图示:当预分频器的参数从1变到4时,计数器的时序图3,计数器模式(1)向上
6、计数模式在向上计数模式中,计数器从0计数到自动加载值(TIMx_ARR计数器的内容),然后重新从0开始计数并且产生一个计数器溢出事件。每次计数器溢岀时可以产生更新事件,在TIMx.EGR寄存器中设置UG位也同样可以产生一个更新事件。设置TIMx_CRl寄存器中的UDIS位,可以禁止更新事件。在UDIS位被清0之前,将不产生更新事件。但是在应该产生更新事件时,计数器仍会被清0,同时预分频器的计数也被清0(但预分频器的数值不变)。此外,如果设置了TIMx.CRl寄存器中的URS位(选择更新请求),设置UG位将产生一个更新事件UEV,但硬件不设置UIF标志(即不产生中断或DMA请求)
7、,这是为了避免在捕获模式下清除计数器时,同时产生更新和捕获中断。当发生一个更新事件时,所有的寄存器都被更新,硬件同时(依据URS位)设置更新标志位(TIMx_SR寄存器中的UIF位)。①预分频器的缓冲区被置入预装载寄存器的值(TIMx.PSC寄存器的内容)。②自动装载影子寄存器被重新置入预装载寄存器的值(TIMxARR)o如下图所示为当TIMx_ARR=0x36时计数器在不同时钟频率下的动作。ck.pscjirLrLrLrLrLrLrLrLnrLrLrLrLrLnCNTENlTimerclocksCK_CNTiwmmnjwuuwiCounterregister訓闽丽倒丽洞虱s何
8、伍岡何厂CounteroverflownUpdateevwt(UEV)nUpdateinterrupttteg(UIF)图14向上计数模式计数器时序图,内部时钟分频因子为1CK.PSCCNT_ENTim«rclock二CKCNTCounterregisterCounteroverflowUpckiteewnt(UEV)UpdatemlerTuptflag(UIF)jiRrwuirwiRjiruwiJi—r0034(0035^0036X0000(0001X0002(0003厂nn图15计数器吋序图,内部吋钟分频因子为2ck_psc_n_n_n_n_n_n_rLn_n_rLn_rL
9、nrLn_nCNT_EN]TimerclodisCK.CNTfl口仃Counterremoter0035厂0036 000 001—CounteroverflowUpdate的册(UEV)
10、]Updateinterruptflag(UIF)图16计数器时序图,内部时钟分频因子为41,1//K如■T~1nnCKPSCTimerclock=CK_CNTCounterregisterCounteroverflowUpdateevent(UEV)fwiruirv/LnnjirmrLTLUpdateinterruptflag(UIF)图17计数器时序图,内部时钟分频因子为NCK.PS
11、CjmnjmmwwmruwiCENiTmwfclock=CK_CNTrwwwwinruwiCounterregisterCounteroverflow'nUpdate・v«nt(UEV)nUpdateinterruptflag(UIF)Autore^oadregister36Writeanewvak>einTlkU^ARR图18计数器时序图,当APPE=0时的更新事件(TIMx_ARR没有预装入)ckpscJTrLrLTLrLrLrLrLrLrLrLrLrLrLrLnCENTtnercloc
此文档下载收益归作者所有