单面机51小车程序_手把手教你DIY:蓝牙遥控小车(下)

2023-10-29 19:40

本文主要是介绍单面机51小车程序_手把手教你DIY:蓝牙遥控小车(下),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

上节内容给大家介绍了蓝牙模块的用法、小车程序设计以及制作手机APP,相信对于大家来说还是比较简单的。

*上节文章《蓝牙遥控小车(上)

本节内容会给大家讲解剩下的硬件部分的使用和设计,话不多说,直接开始我们今天的内容。

单片机最小系统

想当初我刚把51单片机学完的时候,什么都还不太会,没有自己动手设计过东西,只知道在开发板上下载程序的时候接上线就行了,但是不清楚DIY的时候要怎么给单片机下载程序,恰巧当时自己喜欢的女孩儿想要我帮忙做个小设计,我也只能在网上找了一个附带电路的设计来做,花了些时间还没有成功,别提多尴尬了......

后来才明白想要让单片机能够启动起来、下载程序是需要焊接单片机最小系统的,有了最小系统才能正常工作,我们直接来看一下电路图吧。

09911f4e46f81e23ddefe4ceb23fc393.png

这里红色框里的是晶振电路,也就是时钟电路,这个是整个系统的核心,是必不可少的,“Y2”就是晶振,我们开发板上使用的是11.0592MHz的晶振,两者没太大区别,旁边的两个30pF的瓷片电容在这里又叫起振电容,为的就是在上电时能让晶振快速启动。蓝色框里的是复位电路,通过这样的设计每次按下S1按键时,单片机会被复位,复位电路我一般情况下不用,只焊接出一个晶振电路。

(焊接时,把VCC、GND以及使用到的引脚用排针引出来,方便后续接线)

CH340

fef93e921d310c3ae6ff2456c067d2e8.png

这个小东西用来给单片机下载程序,5V接单片机VCC,GND接单片机GND,TXD接单片机RXD,RXD接单片机TXD,接好以后插在电脑USB口上就可以像平时给开发板一样的下载程序啦,这里有一点要注意:CH340是冷启动的,也就是说下载软件选好型号、串口、程序,点击了“下载/编程”以后要给单片机断一下电再供电程序才能正常下载进去哦~

电机驱动模块—L298N

152ffbadb69c86636dd1c93bb7d9133e.png

  • +12V供电:接在电池正极,最大可接受12V电压。

  • 供电GND:接在电池负极。

  • +5V供电:输出5V电压,可用于单片机、蓝牙模块等供电使用。

  • 逻辑输入:用杜邦线接在单片机IO口上,IO输出到这里的高低电平会直接控制“输出A”和“输出B”。

  • 输出A、输出B:输出电平由逻辑输入控制,这里接直流电机。

还记得上节讲的控制电机转向的那部分代码吧,代码中位定义出的引脚就是要接在逻辑输入中的,具体的引脚位定义以及高低电平的设置要根据大家自己的接线情况来确定。(代码中的四个逻辑输入分别接在了P1^4、P1^5、P1^6、P1^7引脚)

直流电机、车轮、万向轮

9e4bc9780e84f0e4898c4745fddebe39.png

这些就很简单啦,两个直接电机安装上轮胎按照前边讲的方式接好,万向轮找一个类似的就好,固定在底盘后边,和轮胎形成个三角形就好啦。

自锁开关

a42ac401cc847446b30e13f51a6020c5.png

这种开关有两排引脚,每排有3个,中间那是是公共端,我们焊接的时候只需要焊接两个引脚就好啦,可以使用红色框里的或者蓝色框里的两个引脚(一个是按下接通,另一个是松开接通)我们可以将电源正极线截成两截分别焊接在两个引脚上,断开时不供电,接通时供电。

锂电池—18650(14500)

33ba681157b43f3940c12d73ef01dac8.png

两种电池虽说标定都是3.7V的锂电池,但电压是跟随电量变化的,在满电的情况下可达到4.2V左右(放电最好不要到3.3V以下、充满电以后要及时拿下来,因为过度放电和过度充电都会损坏电池),我们使用两块串联(8V左右)即可正常供电(使用三块也可以,相比之下跑起来比较快),14500大小就相当于我们平时使用的5号电池,18650相对于14500来说体积较大,但相应的储存电量一般也比14500大,这里大家可以根据情况自行选择。(别忘了选择对应大小的电池盒哦)

我们可以使用塑料板或者木板切割出一块类似于下图这样的底盘(可以把形状做的比这个好看一点)把直流电机、轮胎、万向轮、电池盒按照图中的方式固定起来。

(图片是网上找的,电池、最小系统等地方可能跟我们说的不太一样,请大家见谅)

c9256698c84bffafc634b93da006b11f.png

使用一块大小适中的洞洞板,按照单片机最小系统原理图将电路焊接好(记得焊接一个四孔的排母,方便插蓝牙模块,焊接时要看好蓝牙模块的引脚,以免插上以后不能正常工作,别忘了蓝牙模块的TXD接在单片机RXD、RXD接在单片机TXD),然后直接或者加上铜柱固定在底盘上,把电机驱动固定在底盘前端,剩下的就是接线啦,电池的正极通过自锁开关后接在电机驱动+12供电,负极接在GND,+5V供电引出来为单片机以及蓝牙模块供电,对应的引脚都接好,如下图(红色框里的模块没有用到,我们不用管它):

1a481c27be01fb609e49f284d8cd1bfe.png

好的,到这里就差不多完成了,只需要使用CH340将我们的程序下载进去调试就可以啦,需要注意的是,在下载程序时需要将蓝牙模块先拔下来,因为51单片机只有一个串口,插着蓝牙时,蓝牙会占用串口导致程序下载不进去。

结  语

这样一来是不是觉得蓝牙遥控小车做起来也挺简单的呢?大家可以动手试一下,提高一下自己的动手能力,千万不要像我当时一样只会纸上谈兵,有什么不明白的地方可以直接滴滴我哦~

今天的内容就先到这里啦,期待大家的成品。

▼ 更多蓝桥杯文章 ▼

蓝桥杯·单片机竞赛备赛之蓝牙遥控小车(上)

蓝桥杯·单片机竞赛备赛之串口通信(下)

蓝桥杯·单片机竞赛备赛之串口通信(上)

蓝桥杯·单片机竞赛备赛之定时器

蓝桥杯·单片机竞赛备赛之外部中断

蓝桥杯·单片机竞赛备赛之机械按键

cc473f46352276b9b28cbfff973d2527.gif 8c80ec02570b54e9681bc3d3d6223c1a.png 扫码入群 扫码添加管理员微信

加入“电子产品世界”粉丝交流群

↓↓↓↓点击,参与交流讨论

这篇关于单面机51小车程序_手把手教你DIY:蓝牙遥控小车(下)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/302925

相关文章

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序

使用Docker构建Python Flask程序的详细教程

《使用Docker构建PythonFlask程序的详细教程》在当今的软件开发领域,容器化技术正变得越来越流行,而Docker无疑是其中的佼佼者,本文我们就来聊聊如何使用Docker构建一个简单的Py... 目录引言一、准备工作二、创建 Flask 应用程序三、创建 dockerfile四、构建 Docker

python编写朋克风格的天气查询程序

《python编写朋克风格的天气查询程序》这篇文章主要为大家详细介绍了一个基于Python的桌面应用程序,使用了tkinter库来创建图形用户界面并通过requests库调用Open-MeteoAPI... 目录工具介绍工具使用说明python脚本内容如何运行脚本工具介绍这个天气查询工具是一个基于 Pyt

Ubuntu设置程序开机自启动的操作步骤

《Ubuntu设置程序开机自启动的操作步骤》在部署程序到边缘端时,我们总希望可以通电即启动我们写好的程序,本篇博客用以记录如何在ubuntu开机执行某条命令或者某个可执行程序,需要的朋友可以参考下... 目录1、概述2、图形界面设置3、设置为Systemd服务1、概述测试环境:Ubuntu22.04 带图

Python程序打包exe,单文件和多文件方式

《Python程序打包exe,单文件和多文件方式》:本文主要介绍Python程序打包exe,单文件和多文件方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录python 脚本打成exe文件安装Pyinstaller准备一个ico图标打包方式一(适用于文件较少的程

Python程序的文件头部声明小结

《Python程序的文件头部声明小结》在Python文件的顶部声明编码通常是必须的,尤其是在处理非ASCII字符时,下面就来介绍一下两种头部文件声明,具有一定的参考价值,感兴趣的可以了解一下... 目录一、# coding=utf-8二、#!/usr/bin/env python三、运行Python程序四、

电脑蓝牙连不上怎么办? 5 招教你轻松修复Mac蓝牙连接问题的技巧

《电脑蓝牙连不上怎么办?5招教你轻松修复Mac蓝牙连接问题的技巧》蓝牙连接问题是一些Mac用户经常遇到的常见问题之一,在本文章中,我们将提供一些有用的提示和技巧,帮助您解决可能出现的蓝牙连接问... 蓝牙作为一种流行的无线技术,已经成为我们连接各种设备的重要工具。在 MAC 上,你可以根据自己的需求,轻松地

无法启动此程序因为计算机丢失api-ms-win-core-path-l1-1-0.dll修复方案

《无法启动此程序因为计算机丢失api-ms-win-core-path-l1-1-0.dll修复方案》:本文主要介绍了无法启动此程序,详细内容请阅读本文,希望能对你有所帮助... 在计算机使用过程中,我们经常会遇到一些错误提示,其中之一就是"api-ms-win-core-path-l1-1-0.dll丢失

SpringBoot后端实现小程序微信登录功能实现

《SpringBoot后端实现小程序微信登录功能实现》微信小程序登录是开发者通过微信提供的身份验证机制,获取用户唯一标识(openid)和会话密钥(session_key)的过程,这篇文章给大家介绍S... 目录SpringBoot实现微信小程序登录简介SpringBoot后端实现微信登录SpringBoo

uniapp小程序中实现无缝衔接滚动效果代码示例

《uniapp小程序中实现无缝衔接滚动效果代码示例》:本文主要介绍uniapp小程序中实现无缝衔接滚动效果的相关资料,该方法可以实现滚动内容中字的不同的颜色更改,并且可以根据需要进行艺术化更改和自... 组件滚动通知只能实现简单的滚动效果,不能实现滚动内容中的字进行不同颜色的更改,下面实现一个无缝衔接的滚动