51单片机最小系统循迹小车(带源码)

这篇具有很好参考价值的文章主要介绍了51单片机最小系统循迹小车(带源码)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

51单片机循迹小车是初学者最容易的一个项目,做好一辆小车就相当于入门单片机了。在做项目之前要学习单片机的相关的知识,不要急于求成。红外寻迹小车_哔哩哔哩_bilibili,这是我做的小车基本框架,没有思路的同学可以参考一下。

一. 要准备的基本模块

首先仔细想想小车需要什么?

  1. 轮子,用普通的轮子就行。

  1. 直流电机,用这种简单的直流电机就行了,价格也便宜,很适合初学者,在这家店里也就几块钱。

51单片机最小系统循迹小车(带源码)
  1. 电源,用18650锂电池就行,这东西也是便宜。

51单片机最小系统循迹小车(带源码)

这些是搭建一个小车的最基本的东西。这些东西要准备好。

二. 51单片机最小系统

单片机最小系统可以在淘宝上买现成的最小系统板,这种板子最适合不过了。

51单片机最小系统循迹小车(带源码)

当然,自己画板子也是可以的,用嘉立创免费白嫖一块板子,我就是用自己画的最小系统板,好用也可以锻炼自己画板子的能力。嘉立创上面的开源最小系统板挺多的,找一找然后打印下来,然后买点电阻电容啥的自己焊起来,培养培养动手能力。画这个板子主要就是要留多电源接口。

51单片机最小系统循迹小车(带源码)

三. 红外循迹模块

红外循迹模块没啥说的,无非就是寻到黑线输出高电平还是低电平,然后用单片机引脚检测红外模块的输出口,我的红外模块是输出低电平,模块的L 、O、R分别接单片机的P3.7、P3.6、P3.5,VCC和GND接在单片机上的电源接口。至于巡线之后电机怎么转,可以想一想挖掘机怎么转弯的。

51单片机最小系统循迹小车(带源码)

四. 电机驱动TB6612

这个东西是必须要的,一般要使用电机的话都需要tb6612,单片机的接口接tb6612的接口如下,当然,还要接电源接口。VM要接5V以上的电源。tb6612的原理就不用多讲了,网上有很多资料。

bin1 = P2^6;

bin2 = P2^7;

ain1 = P2^4;

ain2 = P2^5;

pwma = P2^1;

pwmb = P2^0;

stby = P2^2;

然后两个电机分别接在AO1、AO2、BO1、BO2。

51单片机最小系统循迹小车(带源码)
51单片机最小系统循迹小车(带源码)

五. 降压模块

降压模块选择LM2596S降压模块,电池的正负极接IN+、IN-。OUT+、OUT-,接单片机的+5V和GND,然后tb6612的VM接在OUT+上面,调接电压到5V。

51单片机最小系统循迹小车(带源码)

六. 代码部分

#include<reg52.h>
unsigned char dlayleft,dlayright;
sbit bin1 = P2^6;
sbit bin2 = P2^7;
sbit ain1 = P2^4;
sbit ain2 = P2^5;
sbit pwma = P2^1;
sbit pwmb = P2^0;
sbit stby = P2^2; //TB6612,必须接,输出高电平。
sbit l = P3^7;
sbit o = P3^6;
sbit r = P3^5;
void  zhi()  //直走
{
dlayleft = 45;
dlayright = 52 ;
ain1 = 1;
ain2 = 0;
bin1 = 1;
bin2 = 0;
}
void zuo()//左转
{
dlayleft = 45;
dlayright = 48;
ain1 = 0;
ain2 = 1;
bin1 = 1;
bin2 = 0;
}
void you() //右转
{
dlayleft = 48;
dlayright = 45;
ain1 = 1;
ain2 = 0;
bin1 = 0;
bin2 = 1;
}
void timer0init()
{
    TMOD|=0x01;
    TH0=0xff;
    TL0=0x9c;
    
    EA=1;  
    ET0=1;
    TR0=1;  
}
//定时器中断服务函数
void timer0() interrupt 1
{
unsigned char i,j;
    TH0=0xff;
    TL0=0x9c;
    i++;
    j++;
    if(i<=dlayleft)//左轮占空比,控制左轮速度
        pwma=1;
    else
        pwma=0;
    
    if(j<=dlayright)
        pwmb=1;
    else
        pwmb=0;
    
    if(i==100)  //设置pwm周期=0.1ms*100=10ms
    {
        i=0;//加到100后变为0,重新计数
    }
    if(j==100)
    {
        j=0;
    }  
}
void xunji()
{ 
unsigned char flag;  
    if((l==0)&&(r==1))
    {
    flag = 0;//左边黑线
    }
    else if((l==1)&&(r==0))
    {
  flag = 1;//右边黑线
}
    else if((l==1)&&(r==1))
{
flag = 3; //两边都没黑线
}
else 
{
  flag = 4;
}
switch(flag)
{
case 0:  you();break;
case 1:  zuo();break;
case 3:  zhi();break;
case 4:  zhi();break;
default: zhi();break;
}
}
void main()
{
stby = 1;
    timer0init();
    while(1)
    {
    xunji();
    }
}

有问题的可以在评论区解答。文章来源地址https://www.toymoban.com/news/detail-411711.html

到了这里,关于51单片机最小系统循迹小车(带源码)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 基于单片机智能循迹小车仿真设计

    ** 单片机设计介绍,基于单片机智能循迹小车仿真设计   基于单片机的智能循迹小车是一种通过传感器检测地面情况,并根据设定的规则进行动作控制的机器人。它使用单片机作为主控制器,通过连接放置在车身底部的红外传感器和电机等组件来实现循迹和运动控制。 下

    2024年02月04日
    浏览(32)
  • 35、基于51单片机自动灭火避障智能小车 消防灭火小车系统设计

    智能作为现代的新发明,是以后的发展方向,他可以按照预先设定的模式在一个环境里自动的运作,不需要人为的管理,可应用于科学勘探等等的用途。智能小车就是其中的一个体现,本次设计的多功能智能灭火避障小车, 以 STC89C 52单片机作为微控制器,设计出一种 可以寻

    2024年02月03日
    浏览(35)
  • 51单片机最小系统制作完整流程

    目录 一、51单片机最小系统原理图 电源电路 晶振电路 按键复位电路 二、51单片机最小系统制作元器件表 三、51单片机最小系统实物展示   51单片机最小系统是51单片机能够正常运行的最基本电路,由电源电路、晶振电路和按键复位电路组成。 电源电路         电源电路中在

    2023年04月10日
    浏览(26)
  • 单片机/嵌入式小白教程—硬件(三)51单片机最小系统

    目录 简介 51单片机器件原理图 复位电路 供电电路 晶振电路 下载电路 最小系统原理图  更加方便的51单片机 传统51单片机最小系统包含:复位电路、供电电路、晶振电路、下载电路   其中, 第9脚(RST)为复位引脚, 第40脚(VCC)第20脚(GND)为供电引脚, 第19脚(XTAL1)第

    2024年02月08日
    浏览(56)
  • C51/C52单片机,最小系统

    一个小白,开始学习单片机,从C51/52开始, 我学习的型号是STC89C52单片机。 STC89C52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方

    2024年02月12日
    浏览(27)
  • AltiumDesigner20绘制51单片机最小系统原理图详细流程

    概述: 所用软件:AltiumDesigner 20; 绘制STC89C51最小系统(仅能够实现单片机的运行); 前言(可忽略):   本来想着是直接上绘制流程,但是想了想还是决定说几句。在AD中无论是绘制什么电路原理图,我对于新手的建议是不要仅仅停留在依样画葫芦,相反地我们更应该先去

    2024年02月12日
    浏览(27)
  • 自学笔记:89c51单片机最小系统Protues篇

    什么是单片机最小系统? 单片机最小系统:单片机最小应用系统,使用 最少 的元件组成单片机能够工作的系统。 单片机最小系统 三要素 :电源模块,(晶振/时钟)振荡电路模块,复位电路模块 1,电源模块:供电。VCC端接正向5V电压,GND端接地。 51单片机全部引脚图(百

    2024年02月04日
    浏览(31)
  • 51单片机迷宫小车的设计

    本次迷宫小车设计,使用C51进行编程,实现小车的功能。本次完成的小车功能可分为两大模块,分别是硬件功能和软件功能。 总共有两部分来写,分别为: 硬件功能上实现了小车的底层驱动,如:红外检测,控制电机使小车进行直行,转弯,自动修正、红外的分时检测,发

    2024年02月06日
    浏览(35)
  • 【C51】10-基础51单片机的小车项目(51完结)

    10.1小车的安装 10.2电机模块的开发(L9110S) 接通 VCC , GND 模块电源指示灯亮, 以下资料来源官方,但是不对,根据下节课实际调试 IA1 输入高电平, IA1 输入低电平,【 OA1 OB1 】电机正转; IA1 输入低电平, IA1 输入高电平,【 OA1 OB1 】电机反转; IA2 输入高电平, IA2 输入低

    2024年02月08日
    浏览(32)
  • 【51单片机实例教程】智能小车(一)让你的小车跑起来

    文章目录 前言 一、硬件 1.小车底盘 2.51单片机最小系统板 3.L298N双路电机驱动板

    2024年02月11日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包