基于51单片机的蓝牙智能小车——《入门篇》

news/2024/10/17 22:27:03/

我认为在制作小车前需要有心里准备,要充满自信、满怀激情,学会坚持,切忌三分钟热度,半途而废。

在上一篇文章中我已经提到了制作智能小车所需要的材料,如果大家已经准备好材料,或是想进一步了解智能小车的制作原理,接下来呢,我会对多个模块进行介绍,由零散的模块一步一步将我们的小车制作出来。

我们可以按着电路图先焊一个51单片机的最小系统出来,有一点需要注意的是需要引出更多的VCC,GND接口,以防接口不够。

 

一辆小车的基本功能就是让它能动起来,能通过手机蓝牙进行遥控,所以就需要用到L298N电机驱动模块HC-06蓝牙模块。下面就简单介绍一下这两个模块。

    一个L298N电机驱动模块能驱动2个马达,小车是四驱驱动,我们可以把两个L298N模块并联,并用12V电压供电,如果你的小车不需要调速,就不用考虑PWM问题,也就无需把使能端ENA、ENB的跳线帽拔掉,直接将IN1、IN2、IN3、IN4与单片机的端口相连,把OUT1、OUT2、OUT3、OUT4与马达相连即可。

    如果你的小车需要调速,则需要把ENA、ENB跳线帽拔掉,把使能端ENA、ENB分别接入单片机的不同端口,然后调速主要是程序的问题,这里用到T0定时器来制造不同的调制信号,说白了就是一定时间内使能端高电平所占的比例,比例越高,速度越快。

void timer0() interrupt 1
{                                TH0=(65536-50)/256;TL0=(65536-50)%256;PWMcntA++;        PWMcntB++;        PWMcntC++;        PWMcntD++;        if (PWMcntA>=230){  PWMcntA=1;}if (PWMcntA<=cntPWMA){   PWMa=1; }else{  PWMa=0; }...PWMb、PWMc、PWMd依此类推
} 

(程序仅供参考)

 

电机驱动模块弄好后,离它能动就只有一步之遥了,我们需要用到HC-06蓝牙模块对小车进行控制

蓝牙模块的TXD,RXD要分别与单片机的RXD、TXD相连,这样串口通信才能收发正常,然后软件设置串口。利用switch 函数,对蓝牙接收的数据进行处理,执行相应的运动。

 

void service()
{
switch (BlueToothData)
{
case 'g':go_forward();delay(1);break;
case 'b':go_back(); delay(1);break;
case 's':stop ();delay(1);break;
.
.
依此类推
}
} 

(程序仅供参考)

如果上面的都弄好后,距离小车能动就只差半步了,这时候我们还需要一部手机,如果你会写上位机,你不妨可以自己做个APP来控制小车,如果不会开发手机APP,那也可以使用别人写好的蓝牙串口助手APP,在这里,我推荐SPP蓝牙助手,它是目前我试过的最好用的一款安卓蓝牙串口助手APP,它可以编辑你想要的按键功能,方便我们的个性化开发。

做到这一步,恭喜你的小车已经可以动了,我认为你已经是一名合格的司机了,怎么样?系不系有点小激动?

那就开车吧!


http://www.ppmy.cn/news/157640.html

相关文章

魔百和M401A刷入Armbian系统EMMC

魔百和M401A刷入Armbian系统 准备工具 1. 电视盒子、U盘、键盘、显示器、HDMI线 2. armbian系统镜像包&#xff1a; Armbian_23.02.0_amlogic_s905l3a_bullseye_5.15.82_server_2022.12.12.img.gz (Armbian_23.02.0_amlogic_s905l3a_bullseye_6.1.10_server_2023.02.07.img.g…

魔百盒M401a刷机

基本情况 咸鱼购买魔百盒311-1a yst&#xff0c; 发给我401a&#xff0c;有蓝牙无wifi 本机发布版本v.955.05&#xff0c;系统版本9&#xff0c;硬件版本1.0.0&#xff0c;设备型号M401A&#xff0c;厂家名称:CIOT, CPU:amlogic 已安装当贝市场&#xff0c;乐家市场&#xff0c…

51单片机智能蓝牙小车

作为大一电子小趴菜&#xff0c;在和队友学习制作蓝牙小车过程中遇到了许多困难。本文既为大家避坑&#xff0c;也作为团队总结。 这篇文章分为两部分 1&#xff0c;组装篇 2&#xff0c;代码篇 思维导图&#xff1a; 组装篇 先准备好一块电源拓展板&#xff0c;用于为电机驱…

【socket】从计算机网络基础到socket编程——Windows Linux C语言 + Python实现(TCP+UDP)

一、部分基础知识1.1 计算机网络的体系结构1.11 互联网简介1.12 计算机网络的分类1.13 协议与网络的分层体系结构▶ 协议▶ 网络的分层体系结构 1.14 OSI 七层模型&#xff08;重要&#xff09;▶ OSI 模型的结构▶ OSI 模型各层的功能 1.15 TCP/IP 的体系结构&#xff08;重要…

分布式锁框架-Redisson

分布式锁框架-Redisson 一、Redisson介绍二、在SpringBoot中使用Redisson三、Redisson工作原理四、Redisson使用扩展4.1、Redisson单机连接4.2、Redisson集群连接4.3、Redisson主从连接 五、分布式锁总结5.1、分布式锁特点5.2、锁的分类5.3、Redission的使用 基于Redis看门狗机…

Coursera自动驾驶2.1——最小二乘法和线性和非线性卡尔曼滤波

文章目录 一、最小二乘法1.最小二乘法2.加权最小二乘法3.递归最小二乘法4.最小二乘法与极大似然 二、卡尔曼滤波1.概述2.线性卡尔曼滤波3.扩展卡尔曼滤波Error State卡尔曼滤波 4.无迹卡尔曼滤波&#xff08;1&#xff09;无迹变换&#xff08;2&#xff09;无迹卡尔曼滤波 一、…

【生物力学】《人体骨肌系统生物力学》- 王成焘老师 - 第1章 - 总论

目录回到目录第2章 文章目录 1.1 人体骨肌系统1.1.1 人体骨骼系统1. 骨骼的功能2. 骨骼的构造3. 骨组织的构成1. 骨细胞与骨基质2. 成骨细胞3. 破骨细胞4. 骨原细胞 4. 皮质骨与松质骨的构造1. 皮质骨2. 松质骨 1.1.2 关节与骨连接1. 运动关节2. 局部活动关节3. 微动关节与固定…

宏基4743G 把光驱换硬盘的一些问题

为什么80%的码农都做不了架构师&#xff1f;>>> 本来把笔记本的硬盘换成SSD后&#xff0c;用的爽爽的&#xff0c;但是120G是真心的不够用。oracle&#xff0c;vs2010&#xff0c;vs2012&#xff0c;再装2个虚拟机&#xff0c;就基本没空间了。 于是就买了个硬盘托…