OpenEdv-开源电子网

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

关于用H743-time8编码器的使用问题

[复制链接]

16

主题

90

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
368
金钱
368
注册时间
2019-10-24
在线时间
153 小时
发表于 2022-5-18 11:11:19 | 显示全部楼层 |阅读模式
30金钱
首先附上代码,//TIM_HandleTypeDef TIM8_Handler;这里屏蔽是因为上面定义了,在此说明
void TIM8_Init(u16 arr,u16 psc)
{  
          //TIM_HandleTypeDef TIM8_Handler;      
                GPIO_InitTypeDef GPIO_Initure8;
          TIM_Encoder_InitTypeDef TIM8_encoder_8;   
       
         __HAL_RCC_TIM8_CLK_ENABLE();
         __HAL_RCC_GPIOC_CLK_ENABLE();   
       
       
                GPIO_Initure8.Pin=GPIO_PIN_7|GPIO_PIN_6;//|GPIO_PIN_7|GPIO_PIN_6;         
                GPIO_Initure8.Mode=GPIO_MODE_AF_PP;     //
                GPIO_Initure8.Pull=GPIO_PULLUP;         //上拉
                GPIO_Initure8.Speed=GPIO_SPEED_FREQ_VERY_HIGH;    //高速
          GPIO_Initure8.Alternate=GPIO_AF3_TIM8;   //复用time8
                HAL_GPIO_Init(GPIOC,&GPIO_Initure8);
       
          TIM8_Handler.Instance=TIM8;                          
    TIM8_Handler.Init.Prescaler=0;                     //预分频0
    TIM8_Handler.Init.CounterMode=TIM_COUNTERMODE_UP;    //向上计数
    TIM8_Handler.Init.Period=arr;                        //装载值
    TIM8_Handler.Init.ClockDivision=TIM_CLOCKDIVISION_DIV1;//时钟分频因子
   TIM8_Handler.Init.AutoReloadPreload=TIM_AUTORELOAD_PRELOAD_DISABLE;
               
       
          TIM8_encoder_8.EncoderMode=TIM_ENCODERMODE_TI1;  //TI1计数
          TIM8_encoder_8.IC1Polarity=TIM_ICPOLARITY_RISING;  //
          TIM8_encoder_8.IC1Selection=TIM_CCMR1_CC1S_0;  //通道1为输入,映射到TI1
          TIM8_encoder_8.IC1Prescaler=TIM_ICPSC_DIV1;  //每一次触发都计数,不进行分频
          TIM8_encoder_8.IC1Filter=0xA;  //?
          TIM8_encoder_8.IC2Polarity=TIM_ICPOLARITY_RISING;
                TIM8_encoder_8.IC2Selection=TIM_CCMR1_CC2S_0;
          TIM8_encoder_8.IC2Prescaler=TIM_ICPSC_DIV1;
          TIM8_encoder_8.IC2Filter=0XA;
               

                HAL_TIM_Encoder_Init(&TIM8_Handler,&TIM8_encoder_8);
                 __HAL_TIM_ENABLE(&TIM8_Handler);
                //HAL_TIM_Encoder_Start(&TIM8_Handler,TIM_CHANNEL_1);  
}
在调试过程,转动编码器 TIM8->CNT 计数会在0和FFFE之间跳动
这个配置有路过的大神指导一下吗
file:///C:\Users\DSP\AppData\Roaming\feiq\RichOle\2015696600.bmp
file:///C:\Users\DSP\AppData\Roaming\feiq\RichOle\2015696600.bmp
file:///C:\Users\DSP\AppData\Roaming\feiq\RichOle\2015696600.bmpfile:///C:\Users\DSP\AppData\Roaming\feiq\RichOle\2015696600.bmp
file:///C:\Users\DSP\AppData\Roaming\feiq\RichOle\2015696600.bmpfile:///C:\Users\DSP\AppData\Roaming\feiq\RichOle\2015696600.bmpfile:///C:\Users\DSP\AppData\Roaming\feiq\RichOle\2015696600.bmp

最佳答案

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

离大谱了,编码器没有共地导致AB两线一直有毛刺
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

16

主题

90

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
368
金钱
368
注册时间
2019-10-24
在线时间
153 小时
 楼主| 发表于 2022-5-18 11:11:20 | 显示全部楼层
离大谱了,编码器没有共地导致AB两线一直有毛刺
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165371
金钱
165371
注册时间
2010-12-1
在线时间
2110 小时
发表于 2022-5-18 21:50:08 | 显示全部楼层
帮顶
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-2-25 18:35

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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