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

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

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

1、项目简介

  • 选题指导,项目分享: https://gitee.com/lighter-z/embedded-base/tree/master
  • 点击查看详细资料

1.1 系统构成

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

1.2 系统功能

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

2、部分电路设计

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

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

单片机最小系统原理图如下图所示:
毕业设计 基于51单片机智能停车场管理车位引导系统设计_第1张图片

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

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

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

其具体电路原理图如下图所示:
毕业设计 基于51单片机智能停车场管理车位引导系统设计_第2张图片

实物图如下图所示:
毕业设计 基于51单片机智能停车场管理车位引导系统设计_第3张图片

2.3 红外避障模块电路设计

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

其具体电路原理图如下图所示:
毕业设计 基于51单片机智能停车场管理车位引导系统设计_第4张图片

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;           //定时器开关打开
}

你可能感兴趣的:(毕业设计,单片机,毕业设计,智能停车场,车位引导,lcd1602)