基于stm32F103C8T6的智能门禁(毕业设计)

在这里插入图片描述▬▬▬▬▬▶智能门禁◀▬▬▬▬▬

刷卡


⚔️前言

分享一期RC522刷卡模块做的门禁系统

功能文字说明(拓展空间非常大)

识别卡号以及卡类并显示

刷管理卡 按下按键 提示刷卡录入(刷未录入的卡即可录入)

再次刷卡 会显示卡号以及卡类

实际的项目中添加了舵机,语音播报模块,大家也可根据自己的需求任意修改

刷用户卡 按下按键 提示刷卡录入(刷未录入的卡即可录入)

刷用户卡 按下按键 提示刷卡录入(刷未录入的卡即可录入)


⚔️硬件部分

F103C8T6最小系统
在这里插入图片描述


RC522刷卡模块

接线说明

VCC接3.3V

SDA,SCK,MOSI,MISO根据引脚配置连接

RQ悬空(不用接)

RST接3.3V(波特率设置为9600)

在这里插入图片描述


轻触按键

找一块以前测试的洞洞板, 随意焊接一个小按键,对脚用排针引出更方便连接

在这里插入图片描述


⚔️部分代码

#include "stm32f10x.h"
#include "usart.h"
#include "sys.h"
#include "oled.h"
#include "delay.h"
#include "rc522_function.h"
#include "rc522_config.h"
#include "timer.h"
#include "read_card.h"
#include "rtc.h" 
#include "usmart.h"
#include "key.h"
#include "stmflash.h"
#include "MP3.h"
const u8 TEXT_Buffer[]={"STM32F103 FLASH TEST"};
u8 USERResult;//IC卡匹配结果
u8 Look_Start;//门禁状态
u8 Key_Value;//按键值
extern u8 flag;
extern int lu;
extern int lz;
 int main(void)
 {
  u8 datatemp[30];
	u8 sss,aaa;
  delay_init();	
	NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);	 
  uart_init(9600);
	TIM3_PWM_Init(899,0);
	RC522_Init ();
	KEY_Init();	 
	usmart_dev.init(SystemCoreClock/1000000);	
	RTC_Init(); 
	PcdReset (); 
	MP3_Init();
	M500PcdConfigISOType ( 'A' );//设置工作方式
	OLED_Init();			
	OLED_Clear();
	delay_ms(100);
	 while(1)
	 {
	  display_time(0,0,calendar.sec);//显示时间
		oledkaiji();
		delay_ms(100);
		IC_test ();//IC卡检测,还需要修改		 
		 Key_Value=KEY_Scan(0);
		if((flag==0x01)&&(Key_Value==1))
		 {
			 OLED_Clear();
		   cunka();//显示 刷卡录入
			 //舵机关闭
			 delay_ms(1000);
			 while(lu)
			 {	 
			  lurukahao();
				//duka();
			 }
			 flag=0; 
			 delay_ms(1000);
			 OLED_Clear();
			 OLED_Clear();
	   }
		 if((flag==2)&&(Key_Value==1))
		 {
			 OLED_Clear();
		   //cunka1();//显示 刷卡录入
			 //打印卡号,保存到flash
			 flag=0; 
			 delay_ms(1000);
			 OLED_Clear();
			 OLED_Clear();
	   }
	 if((flag==1)&&(Key_Value==2))
		 {
			 TIM_SetCompare3(TIM3,37000);
			 flag=0;
	   }
	 
		 if((flag==2)&&(Key_Value==2))
		 {
		  //MP3_choose(3);//没有权限关门
		 }			 
		 
		 if(Key_Value==3)
		 {
			 OLED_Clear();
			 while(lz)
			 {	 
				 
			  //shanchukahao();
				delay_ms(1000);
				sk1();
				OLED_Clear();
			  OLED_Clear();
				//duka();
			 }
		    //flag=0; 
		 }
		 
	 
 }
 
 
 
 

}

在这里插入图片描述▬▬▬▬▬▶工程获取点击下方◀▬▬▬▬▬

  • 28
    点赞
  • 174
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 42
    评论
评论 42
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

日落悬崖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值