OpenEdv-开源电子网

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

在电容触摸输入捕获试验中,为什么配置的是(TIM2->SR & 0X04)==0而不是(TIM2->SR & 0X02)==0

[复制链接]

4

主题

10

帖子

0

精华

新手上路

积分
46
金钱
46
注册时间
2015-3-11
在线时间
0 小时
发表于 2015-3-23 21:52:19 | 显示全部楼层 |阅读模式
5金钱
RT我在做完库函数的试验后,自己重新配置寄存器,弄了一遍,发现复位值总是19.18,感觉是通道弄错了,仔细对了一遍例程
发现区别在于(TIM2->SR & 0X04)==0而我的是(TIM2->SR & 0X02)==0
但是查参考手册TIM2->CCMR1|=1<<0;确实是配置1通道,GPIO复用也没错


参考手册描述如下:CC1IF是通道1没错啊,为什么反而是读bit2而不是bit1呢?请问我哪里理解错了?

最佳答案

查看完整内容[请看2#楼]

你是对的,这个我们代码有bug 应该是&0X02才对。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165371
金钱
165371
注册时间
2010-12-1
在线时间
2110 小时
发表于 2015-3-23 21:52:20 | 显示全部楼层
你是对的,这个我们代码有bug
应该是&0X02才对。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

4

主题

10

帖子

0

精华

新手上路

积分
46
金钱
46
注册时间
2015-3-11
在线时间
0 小时
 楼主| 发表于 2015-3-24 08:24:48 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
原子哥,例程代码中,使能配置的是通道1,但却是读的通道2是否发生了捕获,为什么也能读出1呢?
而且通道2,也是复用的某个GPIO,没用复用,没有使能时钟,那么在Reset后的Tpad_Get_val()应该是一个死循环,怎么还能返回一个TIM2—>CCR1的值呢?
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165371
金钱
165371
注册时间
2010-12-1
在线时间
2110 小时
发表于 2015-3-24 23:26:44 | 显示全部楼层
回复【3楼】_binge:
---------------------------------
事实就是可以啊。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-2-24 10:37

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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