赞
踩
今日进程:学会了如何用STM32去连接L298N电机驱动去驱动电机,使轮子转起来
这个图片是我从百度上找到的,也是找了好久,才知道L298N的引脚是怎么用的,用STM32的引脚去连接电机中的IN引脚和END引脚就可以,然后在STM32中编写代码,使STM32的引脚输出高低电平,END要使能为高电平,IN1和IN2给予1和0,就可以实现转起来,IN1为0,IN2为1,实现正转
电机驱动模块里面有个双H桥,可以用来控制电机正反转以及电机的转动,我的理解是STM32给出高低电平的信号,然后L298N根据高低电平信号去驱动电机转动
STM32中的高低电平输出,用的是GPIO,这个和点亮LED灯差不多
main函数里面
- #include "led.h"
- #include "delay.h"
- #include "sys.h"
- #include "car.h"
- int main(void)
- {
- delay_init();
- LED_Init();
- car();
- GPIO_SetBits(GPIOA,GPIO_Pin_10);
- while(1){
- GPIO_SetBits(GPIOA,GPIO_Pin_9);//1
- GPIO_ResetBits(GPIOA,GPIO_Pin_8);//0
- }
- }
- #include "car.h"
- void car(void){
- GPIO_InitTypeDef GPIO_InitStruce;
- RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);
- GPIO_InitStruce.GPIO_Mode = GPIO_Mode_Out_PP;
- GPIO_InitStruce.GPIO_Pin = GPIO_Pin_8|GPIO_Pin_9|GPIO_Pin_10;
- GPIO_InitStruce.GPIO_Speed = GPIO_Speed_50MHz;
- GPIO_Init(GPIOA,&GPIO_InitStruce);
-
- }
上面那个是car.c文件,其实这些东西是可以一起写到main.c里面去的,但是如果你是跟着STM32官方给出的视频学习STM32F103的话,你就会习惯使用这种分开的方式了
car.h
- #ifndef _CAR_H
- #define _CAR_H
- #include "sys.h"
- void car(void);
-
-
-
- #endif
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。