功能描述

1、采用51/52单片机;

2、采用RC522射频模块读卡功能;

3、采用AT24C02存储职位登记信息功能;

4、采用蜂鸣器提示功能;

5、采用DS1302实时时钟功能;

6、可设置射频卡职位登记分别为:主管、研发、生产。

7、根据打卡职位,判断打卡者是否迟到,并将结果显示在LCD12864上,并通过串口发送至上位机。

电路设计

采用Altium Designer作为电路设计工具。Altium Designer通过把原理图设计、PCB绘制编辑、拓扑逻辑自动布线、信号完整性分析和设计输出等技术的完美融合,为设计者提供了全新的设计解决方案,使设计者可以轻松进行设计,熟练使用这一软件必将使电路设计的质量和效率大大提高。

单片机管脚说明:

P0端口(P0.0-P0.7):P0口为一个8位漏极开路双向I/O口,每个引脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。

P1端口(P1.0-P1.7):P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高电平,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。

P2端口(P2.0-P2.7):P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口,用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。

P3端口(P3.0-P3.7):P3口管脚是一个带有内部上拉电阻的8位的双向I/O端口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入端时,由于外部下拉为低电平,P3口将输出电流(ILL)。P3口同时为闪烁编程和编程校验接收一些控制信号。

VCC(40):供电电压,其工作电压为5V。
GND(20):接地。

RST(9):复位输入。在振荡器运行时,有两个机器周期(24个振荡周期)以上的高电平出现在此引脚时,将使单片机复位,只要这个引脚保持高电平,51芯片便循环复位。复位后P3.0-P3.7口均置1,引脚表现为高电平,程序计数器和特殊功能寄存器SFR全部清零。当复位脚由高电平变为低电平时,芯片为ROM的00H处开始运行程序。复位操作不会对内部RAM有所影响。

ALE/PROG (30):当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地低位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如果想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,则置位无效。

PSEN(29):外部程序存储器的选通信号。在由外部程序存储器取指令期间,每个机器周期两次PSEN有效。但在访问外部数据存储器时,这两次有效的PSEN信号将不出现。

XTAL1(19):来自反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2(18):来自反向振荡器的输出。

EA/VPP(31):当EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,EA将内部锁定为RESET;当EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V的编程电源(VPP)。

主程序设计

void main(void)    //主函数
{   INT8U idata temp[3];Delay_ms(50); //让硬件稳定init_all();       //执行初始化函数beep1();       //beep test  display(0,0,0);  //显示初始化INIT_DS1302();  SendString("欢迎使用RC522考勤管理系系统\r\n");ctrl_process();while(1){ readTime();if(Key1==0)  //检测有按键按下{      beep=0;while(Key1==0);beep=1;states++;if(states>3) states=0;  //上一功?}if(Key2==0)    //检测有按键按下{beep=0;while(Key2==0);beep=1;if(states==1){WorkModel++;if(WorkModel>2)WorkModel=0;}else if(states==2)//小时校准{if(shi<23)shi=hour+1;WRITE_DS1302(DS1302_WRITE_PROTECT,DS1302_WRITE_PROTECT_NO);    //禁止写保护WRITE_DS1302(WRITE_DS1302_HOUR,shi);                         //小时WRITE_DS1302(DS1302_WRITE_PROTECT,DS1302_WRITE_PROTECT_OFF);    //允许写保护}else if(states==3)//分钟校准{if(fen<59)fen=minute+1;WRITE_DS1302(DS1302_WRITE_PROTECT,DS1302_WRITE_PROTECT_NO);  //禁止写保护WRITE_DS1302(WRITE_DS1302_MINUTE,fen);                       //分钟WRITE_DS1302(DS1302_WRITE_PROTECT,DS1302_WRITE_PROTECT_OFF);    //允许写保护}}

源文件获取

关注公众号-电子开发圈,首页回复 “考勤” 获取;

基于单片机的RFID考勤刷卡电路设计(#0207)相关推荐

  1. 基于51单片机的RFID一卡通刷卡扣费充值系统设计原理图程序设计

    硬件设计 (末尾附文件) 原理图: 程序设计 #include<reg52.h> // #include<stdio.h> #include <intrins.h> ...

  2. 基于单片机的RFID门禁卡的设计

    proface:随着电子行业不断发展,人们对开锁的多样化,要求越来越高,本系统是利用单片机对射频卡RFID-RC522的操作,对卡的读写,单片机做判断,从而决定门锁的开与关,同时它还具备了密码开锁的功 ...

  3. 基于单片机射频RFID卡公司考勤控制系统设计(毕设课设资料)

    113[电路方案]基于单片机射频RFID卡公司考勤系统方案设计 [资源下载]下载地址如下: https://docs.qq.com/doc/DTlRSd01BZXNpRUxl 功能描述: 本设计由ST ...

  4. 【单片机毕业设计】【mcuclub-cl-007】基于单片机的RFID高速收费的设计

    最近设计了一个项目基于单片机的RFID高速收费系统,与大家分享一下: 一.基本介绍 项目名:RFID高速收费 项目编号:mcuclub-cl-007 单片机类型:STC89C52 具体功能: 1.车辆 ...

  5. 基于单片机自动智能浇花系统电路设计(毕业设计资料)

    摘要: 1.基于51单片机自动智能浇花系统设计 本设计由STC89C52单片机电路+4位共阳数码管显示电路+ADC0832采样电路+水泵控制电路+土壤湿度传感器电路+按键电路+电源电路组成. 1.数码 ...

  6. 蓝桥杯C/C++百校真题赛(3期)Day3(考勤刷卡、最大和)

    Day3 Q1 考勤刷卡 Q2 最大和 Q1 考勤刷卡 问题描述 小蓝负责一个公司的考勤系统, 他每天都需要根据员工刷卡的情况来确定 每个员工是否到岗. 当员工刷卡时, 会在后台留下一条记录, 包括刷 ...

  7. 蓝桥杯_考勤刷卡 java

    问题描述 小蓝负责一个公司的考勤系统, 他每天都需要根据员工刷卡的情况来确定 每个员工是否到岗. 当员工刷卡时, 会在后台留下一条记录, 包括刷卡的时间和员工编号, 只 要在一天中员工刷过一次卡, 就 ...

  8. 基于uni-app+uni ui考勤打卡H5项目 定位打卡,日历打卡记录,考勤记录,绩效(地图位置)等

    基于uni-app+uni ui考勤打卡H5项目 功能点:定位打卡,迟到,外勤,日历打卡记录,请假,出差,补卡,考勤记录,绩效(地图位置)等: 前言 提示: 1.该项目所有数据基于前端为数据,后期可直 ...

  9. 基于Android的校园考勤打卡app

    需求信息: 员工客户端: 1:注册登录:使用分配的账号进行登录: 2:考勤打卡:用户每天可以进行上班打开和下班打卡: 3:加班信息:用户可以填写自己每天的加班记录信息: 4:企业通知:用户可以查看发布 ...

最新文章

  1. 下午花一小时整理的JVM运行时方法区
  2. python3.6安装numpy-Python3.6的组件numpy的安装
  3. 数据结构之单链表(golang版)
  4. vue 中 created 和 mounted 钩子生命周期 问题
  5. ps计算机按键.,计算机一级Photoshop视图操作快捷键
  6. 解决maven项目jdbc报错:java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
  7. MovieLens推荐系统数据集官方文档+解释
  8. 美国迈阿密二手房房价预测
  9. Android 谷歌地图不显示,Android谷歌地图不显示在模拟器
  10. 优先队列(priority_queue)总结
  11. Elliptic Curve Cryptography: 轻轻的学
  12. 【游戏开发环境】Unity使用Mac电脑开发,开发环境的搭建(Mac mini M1 | VSCode | Git | 好用工具)
  13. 电脑蓝屏,睿频导致CPU温度过高解决方法
  14. 解密pdf-3(输入我们本国的文字--中文)
  15. 滴滴技术牛逼吗?看它开源了哪些有意思的项目
  16. Android Studio的Build Output出现乱码怎么办?莫韵乐与bug的奇妙冒险
  17. 电子电路设计基本概念100问(五)【学习目标:原理图、PCB、阻抗设计、电子设计基本原则、基本原器件等】
  18. 智慧城市同城V4 v2.2.8 同城 同城小程序 同城信息
  19. SRM系统是什么,SRM系统公司哪个更好?
  20. Intellij IDEA同时打开多个项目

热门文章

  1. 10.原码、反码、补码
  2. 《联邦学习实战》杨强 读书笔记十七——联邦学习加速方法
  3. 那些引用次数在15000次以上的都是什么神仙论文?
  4. java根据生日判断生日和星座
  5. 云游玩家福利 — 腾讯、罗技G“强强联手”,今年推出云游掌上电脑
  6. 机器人教育与编程教育的区别到底是什么?
  7. “丧偶式”恋爱?博士男友每晚12点才回家,要分手吗......
  8. 2023轻薄投影仪首选:极米Z6X Pro入手超值!
  9. postman脚本批量请求
  10. 两年后,我仍然想念耳机端口