完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
现在在M0518基础上,准备把PB2引脚用作TM2功能,以实现对外部输入脉冲的计数。
程序是根据例程改的,例程是默认TM0的。 但程序写好后,实测了一下,当PB2引脚外部输入脉冲后,发现TDR寄存器的值一直为0? 程序如下: void COUNTER_ini(void) { //////////////////////////////////////////////////// CLK_EnableModuleClock(TMR2_MODULE); CLK_SetModuleClock(TMR2_MODULE, CLK_CLKSEL1_TMR2_S_HCLK, 0); SYS->GPB_MFP |=SYS_GPB_MFP_PB2_TM2; SYS->ALT_MFP2 |=SYS_ALT_MFP2_PB2_TM2; /* Configure timer2 settings and for event counter application */ TIMER_Open(TIMER2, TIMER_CONTINUOUS_MODE, 1); TIMER_SET_PRESCALE_VALUE(TIMER2, 0); TIMER_SET_CMP_VALUE(TIMER2,3); TIMER_EnableEventCounter(TIMER2, TIMER_COUNTER_FALLING_EDGE); TIMER_Start(TIMER2); while(TIMER_GetCounter(TIMER2) == 0); } void COUNTER_js(void) { TMR2JSdata=TIMER_GetCounter(TIMER2); } |
|
相关推荐
1个回答
|
|
是否是你的多功能引脚配置哪里冲突了,还有PB2_PWM1BK1和PB2_T2EX需要清0的
|
|
|
|
只有小组成员才能发言,加入小组>>
632浏览 3评论
516浏览 2评论
364浏览 1评论
384浏览 1评论
349浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-26 02:15 , Processed in 0.656740 second(s), Total 79, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号