admin管理员组

文章数量:1531499

基于51单片机智能停车场管理车位引导系统设计

  • 0、毕业设计选题原则说明(重点)
  • 1、项目简介
    • 1.1 系统构成
    • 1.2 系统功能
    • 1.3 演示视频
  • 2、部分电路设计
    • 2.1 STC89C52单片机核心系统电路设计
    • 2.2 LCD1602液晶显示模块电路设计
    • 2.3 红外避障模块电路设计
  • 3、部分代码展示
    • 3.1 让液晶从某个位置起连续显示一个字符串
    • 3.2 串口初始化
    • 3.3 定时器初始化

0、毕业设计选题原则说明(重点)

  • 选题之前,同学们要弄明白一件事情,做毕业设计是干什么用的!
  • 这里我告诉大家,毕业设计对于你来说,不是让你去搞研究,掌握运用所学知识的,也不是让你去比谁做的毕业设计多么牛逼,多么厉害。
  • 说白点,它的作用就是一个,让你顺利毕业,能够拿到学位证,毕业证而已!!!
  • 当你明白这一点后,作毕业设计的要求就是在满足老师的要求后,越简单越好,这样不但容易去做,而且你自己也容易去理解,掌握,同样也能花最少的钱!!!
  • 满足老师的要求,这个没办法,毕竟他是决定你是否能通过答辩的人。
  • 每年都有很多同学找到我的时候,后悔当初为什么要把功能写的那么复杂,后悔没有提前找我咨询一下!所以在这里提醒同学们,提交开题报告之前一定要多想想,咨询下以往的学长学姐,不要自己随便写一堆提交上去!!!
  • 大家找不到学长学姐的话,也可以找我咨询,我可以给大家一些建议
  • 点击此处即可咨询

1、项目简介

  • 演示视频,简介内包含资料
  • https://www.bilibili/video/BV1Pc411v7m3

1.1 系统构成

本设计由STC89C52单片机电路+红外对管传感器+LCD1602液晶显示电路+LED指示灯电路+电源电路组成。

1.2 系统功能

  • 1、通过红外对管模块实时检测车位是否占用,车位分为1车位,2车位,3车位。
  • 2、液晶实时显示车位是否被占用、车位被占用数、空车位数,红外对管有检测遮挡距离近,表示停有车辆。
  • 3、车位处是否停车并有状态指示灯指示。

1.3 演示视频

  • https://www.bilibili/video/BV1Pc411v7m3

2、部分电路设计

2.1 STC89C52单片机核心系统电路设计

STC89C52单片机最小系统电路由复位电路、时钟电路和电源电路。拥有这三部分电路后,单片机即可正常工作。

单片机最小系统原理图如下图所示:

2.2 LCD1602液晶显示模块电路设计

LCD显示器分为字段显示和字符显示两种。其中字段显示与LED显示相似,只要送对应的信号到相应的管脚就能显示。字符显示是根据需要显示基本字符。本设计采用的是字符型显示。系统中采用LCD1602作为显示器件输出信息。

系统中采用LCD1602作为显示器件输出信息。在本电路中电位器可以调节液晶显示的对比度即清晰度。

其具体电路原理图如下图所示:

实物图如下图所示:

2.3 红外避障模块电路设计

该红外避障传感器是基于红外对管模块的红外避障传感器。该传感器模块对环境光线适应能力强,其具有一对红外线发射与接收管,发射管发射出一定频率的红外线,当检测方向遇到障碍物(反射面)时,红外线反射回来被接收管接收,经过比较器电路处理之后,绿色指示灯会亮起,同时信号输出接口输出数字信号(一个低电平信号),可通过电位器旋钮调节检测距离,有效距离范围 2~30cm,工作电压为3.3V-5V。该传感器的探测距离可以通过电位器调节、具有干扰小、便于装配、使用方便等特点,可以广泛应用于机器人避障、避障小车、流水线计数及黑白线循迹等众多场合。

其具体电路原理图如下图所示:

3、部分代码展示

3.1 让液晶从某个位置起连续显示一个字符串

void DispStr(uchar x,uchar y,uchar *ptr) 
{
    uchar *temp;
    uchar i,n = 0;
    
    temp = ptr;
    while(*ptr++ != '\0')   n++;
    
    for (i=0;i<n;i++)
    {
        Disp1Char(x++,y,temp[i]);
        if (x == 0x10)
        {
            break;
        }
    }
}

3.2 串口初始化

void UART_Init(void)
{
    SCON  = 0x50;		        // SCON: 模式 1, 8-bit UART, 使能接收  
    TMOD |= 0x20;               // TMOD: timer 1, mode 2, 8-bit 重装
    TH1   = 0xFD;               // TH1:  重装值 9600 波特率 晶振 11.0592MHz
	TL1 = TH1;  
    TR1   = 1;                  // TR1:  timer 1 打开                         
    EA    = 1;                  //打开总中断
    ES    = 1;                  //打开串口中断
}

3.3 定时器初始化

void Init_Timer0(void)
{
	TMOD |= 0x01;	  //使用模式1,16位定时器,使用"|"符号可以在使用多个定时器时不受影响		     
	TH0=(65536-20000)/256;		  //重新赋值 20ms
	TL0=(65536-20000)%256;
	EA=1;            //总中断打开
	ET0=1;           //定时器中断打开
	TR0=1;           //定时器开关打开
}

本文标签: 毕业设计车位单片机系统智能停车场