stm32智能避障小车(三)之L298N 您所在的位置:网站首页 智能循迹小车原理图讲解 stm32智能避障小车(三)之L298N

stm32智能避障小车(三)之L298N

2023-09-26 18:19| 来源: 网络整理| 查看: 265

这一篇呢是介绍L298N电机驱动的,包括实物讲解,模块原理,代码讲解

1、实物讲解 首先看看模块的样子 在这里插入图片描述然后依次介绍每个部分:从左至右,由上到下, 1、输出A:可以看到输出A和B都有两个螺丝接线,每个正好接马达的正负,如何判断是哪个是正呢?正对输出口的YOU边是正。 2、板载5v使能:这是个跳线帽,可选项,接上表示不用5v供电,如果拔掉的话就需要5v供电了; 3、12v供电:这个供电是必须的,我用的是两节18650充电电池。 4、供电GND:这个不用说,就是电池的负极,注意这里,单片机的GND也需要连接这个,否则马达不会转动。 5、5v供电:这个也可以作为输出口,为我们的单片机来供电。 6、通道A使能:这个是使能输出A的,也要跳线帽连接,否则A侧马达不转,个人觉得没有什么用。 7、通道B使能:同A 8、逻辑输入:这里的逻辑输入有4个引脚:IN1,IN2.IN3,IN4,由这些引脚的电平状态来控制两个马达的正转,反转,停止。详细的介绍见下表。 9、输出B:同输出A。

IN1IN2电机A状态IN3IN4电机B状态小车状态高低正转高低正转前进高低正转低高反转右转高低正转低低停止右转低高反转高低正转左转低高反转低高反转后退低高反转低低停止左转低低停止高低正转右转低低停止低高反转左转低低停止低低停止停止

注意:我的l298n黑色部分靠近车头,得出的表格。 2、模块原理 我们想让小车前进,转向,后退,那么就需要单片机控制这四个IN引脚的高低实现我们想要的功能。 3、代码讲解 配置单片机的IO引脚均为推挽输出模式:

void L298N_IN_Init ( void ) { /*定义一个GPIO_InitTypeDef类型的结构体*/ GPIO_InitTypeDef GPIO_InitStructure; /* 配置 LED1 引脚 */ RCC_APB2PeriphClockCmd ( IN1_GPIO_CLK, ENABLE ); GPIO_InitStructure.GPIO_Pin = IN1_GPIO_PIN; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_Init ( IN1_GPIO_PORT, & GPIO_InitStructure ); /* 配置 LED2 引脚 */ RCC_APB2PeriphClockCmd ( IN1_GPIO_CLK, ENABLE ); GPIO_InitStructure.GPIO_Pin = IN2_GPIO_PIN; GPIO_Init ( IN2_GPIO_PORT, & GPIO_InitStructure ); /* 配置 LED3 引脚 */ RCC_APB2PeriphClockCmd ( IN1_GPIO_CLK, ENABLE ); GPIO_InitStructure.GPIO_Pin = IN3_GPIO_PIN; GPIO_Init ( IN3_GPIO_PORT, & GPIO_InitStructure ); RCC_APB2PeriphClockCmd ( IN1_GPIO_CLK, ENABLE ); GPIO_InitStructure.GPIO_Pin = IN4_GPIO_PIN; GPIO_Init ( IN4_GPIO_PORT, & GPIO_InitStructure ); }

再就是方向的控制:这里与表格相反,是因为马达的正负极我给接反了,请大家忽略。

void carAdvanced() { //前进状态 IN1_OFF(); IN2_ON(); IN3_OFF(); IN4_ON(); } void carLeft() { // //左转状态 // IN1_ON(); // IN2_OFF(); // IN3_OFF(); // IN4_OFF(); IN1_ON(); IN2_OFF(); IN3_OFF(); IN4_ON(); } void carRight() { //右转状态 IN1_OFF(); IN2_ON(); IN3_ON(); IN4_OFF(); } void carBack() { //后退状态 IN1_ON(); IN2_OFF(); IN3_ON(); IN4_OFF(); } void carStop() { //后退状态 IN1_OFF(); IN2_OFF(); IN3_OFF(); IN4_OFF(); }

附上避障小车的全部源码https://download.csdn.net/download/singular_man/10957543 打完收工。。。。。。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有