STM32电机驱动模块(L9110S)

一、L9110S简介

L9110S是一种常用的双通道H桥电机驱动器集成电路,用于控制直流电机的方向和速度。它可以同时控制两个电机,每个通道最大可输出800mA的电流。L9110S具有高效的电源管理和过流保护功能,可以保护电路免受电机反冲电流的损害。它通常用于机器人、小型车辆和其他需要精确电机控制的项目中。

二、硬件电路

三、代码例程

main.c

复制代码
OpenLock();//开锁
Delay_ms(5000);
OFFLock();//关锁

motor.c

复制代码
#include "motor.h"
#include "delay.h"

/*
MOTOR_IB      PB3
MOTOR_IA      PB4
*/
void Motor_Config(void)
{
	//开启GPIOC的时钟
	RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOB, ENABLE); 
	//定义结构体
	GPIO_InitTypeDef GPIO_InitStruct;

	 // 配置连接到语音数据信号的引脚
	GPIO_InitStruct.GPIO_Pin =  GPIO_Pin_3 | GPIO_Pin_4;
	GPIO_InitStruct.GPIO_Mode = GPIO_Mode_OUT;
	GPIO_InitStruct.GPIO_OType = GPIO_OType_PP;
	GPIO_InitStruct.GPIO_PuPd = GPIO_PuPd_NOPULL;
	GPIO_InitStruct.GPIO_Speed = GPIO_Fast_Speed;
	GPIO_Init(GPIOB, &GPIO_InitStruct);
	
	MOTOR_IB_Low;
	MOTOR_IA_Low;
}

void OpenLock(void)
{
	MOTOR_IB_High;
	Delay_ms(400);
	MOTOR_IB_Low;
}

void OFFLock(void)
{
	MOTOR_IA_High;
	Delay_ms(400);
	MOTOR_IA_Low;
}

motor.h

复制代码
#ifndef _MOTOR_H_
#define _MOTOR_H_

#include "stm32f4xx.h"
#define MOTOR_IA_High    GPIO_SetBits(GPIOB,GPIO_Pin_4);
#define MOTOR_IA_Low     GPIO_ResetBits(GPIOB,GPIO_Pin_4);
#define MOTOR_IB_High    GPIO_SetBits(GPIOB,GPIO_Pin_3);
#define MOTOR_IB_Low     GPIO_ResetBits(GPIOB,GPIO_Pin_3);

void Motor_Config(void);
void OpenLock(void);
void OFFLock(void);



#endif
相关推荐
Freak嵌入式16 小时前
MCU 低功耗模式解析:时钟门控、电源门控、深度休眠
人工智能·python·单片机·嵌入式硬件·开源·依赖倒置原则·micropython
国科安芯16 小时前
FreeRTOS RISC-V 浮点上下文切换移植:在 IAR 工程中完整保存 FPU 寄存器
java·开发语言·单片机·嵌入式硬件·算法·系统架构·risc-v
躺不平的理查德16 小时前
STM32时钟树(Clock Tree)
stm32·单片机·嵌入式硬件
Javenwww18 小时前
STM32中DMA的使用——串口数据的DMA传输
单片机
qq_4017004118 小时前
经典的电压基准源电路
单片机·嵌入式硬件
茯苓gao19 小时前
嵌入式开发笔记:电机参数辨识与自学习完全指南——从电气参数到机械特性的深度解析
笔记·嵌入式硬件·学习
西安景驰电子19 小时前
PCIe 授时卡原理及应用
运维·服务器·windows·单片机·嵌入式硬件·fpga开发
派勤电子20 小时前
5G物联网网关工控主板选型指南(超小尺寸工业级嵌入式硬件解决方案)
嵌入式硬件·工业网关·工控主板·工控主板选型·嵌入式工控主板·5g物联网网关·超小尺寸工控主板
&Hello Code21 小时前
2.一套可落地的 STM32 六层架构:基础工程框架搭建
stm32·嵌入式硬件·架构
sramdram21 小时前
高速低功耗stt-mram工业级存储方案
嵌入式硬件·mram·stt-mram·低功耗stt-mram