单片机学习日记

外设需要驱动的时候用复用推挽输出模式。

在使用时,根据时钟树中对应APB的定时器时钟线的频率,结合预分频器以及自动重装载寄存器,我们就可以设置出需要的PWM频率(周期),比较寄存器与自动重装载寄存器的比值就是PWM的占空比。当然如果换到PWM模式2或者修改输出极性情况会有所不同。

在代码中我们使用HALTIM_PWM_Start函数可以启动PWM输出,当然也有对应的HALTIM_PWM_Stop函数停止PWM输出;通过HAL TIMSETCOMPARE函数我们可以修改比较寄存器的值,也就修改了PWM的占空比

旋转编码器


它每360度输出20个脉冲,也就是每个脉冲代表18度,用脉冲数量乘以18度就可以得出真实的旋转角度

定时器:

编码器模式:

输入捕获只能进行直接捕获走TI1FP1和TI2FP2

代码里HAL_TIM_Encoder_Start编码器,随后获取计数器的值就好啦。

舵机

大于输出比较寄存器时输出另一种电平,修改定时器时钟源的速度以及预分频器等设置,可以修改计数器计数的速度。再加上修改自动重装载值,就可以调节PWM的周期频率。修改比较寄存器的大小,就可以调节PWM的占空比

实际上绝大多数的舵机控制的占空比范围都是2.5%~12.5%,因为绝大多数的航模遥控器也都是输出这个范围的信号,


DRV8833控制电机,需要熟悉PWM

相关推荐
爱三盖浇饭2 分钟前
挑战从零开始学习Kafka2: Kafka 常见问题解决方案
学习·kafka
Brilliantwxx15 分钟前
【PCB】(入门篇) 电子入门系列|从电路分析到 PCB 设计
stm32·单片机·嵌入式硬件
dtq04241 小时前
数据结构 - 线性表 - 双向链表
c语言·数据结构·学习
M78佐菲7 小时前
Linux学习笔记:TCP协议
linux·笔记·学习·tcp/ip·算法
俊基科技7 小时前
A-59U工业级多模语音处理模块在矿山矿井通信与呼叫报警系统中的应用
嵌入式硬件·嵌入式开发·硬件开发·ai降噪·回音消除·拾音降噪
yi.Ist8 小时前
数据定义语言-DDL操作
数据库·学习·mysql·oracle·大海豚
周周记笔记9 小时前
GD32F450xx MCU Datasheet 解读:硬件测试工程师的测试方法论
单片机·嵌入式硬件
潘潘的嵌入式日记11 小时前
I²C 从机接收总被覆盖?双缓冲要在 STOP 时交接
c语言·开发语言·单片机
骐骥112 小时前
学习:javaScriptProxy和registerJavaScriptProxy有什么区别,能注册多少个对象
学习·鸿蒙
Huathy-雨落江南,浮生若梦12 小时前
Caddy 学习笔记 - 反向代理与 IP 封禁
笔记·学习·tcp/ip