【【胎教级51单片机智能小车设计】】

胎教级51单片机智能小车设计

从现在开始开一个新坑
称为创意工坊
主要更新一些有意思的设计

第一次手把手更新51单片机智能小车
胎教级教学人人都会
单片机实现的功能是通过蓝牙APP 控制小车前后左右移动
先讲明白这个小车
后续再在这个小车上更新其他的设计
【【胎教级51单片机智能小车设计】】_第1张图片
成品图

第一步:先介绍一下我所用的各种购买材料

我在拼多多购买了
【【胎教级51单片机智能小车设计】】_第2张图片

1. 51单片机最小系统

(如果你有STC89C52的单片机就不买了,因为我想多买一个做别的设计所以我买了这个套餐,成品+单片机)
【【胎教级51单片机智能小车设计】】_第3张图片
最小系统请务必买这种拉杆的
就是有一个扳手方便你下拉
我之前在淘宝买了
【【胎教级51单片机智能小车设计】】_第4张图片
这样的非常不好用,这种没有个拉杆 全靠自己的手插 插不进你还要掰管脚 很不方便
买最小系统 请认准 拉杆的

2. 杜邦线

杜邦线建议买 30cm + 10cm 的因为我身边有10cm 的所以我没买 如果你没有 建议买一下很好 帮助很大

接下来是我在淘宝上购买的

3. 电烙铁(非必须)

在这里插入图片描述
这个是非必须的 我在制作这个小车的时候并未使用到电烙铁 第一点因为 我怕焊接错了 没有悔改的地方 第二点 焊接还算是小危险吧 但是我买了 毕竟咱们以后想要做一些成品的不去修改的器件 还是需要用到电烙铁
第三点 这个小车 不用电烙铁也可以完成

4.L298n 驱动电机

【【胎教级51单片机智能小车设计】】_第5张图片
【【胎教级51单片机智能小车设计】】_第6张图片

5.智能小车底盘

在这里插入图片描述
【【胎教级51单片机智能小车设计】】_第7张图片
我买的是二驱 四驱是一样的
买小车送电池盒挺好
送的是四个电池的电池盒

6.HC-06蓝牙模块

【【胎教级51单片机智能小车设计】】_第8张图片
【【胎教级51单片机智能小车设计】】_第9张图片
要带底盘焊针

这就是上述材料 除了电烙铁非必须 其他都是必须的

第二步 拿到东西之后开始组装

小车的组装观看这个视频
再放一下链接
小车组装视频
这个是我们差不多同款的网上关于小车的视频都大同小异 这个安装最好

第三步 : 开始接线

接线在我的浏览寻找中没有一个人讲的很清楚都是模棱两可 听不懂 令人生气 我给大家讲清楚 !!!!!!!!
这里说明一下 导线是哪里来的
并且为什么不用电烙铁
我们把杜邦线剪掉头 就是导线 然后用打火机烧掉外衣 就会露出里面的铜丝
我们在很多时候拿铜丝绕几圈
拿铜丝塞进L298n 里面不是更方便吗

我们从电机出发
【【胎教级51单片机智能小车设计】】_第10张图片
电机的每个地方都要接
我们把它分成3个板块
第一个板块 电机上面写着12V GND 5V
怎么接看清楚操作
我们电池仓会多出两根线 一跟是正极 另一根是负极
【【胎教级51单片机智能小车设计】】_第11张图片
只关注这个部分 电池仓的正极线一根 记住仅正极接到开关的一脚 从开关的另一脚引出线接到电机的12V上
而电池仓的这个负极线直接接到电机的GND上
然后 电机的GND连接单片机的GND
电机的5V连接单片机的Vcc
(给单片机供电)

再把12V 和 5V 拿一根线串起来
为什么 我i直接在这里说明好了 因为电机驱动需要12V 但是我们普通的干电池 像南孚电池碱性电池仅1.5V 电池仓4个也就6V 完全支撑不起 把这端相连就能启动电机 了

最后电机1区的连线
12V
1.接从开关引出的电池仓正极线
2.和5V相连线

GND
1.电池仓的负极线
2.51单片机最小系统的GND

5V
1.51单片机最小系统的5V
2.和12V相连线

这是电机1区的线

我们接下来看电机的2区
电机的2区的是接发动机的两个引脚
【【胎教级51单片机智能小车设计】】_第12张图片
连过来 两边的电机都插入
有人问有没有先后之分 其实我并没有考虑先后左右 当我失败的时候我考虑了把接口换了一下哈哈哈

接下来考虑3区的接线

3区按照顺序接在单片机最小系统的
P00 P01 P02 P03 上
【【胎教级51单片机智能小车设计】】_第13张图片
四根线对四根线

到这里基本接线快结束了
直接拿起我们的蓝牙模块
蓝牙模块VCC 接 单片机最小系统的Vcc
GND 接单片机最小系统的GND
RXD 接单片机最小系统的TXD
TXD接单片机最小系统的RXD

如果你像我这么连接那么恭喜你已经完工了

下面烧录进代码

我默认你有烧录设备了那之前的普中的整个大开发板 如果没有那就需要买一个51单片机下载器了
代码如下

#include

#define uchar unsigned char
#define uint  unsigned int

sbit LB=P0^0;    //左边马达下接口     out2
sbit LF=P0^1;    //左上        out1
sbit RB=P0^2;    //右下        out4
sbit RF=P0^3;    //右上        out3

 void stop()
{
    LF=0;
    LB=0;
    RF=0;
    RB=0;
}

void forward()
{
    LF=1;
    LB=0;
    RF=1;
    RB=0;      
}

void back()
{
    LF=0;
    LB=1;
    RF=0;
    RB=1;    
}

void left()
{
    LF=0;
    LB=1;
    RF=1;
    RB=0;
}

void right()
{
    LF=1;
    LB=0;
    RF=0;
    RB=1;
    
}
void Com_Int(void) interrupt 4
{
    uchar receive_data;    
    EA = 0;
    if(RI == 1) 
    { 
        RI=0; 
        LF=0;
        RF=0;
        LB=0;
        RB=0;
        receive_data = SBUF;
        switch(receive_data)
        {
            case ('1'):
                forward();break;
            case ('2'):
                back();break;
            case ('3'):
                left();break;
            case ('4'):
                right();break;
            case ('0'):
                stop();break;
        }            
    }        
        EA = 1;
}
    
void UsartConfiguration()
{    
    SCON=0X50;    //SCON 是一个特殊功能寄存器,用以设定串行口的工作方式、接收/发送控制以及设置状态标志        
    TMOD=0X20;            
    PCON=0X00;        
    TH1=0Xfd;            
    TL1=0Xfd; //波特率为9600算出来的fd
    TR1= 1;                    
    ES = 1;        
        EA = 1;         
}


void main()
{
    UsartConfiguration();    
    while(1);    
}

也可以直接使用我的.hex文件

对于蓝牙软件

下载完成后先点击键盘设置一下键位
【【胎教级51单片机智能小车设计】】_第14张图片
【【胎教级51单片机智能小车设计】】_第15张图片
【【胎教级51单片机智能小车设计】】_第16张图片
因为我连接电机的时候并未在意 正反方向
如果这里出现在地上旋转 那把电机的2区域选择一边线交换一下
如果出现 和指令相违背 选择把 这里面消息的地方 1 2 3 4 改成正确的

第一次蓝牙连接需要输入密码1234

ok 结束了谢谢大家 希望大家喜欢

你可能感兴趣的:(创意工坊,51单片机,嵌入式硬件,单片机)