历史上的今天
今天是:2024年10月11日(星期五)
2021年10月11日 | 基于51单片机射频RFID卡考勤人数计数系统设计
2021-10-11 来源:eefocus
一.硬件方案
“考勤管理系统”是以RFID射频卡为信息识别载体的适用于企业单位或学校的考勤管理系统。
本设计由51单片机电路+RFID模块电路+1602液晶显示电路+按键电路+蜂鸣器报警电路+电源电路组成。:

二.设计功能
(1)系统有3张卡,分别代表依次是张三、李四、王二。
(2)任何一个人刷卡成功能,1602液晶响应显示,未刷卡显示空“ ”位置上空的,刷卡成功后相应位置显示有人。
(3)液晶第二行显示刷卡人数,即出勤总人数。
(4)按下按键表示上课,如果签到人数和总人数不符合,蜂鸣器报警处理。
三.设计原理图
(1)原理图主要采用AD软件进行设计,如图:

(2)PCB图如下:

四.软件设计
(1)程序流程图

(2)主程序源码
void main (void)
{
unsigned char disPlace=0; //显示位置
Init_Timer0(); //定时器0初始化
UART_Init(); //串口初始化
buzzer = 0; //报警 开
LCD_Init(); //初始化液晶
DelayMs(100); //延时有助于稳定
LCD_Clear();
buzzer = 0; //报警 关
PcdReset();//复位RC522
PcdAntennaOn();//开启天线发射
sprintf(dis0,"ZS:%c LS:%c WE:%c ",zsFlag,lsFlag,weFlag);//打印数据
LCD_Write_String(0,0,dis0);//显示第二行
while (1) //主循环
{
if(PcdRequest(0x52,Temp)==MI_OK) //检测到卡号
{
if(PcdAnticoll(UID)==MI_OK) //读取卡号成功
{
uartSendByte(0x00); //串口发送卡号
uartSendStr(UID,4);
uartSendByte(0x00);
if((UID[0]==zsID[0])&&(UID[1]==zsID[1]))//张三 到
{
if(zsFlag != 0xff) //第一次刷到该卡
{
zsFlag =0xff; //显示 到
time_20ms = 8;buzzer = 0; //蜂鸣器短暂鸣叫
}
}
else if((UID[0]==lsID[0])&&(UID[1]==lsID[1]))//李四 到
{
if(lsFlag != 0xff) //第一次刷到该卡
{
lsFlag =0xff; //显示 到
time_20ms = 8;buzzer = 0; //蜂鸣器短暂鸣叫
}
}
else if((UID[0]==weID[0])&&(UID[1]==weID[1]))//李四 到
{
if(weFlag != 0xff) //第一次刷到该卡
{
weFlag =0xff; //显示 到
time_20ms = 8;buzzer = 0; //蜂鸣器短暂鸣叫
}
}
}
}
if(disFlag == 1)
{
sprintf(dis0,"ZS:%c LS:%c WE:%c ",zsFlag,lsFlag,weFlag);//打印数据
LCD_Write_String(0,0,dis0);//显示第二行
manNum=0; //清空总人数
if(zsFlag==0xff) //张三到 +1
{manNum=manNum+1;}
if(lsFlag==0xff)
{manNum=manNum+1;} //李四到 +1
if(weFlag==0xff)
{manNum=manNum+1;} //王二到 +1
sprintf(dis1,"ZongRen:%d ",(int)manNum);//打印数据
LCD_Write_String(0,1,dis1);//显示第二行
disFlag =0;
}
if(key == 0) //按键按下
{
if(manNum != 3) //人数不够
{
buzFlag = 1; //蜂鸣器报警标志
}
}
}
}
下一篇:基于51单片机的盆栽自动浇花系统
史海拾趣
|
本帖最后由 jameswangsynnex 于 2015-3-3 19:57 编辑 我公司是JM系列IC的一级代理商,下面是JM IC的功能型号简介: JMicron智微科技主要产品研发方向为高速串行式连结(High Speed Serial Link)的相关技术,该技术现已广泛应用于Serial ATA、PCI E ...… 查看全部问答> |
|
本帖最后由 paulhyde 于 2014-9-15 08:58 编辑 概述 我们对处理速度的需求日益增长,伴随着这种增长,用来构建单片机的晶体管尺寸则在持续减小。以更低的成本实现更高的集成度,也促进了对更小的几何尺寸的需求。随着尺寸的减小,晶体管击穿电压 ...… 查看全部问答> |
|
请问各位大侠,C++.net能开发硬件程序吗,就是那种控制门口挡车杆升降的程序。 如果不能,那可以用VisualC++开发吗? 多种语言开发的程序可不可以组成一个软件上那? 谢谢各位。… 查看全部问答> |
|
有谁知道PROTEUS的第三方元件库怎么添加啊,我用的是7.5sp3的版本,我把.lib文件加到元件库里面但是还是以前那些元件,这是怎么回事啊?请大家帮帮忙!!!谢谢… 查看全部问答> |
|
【重量级】使用RT-Thread RTOS及附属组件的LM3S8962评估板的例程 Introduction •这是使用RT-Thread RTOS及附属组件的LM3S8962评估板例程,对LM3S系列其他芯片也同样适用。所有例程源码来自开源实时操作系统RT-Thread的官方SVN源码服务器。这儿将例程做成了一个个单独的工程,目的是为了使刚接触RT-Thread的 ...… 查看全部问答> |
|
07.28【每周讨论】相信大家都知道C语言了,那么E(易)语言呢? 第一次听说E语言听过,不了解最近刚刚知道一点点知道,感觉不错 [ 本帖最后由 longxtianya 于 2011-7-30 19:48 编辑 ]… 查看全部问答> |




