OpenEdv-开源电子网

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

关于407定时器9双通道捕获问题?

[复制链接]

17

主题

50

帖子

0

精华

初级会员

Rank: 2

积分
167
金钱
167
注册时间
2020-7-16
在线时间
34 小时
发表于 2021-7-5 18:10:11 | 显示全部楼层 |阅读模式
10金钱
我现在怀疑的是定时器9支持两路捕获吗?
捕获中断当中,仿真两个if语句都可以进,硬件是只给通道1输入脉冲,这个情况查看说明书只有在PWM输入模式的时候才会发生


两个 ICx 信号被映射至同一个 TIx 输入,但是查看总体的框图没有特别说明定时器9不支持两路同时捕获,目前就是这样的问题:tim9支持两路捕获吗? 如果支持那如何配置呢?
对了在把配置贴上来好像没什么东西

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165377
金钱
165377
注册时间
2010-12-1
在线时间
2111 小时
发表于 2021-7-6 00:33:31 | 显示全部楼层
你先测试单个捕获是否都可以?如果可以的话,两路捕获也是没问题 的。一般来说有TIMx_CHy之类的,就说明是支持输出PWM和输入捕获的
回复

使用道具 举报

17

主题

50

帖子

0

精华

初级会员

Rank: 2

积分
167
金钱
167
注册时间
2020-7-16
在线时间
34 小时
 楼主| 发表于 2021-7-6 17:04:05 | 显示全部楼层
不知道怎么上传图片!
                 if(htim->Channel == HAL_TIM_ACTIVE_CHANNEL_1)
                 {
                         __HAL_TIM_CLEAR_IT(htim, TIM_IT_CC1);
                         CH1TEMP = CH1TEMP+1;
                 }
                 if(htim->Channel == HAL_TIM_ACTIVE_CHANNEL_2)
                 {
                         HAL_TIM_ReadCapturedValue(htim,TIM_CHANNEL_2);
                         CH2TEMP = CH2TEMP+1;
                 }
这种方式可以进分别进行两个通道的捕获!
但是注意!具体原因没有分析!以下方式通过调试就是:1.捕获的频率为两路频率之和, 2.不管哪一路都可以触发另一路的中断
//                 if (__HAL_TIM_GET_FLAG(htim, TIM_FLAG_CC1) != RESET)
//                 {
//                        if(__HAL_TIM_GET_IT_SOURCE(htim,TIM_IT_CC1) != RESET)
//                        {                       
//                                __HAL_TIM_CLEAR_IT(htim, TIM_IT_CC1);                       
//                                CH1TEMP = CH1TEMP+1;
//                        }
//                }
//                if (__HAL_TIM_GET_FLAG(htim, TIM_FLAG_CC2) != RESET)
//                {
//                        if(__HAL_TIM_GET_IT_SOURCE(htim,TIM_IT_CC2) != RESET)
//                        {                       
//                                __HAL_TIM_CLEAR_IT(htim, TIM_IT_CC2);
//                                CH2TEMP =  CH2TEMP+1;
//                        }
//                }
具体原因不想分析了。。。。。搞的很打击自信心!
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165377
金钱
165377
注册时间
2010-12-1
在线时间
2111 小时
发表于 2021-7-7 02:20:21 | 显示全部楼层
wangzhijiang 发表于 2021-7-6 17:04
不知道怎么上传图片!
                 if(htim->Channel == HAL_TIM_ACTIVE_CHANNEL_1)
                 {

可以实现功能就行了
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-2-27 11:13

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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