OpenEdv-开源电子网

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

战舰实验10关于捕获

[复制链接]

15

主题

80

帖子

0

精华

初级会员

Rank: 2

积分
183
金钱
183
注册时间
2013-1-23
在线时间
10 小时
发表于 2013-1-31 09:05:13 | 显示全部楼层 |阅读模式

void TIM5_Cap_Init(u16 arr,u16 psc)
{  
 RCC->APB1ENR|=1<<3;    //TIM5 时钟使能
 RCC->APB2ENR|=1<<2;     //使能PORTA时钟 
 
 GPIOA->CRL&=0XFFFFFFF0; //PA0 清除之前设置 
 GPIOA->CRL|=0X00000008; //PA0 输入  
 GPIOA->ODR|=0<<0;  //PA0 下拉
  
  TIM5->ARR=arr;    //设定计数器自动重装值  
 TIM5->SC=psc;    //预分频器

 TIM5->CCMR1|=1<<0;  //CC1S=01  选择输入端 IC1映射到TI1上
  TIM5->CCMR1|=0<<4;   //IC1F=0000 配置输入滤波器 不滤波
  TIM5->CCMR1|=0<<10;  //IC2PS=00  配置输入分频,不分频

 TIM5->CCER|=0<<1;   //CC1P=0 上升沿捕获
 TIM5->CCER|=1<<0;   //CC1E=1  允许捕获计数器的值到捕获寄存器中

 TIM5->DIER|=1<<1;    //允许捕获中断    
 TIM5->DIER|=1<<0;    //允许更新中断 
 TIM5->CR1|=0x01;     //使能定时器2
 MY_NVIC_Init(2,0,TIM5_IRQChannel,2);//抢占2,子优先级0,组2   
}

如上是初始化代码,
1、其中用到TIM5通道一,为什么出现TIM5->CCMR1|=0<<10;  //IC2PS=00  配置输入分频,不分频 ,IC2PS配置,这个是通道2的配置啊????
2、 TIM5->CR1|=0x01;     //使能定时器2为什么使能定时器2??
请问大虾12问题

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

使用道具 举报

15

主题

80

帖子

0

精华

初级会员

Rank: 2

积分
183
金钱
183
注册时间
2013-1-23
在线时间
10 小时
 楼主| 发表于 2013-1-31 09:20:57 | 显示全部楼层
用TIM5通道一 为什么要设置通道2 ,还有就是这么是开启定时器2 不是5? 请问大侠们
回复 支持 反对

使用道具 举报

96

主题

762

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1228
金钱
1228
注册时间
2012-10-19
在线时间
15 小时
发表于 2013-1-31 09:58:23 | 显示全部楼层
回复【2楼】zhangyi3312:
---------------------------------
不都开的5嘛?什么问题?
回复 支持 反对

使用道具 举报

15

主题

80

帖子

0

精华

初级会员

Rank: 2

积分
183
金钱
183
注册时间
2013-1-23
在线时间
10 小时
 楼主| 发表于 2013-1-31 10:02:13 | 显示全部楼层
不好意思 是定时器5使能,他上面写的字是2 。但是配置输入分频时候 为什么却要设置通道2不分频,TIM5->CCMR1|=0<<10;  //IC2PS=00  配置输入分频,不分频;我想应该配置CMMR1的IC1PSC啊?????????
回复 支持 反对

使用道具 举报

15

主题

80

帖子

0

精华

初级会员

Rank: 2

积分
183
金钱
183
注册时间
2013-1-23
在线时间
10 小时
 楼主| 发表于 2013-1-31 10:04:48 | 显示全部楼层
回复【3楼】tian123chi:
回复【2楼】zhangyi3312: --------------------------------- 不都开的5嘛?什么问题?
---------------------------------
嗯  不好意思 是定时器5  但是TIM5->CCMR1|=0<<10;  //IC2PS=00  配置输入分频,不分频 
是配置通道2的啊 ,明明是用通道1啊 !
回复 支持 反对

使用道具 举报

96

主题

762

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1228
金钱
1228
注册时间
2012-10-19
在线时间
15 小时
发表于 2013-1-31 10:21:20 | 显示全部楼层
回复【5楼】zhangyi3312:
---------------------------------
TIM5->CCMR1|=0<<10;  这句话有用嘛?跟0或,有什么效果嘛
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-1-31 10:25:05 | 显示全部楼层
回复【5楼】zhangyi3312:
---------------------------------
备注有误啊,注释有些可能有问题,大胆怀疑就是了.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

15

主题

80

帖子

0

精华

初级会员

Rank: 2

积分
183
金钱
183
注册时间
2013-1-23
在线时间
10 小时
 楼主| 发表于 2013-1-31 11:25:45 | 显示全部楼层
回复【7楼】正点原子:
回复【5楼】zhangyi3312: --------------------------------- 备注有误啊,注释有些可能有问题,大胆怀疑就是了.
---------------------------------
哦 谢谢正点原子!问下钥匙我想用T5的通道3下降沿捕获,如下为什么不能用呢? “****”是改变的地方
 
RCC->APB1ENR|=1<<3;    //TIM5 时钟使能 
RCC->APB2ENR|=1<<2;     //使能PORTA时钟  
 
GPIOA->CRL&=0XFFFFF0FF; //PA2 清除之前设置        ****
GPIOA->CRL|=0X00000800; //PA2 输入                   ****
GPIOA->ODR|=1<<2; //PA2 上啦!!!!!!!      ****
   
  TIM5->ARR=arr;   //设定计数器自动重装值   
TIM5->SC=psc;   //预分频器 
TIM5->CCMR2|=1<<0; //CC3S=01  选择输入端 IC3映射到TI3上 ****
  TIM5->CCMR2|=0<<4;  //IC3F=0000 配置输入滤波器 不滤波 ****
  TIM5->CCMR2|=0<<10;  //IC4PS=00  配置输入分频,不分频  ****

TIM5->CCER|=1<<9;  //CC3P=0 下降沿捕获****
TIM5->CCER|=1<<8;  //CC3E=1  允许捕获计数器的值到捕获寄存器中 ****

TIM5->DIER|=1<<3;    //允许捕获中断 ****
    TIM5->DIER|=1<<0;    //允许更新中断
TIM5->CR1|=0x01;     //使能定时器2
MY_NVIC_Init(2,0,TIM5_IRQChannel,2);//抢占2,子优先级0,组2
回复 支持 反对

使用道具 举报

15

主题

80

帖子

0

精华

初级会员

Rank: 2

积分
183
金钱
183
注册时间
2013-1-23
在线时间
10 小时
 楼主| 发表于 2013-1-31 11:45:55 | 显示全部楼层
请大侠帮忙看下 有错误码
回复 支持 反对

使用道具 举报

15

主题

80

帖子

0

精华

初级会员

Rank: 2

积分
183
金钱
183
注册时间
2013-1-23
在线时间
10 小时
 楼主| 发表于 2013-1-31 11:57:49 | 显示全部楼层
是不是不能用PA2做定时器5通道3捕获呢
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-1-31 17:50:36 | 显示全部楼层
肯定是可以的了,你代码没改好的问题。
先弄懂我的例程,再改你想要的IO口。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

15

主题

80

帖子

0

精华

初级会员

Rank: 2

积分
183
金钱
183
注册时间
2013-1-23
在线时间
10 小时
 楼主| 发表于 2013-2-6 14:14:25 | 显示全部楼层
谢谢正点原子 如上7楼的“****”地方,你看得出问题吗
回复 支持 反对

使用道具 举报

15

主题

80

帖子

0

精华

初级会员

Rank: 2

积分
183
金钱
183
注册时间
2013-1-23
在线时间
10 小时
 楼主| 发表于 2013-2-6 14:15:56 | 显示全部楼层
如果没问题的话,就是我的中断处理函数问题或主函数。
回复 支持 反对

使用道具 举报

5

主题

20

帖子

0

精华

初级会员

Rank: 2

积分
60
金钱
60
注册时间
2013-1-19
在线时间
0 小时
发表于 2013-2-28 21:14:30 | 显示全部楼层
回复【13楼】zhangyi3312:
---------------------------------
你好,我也遇到了这个问题,请问你现在知道了为什么去配置了通道2的的输入分频而没有配置通道1的输入分频了么?使用的是通道1呐,谢谢~
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-7-24 11:15

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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