一:功能介绍

1、实物组成部分:采用stm32f103c8t6核心板+红外传感器+LED指示灯+蓝牙HC05模块+OLED显示屏;

2、采用红外传感器采集车位上面是否有车;

3、车位有车的时候,LED灭掉,如果有空车位,对应的LED亮起来;

4、采用LED引导灯指引司机寻找车位;

5、OLED显示车位状态;

6、蓝牙实时上传车位状态;

二:实物演示视频

274-基于stm32单片机智能停车场车位引导系统(程序+原理图+元器件清单)

三:程序代码预览(采用keil5编写,使用的C语言,程序有中文注释,新手容易看懂)

特别注意:下载资料包以后一定要先解压! !!(建议解压到桌面上,文件路径太深会导致程序打开异常),解压后再用keil5打开。

图片

图片

    void Hardware_Init(void){NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置中断优先级分组为组2:2位抢占优先级,2位响应优先级delay_init();			//延时函数初始化Usart1_Init(9600);	//串口1初始化为115200//	Usart2_Init(115200); 	//串口2,驱动ESP8266用LED_Init();				//LED初始化}int main(void){unsigned char *dataPtr = NULL;unsigned short timeCount = 30;	//发送间隔变量uint8_t status;long int num=0;u16 adcx,adcx1;int temp,temp1;Hardware_Init();				//初始化外围硬件OLED_Init();OLED_ColorTurn(0);OLED_DisplayTurn(0);	OLED_ShowString(0,0," NO1:",16); 	OLED_ShowString(0,16," NO2:",16); 	OLED_ShowString(0,32," NO3:",16); OLED_ShowString(0,48," NO4:",16);   OLED_Refresh();KEY_Init();DHT11_Init();while(1)	{	if(CW1==0)		{OLED_ShowString(50,0,"YES",16); 			LED1=0;printf("NO1:YES\r\n"); //蓝牙模块发送		}else 		{OLED_ShowString(50,0," NO",16); 			LED1=1;		printf("NO1:NO\r\n"); //蓝牙模块发送					}if(CW2==0)		{OLED_ShowString(50,16,"YES",16); 			LED2=0;printf("NO2:YES\r\n"); //蓝牙模块发送		}else 		{OLED_ShowString(50,16," NO",16); 			LED2=1;		printf("NO2:NO\r\n"); //蓝牙模块发送					}		if(CW3==0)		{OLED_ShowString(50,32,"YES",16); 			LED3=0;printf("NO3:YES\r\n"); //蓝牙模块发送		}else 		{OLED_ShowString(50,32," NO",16); 			LED3=1;		printf("NO3:NO\r\n"); //蓝牙模块发送					}		if(CW4==0)		{OLED_ShowString(50,48,"YES",16); 			LED4=0;printf("NO4:YES\r\n"); //蓝牙模块发送		}else 		{OLED_ShowString(50,48," NO",16); 			LED4=1;		printf("NO4:NO\r\n"); //蓝牙模块发送					}		OLED_Refresh();delay_ms(500);	}}

    四:原理图展示(源文件采用Altium Designer打开,公众号有安装包)

    图片

    图片

    五:实物图展示

    图片

    图片

    六:元器件清单展示

    图片

    7:资料清单展示(文件中包含的相关资料)

    图片

    配套实物资料下载

    更多推荐