1.使用说明:

1、直流电机的驱动:

该驱动板可驱动2路直流电机,使能端ENAENB为高电平时有效,控制方式及直流电机状态表如下所示:

ENA

IN1

IN2

直流电机状态

0

x

X

停止

1

0

0

制动

1

0

1

正转

1

1

0

反转

1

1

1

制动

若要对直流电机进行PM调速,需设置IN1IN2,确定电机的转动方向,然后对使能端输出PW脉冲,即可实现调速。注意当使能信号为0,电机处于自由停止状态;当使能信号为1,IN1IN20011,电机处于制动状,阻止电机转动。

 

2.控制一个电机转动

不连接ENA和ENB测试

p1 →in1

p2 →in2

l298n.c

#include "stm32f10x.h"  //包含需要的头文件
#include "l298n.h"        //包含需要的头文件

/*-------------------------------------------------*/
/*函数名:初始化LED函数                       	    */
/*参  数:无                                       */
/*返回值:无                                       */
/*-------------------------------------------------*/
void L298n_Init(void)
{    	 
	GPIO_InitTypeDef GPIO_InitStructure;                     
	RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);    

	GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1;   
	GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
	GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;     
	GPIO_Init(GPIOA, &GPIO_InitStructure); 
	GPIO_SetBits(GPIOA, GPIO_Pin_1); 						 //PC13 输出高

	GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2;   
	GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
	GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;     
	GPIO_Init(GPIOA, &GPIO_InitStructure); 
	GPIO_ResetBits(GPIOA, GPIO_Pin_2); 						 //PC13 输出高 
	
}

 l298n.h

#ifndef __L298N_H
#define __L298N_H


void L298n_Init(void);               //初始化	

#endif