【单片机毕业设计8-基于stm32c8t6的RFID校园门禁系统】
前言
🔥这里是小殷学长,单片机毕业设计篇8基于stm32的RFID校园门禁系统
🧿创作不易,拒绝白嫖可私
一、功能介绍
------------------------------------------RFID校园门禁系统-----------------------------------------
1.OLED实时显示,进校 出校人数,门禁状态,门开关的时间
2.WIFI远程监控(数据上传Onenet云平台)
3.语音播报"欢迎进行校园","离校注意安全"等
4.将当前数据发送手机蓝牙
5.晚上自动开灯(晚点6点门禁灯光自动亮,到第二天早上6点自动熄灭)
6.可通过按键,蓝牙调节时间,开关门的延时时间,灯光的照明亮度
🔥 实物展示
二、硬件部分
下面为该毕设中所用到的相关硬件说明,具体参数不做细节描述
c
硬件材料
c
PCB和原理图
三、软件部分
main.c部分代码
c
/*****************************************主函数*********************************/
int main(void)
{
unsigned char *dataPtr = NULL;
unsigned short timeCount = 0; //发送间隔变量
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_4);//设置系统中断优先级分组4
delay_init(); //延时初始化
LED_Init(); // led初始化
Buzzer_Init(); //蜂鸣器初始化
KEY_Exit_Init(); //按键初始化
Init_Usart(); //串口初始化
RC522_Init(); //RFID初始化
TIM3_PWM_Init(); //定时器初始化
Moto_Init(); //电机初始化
OLED_Init(); //初始化OLED
delay_ms(500);
OLED_Clear(0); //清屏
#if WIFI_START
Oled_WIFI(); //显示wifi连接
printf("wait wifi connect...\r\n");
ESP8266_Init(); //初始化ESP8266
//printf("8266_INIT_END\n");
while(OneNet_DevLink()) //接入OneNET
delay_ms(500);
printf("接入onenet成功");
work_mode = 1;
Buzzer_Voice();
Buzzer_Voice();
delay_ms(500);
OLED_Clear(0); //清屏
#endif
Interface_Init(); //主界面
Buzzer_Voice(); //开机蜂鸣器提示
while(1)
{
//Interface_Task(work_mode); //界面显示任务(定时器中进行更新)
Logical_Task(); //逻辑控制
Usart_Task(); //串口处理任务
Card_Tsk(); //RFID处理任务
#if WIFI_START
if(++timeCount >= 150) //时间间隔1s
{
OneNet_SendData();//发送数据给onenet
//printf("send_data_end\n");
timeCount = 0;
ESP8266_Clear();
}
dataPtr = ESP8266_GetIPD(0);//获取平台返回的数据
if(dataPtr != NULL)//如果返回数据不为空
OneNet_RevPro(dataPtr);//平台返回数据检测
delay_ms(10);
delay_ms(200);
#endif
TIM_SetCompare1(TIM3,LED_Status);
}
}
总结
c
上面为基于stm32f103c8t6的RFID校园门禁系统,源码,pcb和原理图以及相关文档说明做了详细说明,有需可私
🧿创作不易,拒绝白嫖