基于ESP8266 开发板(MCU)遥控小车

遥控小车

遥控界面

【项目源码】

第一版ESP8266

https://github.com/liyinchigithub/esp8266_car_webServericon-default.png?t=N7T8https://github.com/liyinchigithub/esp8266_car_webServer

第二版ESP32

GitHub - liyinchigithub/esp32-wroom-car: 嵌入式单片机 ESP32 Arduino 遥控小车(wifi版)嵌入式单片机 ESP32 Arduino 遥控小车(wifi版). Contribute to liyinchigithub/esp32-wroom-car development by creating an account on GitHub.icon-default.png?t=N7T8https://github.com/liyinchigithub/esp32-wroom-car

材料

ESP8266主板1个(某宝买10元)、步进器/电机驱动1个(6元)、3.7V电池1个(5元)、车身架1个、2个轮胎和2个小马达、跳线若干(17元)。

小车主板

一、ESP8266 NodeMCU 单片机

引脚图

Arduino IDE 安装ESP8266Audio库
  1. 打开Arduino IDE。

  2. 在菜单栏中,选择Sketch -> Include Library -> Manage Libraries...。

  3. 在弹出的库管理器窗口中,输入ESP8266Audio库到搜索框中。

  4. 在搜索结果中找到ESP8266Audio by Earle FPhlhower,点击Install按钮进行安装。

选择开发板
  1. 打开Arduino IDE。

  2. 在菜单栏中,选择工具 -> 开发板 -> 选择NodeMcu1.0

选择端口

驱动安装

二、(可变速)L287N直流电机(步进器电机驱动板)

  1. OUT1和OUT2 电池1、OUT3和OUT4 电池2

  1. 12V电源正极、GND电源负极+8266电源负极 、+5V8266引脚

  1. ENA:电机1PWM调速引脚

注意:不使用调速引脚,那两个塑料不要拔起来,拔起来后需要用“母对母”跳线连接

  1. ENB:电机2PWM调速引脚

  1. IN1和IN2:电机1 正反转/停止控制

 

  1. IN3和IN4:电机2 正反转/停止控

8.左右电机控制

9.引脚对接

B站视频1 B站视频2

三、(不可变速)L9110S直流电机(步进器电机驱动板)

 

 

遥控按钮页面

1.程序烧入ESP8266主板后,生成wifi热点:“遥控小车”; 2.使用手机或平板连接热点密码:12345678 3.浏览器地址:http://192.168.4.1

常见问题

如果你已经将D1和D2设置为高电平,但是马达没有运动,可能有以下几个原因:

  1. 电流不足:ESP8266的GPIO引脚只能提供很小的电流(大约12mA),这可能不足以驱动马达。你可能需要一个马达驱动器或者一个适当的晶体管来放大电流。

  2. 连接问题:检查你的马达是否正确连接到ESP8266和电源。

  3. 马达问题:你的马达可能有问题。试着用另一个马达,或者直接用电源给马达供电,看看马达是否能运动。

  4. 代码问题:检查你的代码是否正确设置了GPIO引脚为输出模式,并且设置了高电平。

如果你确定以上问题都没有,但是马达还是不能运动,你可能需要寻求更专业的帮助,或者使用专门的马达控制板(如L293D或者L298N)来驱动你的马达。

  • 23
    点赞
  • 61
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
你可以参考以下示例代码来实现以GD32为开发板的电磁小车循迹功能: ```C #include <gd32f30x.h> #define LEFT_SENSOR_PIN GPIO_PIN_0 #define RIGHT_SENSOR_PIN GPIO_PIN_1 void gpio_init(void) { /* 使能GPIOB和GPIOC时钟 */ rcu_periph_clock_enable(RCU_GPIOB); rcu_periph_clock_enable(RCU_GPIOC); /* 配置左传感器引脚为输入模式 */ gpio_mode_set(GPIOB, GPIO_MODE_INPUT, GPIO_PUPD_NONE, LEFT_SENSOR_PIN); /* 配置右传感器引脚为输入模式 */ gpio_mode_set(GPIOB, GPIO_MODE_INPUT, GPIO_PUPD_NONE, RIGHT_SENSOR_PIN); } int main(void) { /* 初始化GPIO */ gpio_init(); while (1) { /* 读取左传感器的状态 */ uint8_t left_sensor_state = gpio_input_bit_get(GPIOB, LEFT_SENSOR_PIN); /* 读取右传感器的状态 */ uint8_t right_sensor_state = gpio_input_bit_get(GPIOB, RIGHT_SENSOR_PIN); /* 根据传感器状态决定小车行进方向 */ if (left_sensor_state == 0 && right_sensor_state == 0) { /* 左右传感器都检测到黑线,小车直行 */ // 控制小车直行的代码 } else if (left_sensor_state == 0 && right_sensor_state == 1) { /* 只有左传感器检测到黑线,小车向右转 */ // 控制小车向右转的代码 } else if (left_sensor_state == 1 && right_sensor_state == 0) { /* 只有右传感器检测到黑线,小车向左转 */ // 控制小车向左转的代码 } else { /* 左右传感器都未检测到黑线,小车停止 */ // 控制小车停止的代码 } } } ``` 以上代码演示了如何使用GD32开发板实现电磁小车的循迹功能。你可以根据具体的硬件连接和控制方式进行适当的修改。需要注意的是,GPIO初始化和控制小车行走的代码需要根据具体的GD32开发板和电机驱动模块进行调整。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

liyinchi1988

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

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

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

打赏作者

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

抵扣说明:

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

余额充值