P16[6-4]:PWM驱动直流电机(内含:1.实验现象+2.代码部分/详细注释)

本文介绍了使用STM32通过PWM驱动直流电机的实践,包括接线原理、实验现象和详细代码解析。在主函数中,通过按键控制电机速度,最大速度100,超过则反转。PWM初始化涉及RCC、TIM2配置、GPIO复用推挽输出,并通过TIM_SetCompare3设置占空比来调整电机速度。
摘要由CSDN通过智能技术生成

1.接线原理图/实验现象如下:

.

2.代码部分:

主函数(main.c)代码部分:

#include "stm32f10x.h"                  // Device header
#include "Delay.h"
#include "OLED.h"
#include "Motor.h"
#include "Key.h"

uint8_t KeyNum;
int8_t Speed;//有符合的变量

int main(void)
{<

  • 4
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
一、直流小电机及其驱动L9110介绍 gokit板载一个直流小电机,通过L9110来驱动。L9110是为控制和驱动电机设计的两通道推挽式功率放大专用集成电路器件,将分立电路集成在单片IC之中,使**器件成本降低,整机可靠性提高。该芯片有两个TTL/CMOS兼容电平的输入,具有良好的抗干扰性;两个输出端能直接驱动电机的正反向运动,它具有较大的电流驱动能力,每通道能通过800mA的持续电流,峰值电流能力可达1.5A;同时它具有较低的输出饱和压降;内置的钳位二极管能释放感性负载的反向冲击电流,使它在驱动继电器、直流电机、步进电机或开关功率管的使用上安全可靠。L9110被广泛应用于玩具汽车电机驱动、脉冲电磁阀门驱动,步进电机驱动和开关功率管等电路上。 低静态工作电流;宽电源电压范围:2.5V-12V; 每通道具有800mA连续电流输出能力; 较低的饱和压降; 输出具有正转、反转、高阻和刹车四种 状态; TTL/CMOS 输出电平兼容,可直接连 CPU; 输出内置钳位二极管,适用于感性负 载; 控制和驱动集成于单片IC之中; 具备管脚高压保护功能; 工作温度:-20℃-80℃ 二、硬件连线 对于gokit V2.3扩展板,板载L9110的A路输入管脚IA连接到了arduino UNO接口的D5,B路输入管脚IB连接到了arduino UNO接口的D4,通过控制D4和D5输出PWM信号即可实现控制电机转动方向和速度,如图1所示: 图1 Gokit V2.3扩展板L9110原理图 根据Nucleo-F767ZI的原理图,图2可以知道,STM32F767ZIT6的GPIO PE11连接到了Arduino UNO接口的D5,且具备PWM输出功能,为定时器1的通道2,PF14连接到了Arduino UNO接口的D4,不具备PWM功能,因此本次只能驱动电机单向转动。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

努力成为焦耳定律鸭

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值