项目介绍
本研究旨在设计并实现一款基于STM32单片机的多功能车位锁系统,该系统利用STM32单片机的高性能和低功耗特性,集成了距离检测、光照控制、蓝牙通信等多种智能技术,实现了对停车位的智能管理和自动控制。通过超声波模块实时监测车辆与车位锁之间的距离,借助光敏传感器调节停车区域的照明亮度,以蓝牙模块实现远程控制开锁,系统旨在提高停车效率、保障停车安全,并优化用户体验。
功能介绍
设计一个基于STM32的多功能车位锁。该设计能够帮助用户更方便地实现车位的监控和管理,用户可以通过这个系统精准地管理停车位,有效防止非法占用或损坏车位,为用户提供更加便捷的停车服务。该设计由主控制器、光敏电阻模块、超声波检测模块、蓝牙模块、语音播报模块等组成。
1)实现车位锁和车辆的蓝牙通信,在车辆距离车库一定距离后,打开车位锁,语音播报:可以安全停车,车辆离开后,车库进行自动上锁;
2)采用光敏电阻对光线强度进行检测,当光线太弱时自动补光;
3)采用超声波传感器检测车位有车时车锁不动作;
4)实现车位锁的开和关;
所用模块
系统原理图
实物图
部分代码
u8 set=20,set1=4;
u16 adcx,flag,flag1;
int main(void)
{
float temp;
delay_init(); //ÑÓʱº¯Êý³õʼ»¯
NVIC_Configuration();//ÉèÖÃNVICÖжϷÖ×é2:2λÇÀÕ¼ÓÅÏȼ¶£¬2λÏìÓ¦ÓÅÏȼ¶
uart_init1(9600); //´®¿Ú³õʼ»¯Îª9600
LED_Init(); //LED¶Ë¿Ú³õʼ»¯
Adc_Init(); //ADC³õʼ»¯
KEY_Init();
OLED_Init();
OLED_ShowCH(0,0,“light”);
OLED_ShowCH(0,2,“close”);
OLED_ShowCH(0,4,“dis”);
TIM2_PWM_Init(19,799); //²»·ÖƵ¡£PWMƵÂÊ=72000/900=8Khz
Timerx_Init(500,799); //10KhzµÄ¼ÆÊýƵÂÊ£¬¼ÆÊýµ½5000Ϊ500ms
UltrasonicWave_Configuration(); //¶Ô³¬Éù²¨Ä£¿é³õʼ»¯
while(1)
{
adcx=Get_Adc_Average(ADC_Channel_0,10)*0.02;
OLED_ShowNum(60, 0, adcx, 2,1);
OLED_ShowNum(100, 0, set, 2,1);
OLED_ShowNum(80, 2, flag1, 2,1);
OLED_ShowNum(100, 4, set1, 3,1);
delay_ms(250);
if(adcx<set)
{
GPIO_SetBits(GPIOA,GPIO_Pin_1); //PB.5 Êä³ö¸ß
}
if(adcx>set)
{
GPIO_ResetBits(GPIOA,GPIO_Pin_1); //PB.5 Êä³ö¸ß
}
if(GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_3)==1&&flag==0)
{
flag=1;
TIM_SetCompare3(TIM3,5);
delay_ms(300);
TIM_SetCompare3(TIM3,10);
delay_ms(300);
TIM_SetCompare3(TIM3,15);
delay_ms(300);
TIM_SetCompare3(TIM3,20);
delay_ms(300);//
OLED_ShowCH(0,2,"open ");
GPIO_SetBits(GPIOA,GPIO_Pin_2); //PB.5 Êä³ö¸ß
delay_ms(250);
delay_ms(250);
GPIO_ResetBits(GPIOA,GPIO_Pin_2); //PB.5 Êä³ö¸ß
}
if(GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_3)==0&&flag==1)
{
flag=0;
TIM_SetCompare3(TIM3,15);
delay_ms(300);
TIM_SetCompare3(TIM3,10);
delay_ms(300);
TIM_SetCompare3(TIM3,5);
delay_ms(300);
OLED_ShowCH(0,2,"close");
}
if(GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_6)==0)
{
delay_ms(80);
if(GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_6)==0)
{
flag1++;
if(flag1>=3)
{
flag1=0;
}
}
}
if(GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_7)==0&&flag1==1)
{
delay_ms(30);
if(GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_7)==0&&flag1==1)
{
set++;
if(set>99)
{
set=0;
}
}
}
if(GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_8)==0&&flag1==1)
{
delay_ms(30);
if(GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_8)==0&&flag1==1)
{
set--;
if(set<1)
{
set=99;
}
}
}
if(GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_7)==0&&flag1==2)
{
delay_ms(30);
if(GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_7)==0&&flag1==2)
{
set1++;
if(set1>99)
{
set1=0;
}
}
}
if(GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_8)==0&&flag1==2)
{
delay_ms(30);
if(GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_8)==0&&flag1==2)
{
set1--;
if(set1<1)
{
set1=99;
}
}
}
}
}
资料下载链接
「实物制作资料 分享.rar」,来自夸克网盘分享。
夸克网盘无需下载在线播放视频,畅享原画5倍速,支持电视投屏。
/7b80346jCs