当前位置: 首页 > wzjs >正文

wordpress 快速建站城乡建设学校网站

wordpress 快速建站,城乡建设学校网站,濮阳市城乡一体化示范区教师招聘,网站开发从入门到精通解码器模式(Encoder Interface Mode) 是高级定时器的一种功能,用于直接读取正交编码器(如旋转编码器)的输出信号,自动跟踪脉冲变化并计算方向与计数值,无需CPU频繁干预,适用于电机控…

解码器模式(Encoder Interface Mode)

 是高级定时器的一种功能,用于直接读取正交编码器(如旋转编码器)的输出信号,自动跟踪脉冲变化并计算方向与计数值,无需CPU频繁干预,适用于电机控制、位置检测等场景。

1. 配置编码器输入的GPIO引脚,设置为输入模式,并映射到定时器的通道。

2. 配置定时器为编码器模式,选择编码器接口的工作方式(例如,仅在TI1的边沿计数,或者TI1和TI2的边沿都计数)。

3. 设置自动重装载值,确定计数器的范围。

4. 启用定时器,开始计数。

5. 通过读取计数器的值来获取位置信息,或者结合溢出中断来计算速度。

联想解释

想象你有一个旋转编码器(类似自行车码表)

它通过两个信号线(A相和B相)告诉你转了多少圈、往哪边转。
高级定时器的解码器模式就像一个“自动计步器”

  • 自动数步子:每转一步(一个脉冲),定时器自动加减计数。
  • 判断方向:根据A、B相信号的先后顺序,自动判断是正转还是反转。
  • 实时更新:CPU不用一直盯着,定时器自己默默计数,你随时可以问它:“现在走到哪了?”

STM32 HAL库配置 

步骤1:配置编码器输入引脚

// 配置编码器A相(TI1)和B相(TI2)的GPIO为输入模式
GPIO_InitTypeDef GPIO_InitStruct = {0};
GPIO_InitStruct.Pin = GPIO_PIN_8 | GPIO_PIN_9;  // 假设PA8(TI1)、PA9(TI2)
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;        // 复用推挽模式
GPIO_InitStruct.Pull = GPIO_PULLUP;            // 上拉电阻防干扰
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH;
GPIO_InitStruct.Alternate = GPIO_AF1_TIM1;     // 映射到TIM1
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);

步骤2:配置定时器为编码器模式

TIM_HandleTypeDef htim1;
htim1.Instance = TIM1;  // 使用高级定时器TIM1
htim1.Init.Prescaler = 0;           // 不分频(直接计数)
htim1.Init.CounterMode = TIM_COUNTERMODE_UP; // 实际方向由编码器信号决定
htim1.Init.Period = 65535;          // 自动重装载值(最大计数范围)
htim1.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;// 配置编码器接口
TIM_Encoder_InitTypeDef sEncoderConfig;
sEncoderConfig.EncoderMode = TIM_ENCODERMODE_TI12;  // 同时使用TI1和TI2边沿
sEncoderConfig.IC1Polarity = TIM_ICPOLARITY_RISING; // A相上升沿触发
sEncoderConfig.IC1Selection = TIM_ICSELECTION_DIRECTTI; // A相映射到TI1
sEncoderConfig.IC1Prescaler = TIM_ICPSC_DIV1;       // 无分频
sEncoderConfig.IC1Filter = 0x0;                     // 无滤波sEncoderConfig.IC2Polarity = TIM_ICPOLARITY_RISING; // B相上升沿触发
sEncoderConfig.IC2Selection = TIM_ICSELECTION_DIRECTTI; // B相映射到TI2
sEncoderConfig.IC2Prescaler = TIM_ICPSC_DIV1;
sEncoderConfig.IC2Filter = 0x0;HAL_TIM_Encoder_Init(&htim1, &sEncoderConfig);

步骤3:启动编码器接口

HAL_TIM_Encoder_Start(&htim1, TIM_CHANNEL_ALL);  // 开启TIM1的编码器模式

步骤4:读取计数值

int32_t current_count = __HAL_TIM_GET_COUNTER(&htim1); // 获取当前计数值

步骤5(可选):处理溢出

// 开启溢出中断
__HAL_TIM_ENABLE_IT(&htim1, TIM_IT_UPDATE);// 在中断回调函数中处理溢出
void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim) {if (htim->Instance == TIM1) {// 记录溢出次数,扩展计数范围overflow_count++;}
}

关键参数说明

参数作用
EncoderMode编码器模式:TIM_ENCODERMODE_TI1(仅A相)、TIM_ENCODERMODE_TI2(仅B相)、TIM_ENCODERMODE_TI12(双相)
IC1PolarityA相信号触发边沿(上升沿/下降沿)
IC1Filter输入滤波值(0~15),用于去抖动
Period自动重装载值,决定计数范围(如65535对应16位计数器)

文章转载自:

http://TTuSNTBd.zzgkk.cn
http://YtgCAk4T.zzgkk.cn
http://8SmOo8ep.zzgkk.cn
http://eg4xFQUt.zzgkk.cn
http://HoVRkVxZ.zzgkk.cn
http://c1rQvmTr.zzgkk.cn
http://AATdEcGJ.zzgkk.cn
http://Qri3Hace.zzgkk.cn
http://6rSWKqB9.zzgkk.cn
http://g37d4Aoj.zzgkk.cn
http://RwRGtAvj.zzgkk.cn
http://tYLmlu16.zzgkk.cn
http://5X9RxxMf.zzgkk.cn
http://X1qtOBhg.zzgkk.cn
http://rynfMJd6.zzgkk.cn
http://Dc7r3HH4.zzgkk.cn
http://XsnCcKJO.zzgkk.cn
http://PF7tcTLj.zzgkk.cn
http://Vx0O3Cf3.zzgkk.cn
http://29MoNkOD.zzgkk.cn
http://igNsdWeM.zzgkk.cn
http://VK1xyhxv.zzgkk.cn
http://S5kEUpBg.zzgkk.cn
http://EMXTjniA.zzgkk.cn
http://piaFb4yq.zzgkk.cn
http://tMueZFTo.zzgkk.cn
http://dRdkF7DK.zzgkk.cn
http://0F8c4BXj.zzgkk.cn
http://dcUKKB8v.zzgkk.cn
http://BPBaWZ5c.zzgkk.cn
http://www.dtcms.com/wzjs/694554.html

相关文章:

  • 国外商业网站网络营销技巧和营销方法
  • 通州郑州阳网站建设漳州电脑网站建设
  • 哪个网站可以接做美工的活儿山东系统建站怎么用
  • 免域名x网站网站制作商家入驻
  • 网站建设与管理适合女生学吗温州建站方案
  • 开发手机网站教程中国城乡住房和城乡建设部网站
  • 国外注册网站做百度seo网站导航条背景图片
  • 做动车哪个网站查内网建站教程
  • 网站设计公司 北京个人网站如何被百度收录
  • 会务网站建设多商家平台
  • 网站开发api平台广州海珠区培训机构网站建设
  • 信阳公司做网站做网站一年赚一千万
  • 网站开发有哪些常用工具网页设计工资一般多少2017
  • 网站开发最好的语言为什么网站在本地看没问题上传之后没有内容呢?
  • 怎么给网站加代码企业网站的建立意义
  • 如何给网站做优化代码南宁建站网站模板
  • 恶意刷网站织梦网站做中英文双语言版本
  • 企业的网站开发费用如何入账哔哩哔哩黄页网站
  • 高端品牌网站建设公司企业网站建设存在的问题及建议
  • 营销型网站建设个人软文推广的标准类型
  • 宜城营销型网站套餐电子商务网站开发 pdf
  • 知名企业网站人才招聘情况如何搭建网站挣钱
  • 网站建设员招聘自动化产品的网站建设
  • 海南第四建设工程有限公司网站淘宝api wordpress
  • 帮人家做家务的网站廊坊seo推广
  • xxx网站建设规划坪山住房和建设局网站
  • 门户类网站图片外贸网站外贸网站建设行吗
  • 做淘宝店招的网站北京最新防疫信息
  • 做网站建立数据库公司建设网站重要性
  • 万网做网站花多少钱crm客户管理系统软件