毕设 基于射频RFID智能刷卡门禁系统设计

1、用户密码以及IC卡号和IC卡刷入序列号,保存到STC12C5A60S2的EEPROM中,实现掉电数据保存功能。

2、支持非接触式IC卡授权功能,可连续授权(授权需输入管理员密码程序默认“000”)。

3、支持手动选卡销卡,支持单卡刷入销卡,支持注销所有卡(注销所有卡需输入管理员密码程序默认“000”)

4、自动识别非接触式IC卡功能。如刷授权过的IC卡,提示“欢迎光临”,显示卡号并且开门,5秒后自动关门。如果刷未授权的IC卡,提示“该卡未授权”,显示卡号不开门。

5、如忘记携带IC卡,可通过键盘手动输入用户密码,程序默认“000000”。密码输入错误,显示器会出现错误提示且继电器不工作(不开门);若密码输入正确则继电器工作(开门)。

6、支持手动更改用户密码(更改用户密码需输入管理员密码程序默认“000”)

7、支持待机时钟显示功能(功能:显示年月日时分秒周,阴历,天干地支,生肖,温度,可改时间,具有掉电走时功能)

//延时
void delay(int i)
{
	unsigned char d, j;
   while(--i)
   {
	d = 2;
	j = 239;
	do
	{
		while (--j);
	} while (--d);    
   }
}
//写指令到LCD
void write_cmd(unsigned char cmd)
{
 char i;
 lcd_rs=0;
 for(i=0;i<8;i++)
 {
  lcd_sclk=0;
  if(cmd&0x80) lcd_sid=1;
  else lcd_sid=0;
  lcd_sclk=1;
  cmd<<=1;
 }
}
//写数据到LCD
void write_dat(unsigned char dat)
{
 char i;
 lcd_rs=1;
 for(i=0;i<8;i++)
 {
  lcd_sclk=0;
  if(dat&0x80) lcd_sid=1;
  else lcd_sid=0;
  lcd_sclk=1;
  dat<<=1;
 }
}
//LCD初始化
void lcd_init()
{
 lcd_cs=0;
 rom_cs=0;
// lcd_reset=0;//低电平复位
 delay(20);
// lcd_reset=1;//复位完毕
 delay(20);
 write_cmd(0xe2);//软件复位
 delay(5);
 write_cmd(0x2c);//升压步骤1
 delay(5);
 write_cmd(0x2e);//升压步骤2
 delay(5);
 write_cmd(0x2f);//升压步骤3
 delay(5);
 write_cmd(0x23);//粗调对比度,范围:0x20-0x27
 write_cmd(0x81);//微调对比度
 write_cmd(0x2b);//微调对比度的值,范围:0x00-3f
 write_cmd(0xa2);//1/9偏压比(bias)
 write_cmd(0xc8);//行扫描顺序:从上到下
 write_cmd(0xa0);//列扫描顺序:从左到右
 write_cmd(0x60);//起始行:第一行开始
 write_cmd(0xaf);//开显示
 lcd_cs=1;
}

项目获取:

https://gitee.com/feifei1122/simulation-project

  • 14
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值