资料编号:211
功能介绍:
该系统用于检测是否有车辆进出,是否有空余车位,应用单片机来控制其他模块以实现对车辆的数目、状态等的加减计数和状态显示,并利用单片机中的定时系统对车辆进出的时间限制以及设定,键盘系统的输入可以人工控制总车位数以及剩余车位数数值的显示。
系统概述:
本系统包括:电源模块、传感器模块、显示模块、手动键盘输入模块、车辆车位模拟模块等。它可以实现控制的开启、显示停车场现有车辆数和已停放过车辆数、人工的设置总车位数以及剩余车位数的数值显示等功能。并且拥有16个模拟的停车位,用来显示车辆停放的具体位置。
系统的特点:
由于本系统采用电子元件无需人工管理。
自动显示停车场的车位状态,进出和停放车辆统计。
统计小区当天已停放车辆总数,并且显示停放位置。
本系统适用于任意停车场。
检测小区车位车辆是否已满,报警指示灯闪烁。
系统的模拟框图:
部分程序展示:
void key() //独立按键程序
{
if(!K1) // 汽车进入
{
delay_1ms(20);
if(!K1)
{
while(!K1)
;
if(num_car==16) { beep=0; delay_1ms(200); beep=1;}
if(num_car<16) { num_car++; if(num_jin<=255) { num_jin++;} }
write_sfm2(1,4,num_jin);
write_sfm2(1,12,num_chu);
write_sfm2(2,4,num_car);
write_sfm2(2,12,16-num_car);
write_74hc595(num_2_led(num_car));
}
}
if(!K2) // // 汽车驶出
{
delay_1ms(20);
if(!K2)
{
while(!K2);
if(num_car>=1) {num_car--; if(num_chu<=255) { num_chu++;} }
write_sfm2(1,4,num_jin);
write_sfm2(1,12,num_chu);
write_sfm2(2,4,num_car);
write_sfm2(2,12,16-num_car);
write_74hc595(num_2_led(num_car));
}
}
/***********************手动修改小区内停车位*************************************/
if(!K3) // 人工调节
{
delay_1ms(20);
if(!K3)
{
while(!K3);
if(num_car<16) { num_car++; }
write_sfm2(1,4,num_jin);
write_sfm2(1,12,num_chu);
write_sfm2(2,4,num_car);
write_sfm2(2,12,16-num_car);
}
}
if(!K4) // // 人工调节
{
delay_1ms(20);
if(!K4)
{
while(!K4);
if(num_car>=1) {num_car--; }
write_sfm2(1,4,num_jin);
write_sfm2(1,12,num_chu);
write_sfm2(2,4,num_car);
write_sfm2(2,12,16-num_car);
}
}
}