资源简介
主要分析了单片机与RC522高频读卡器频模块的接口电路、报警电路、门锁继电器电路、液晶12864电路以及单片机最小系统。读卡器由读卡模块、单片机控制模块、射频天线以及智能IC卡组成。当有卡进入时,读卡器内数据后台通过单片机进行处理程序判断是不是合法IC卡,并且将卡号传送到液晶12864上显示。读卡器的软件部分主要包括程序设计,包括询卡、选择卡片、读取卡片等。
代码片段和文件信息
#include
#include “lpcreg.h“
#include “LCD1602.h“
#define uchar unsigned char
#define uint unsigned int
//extern unsigned char g_ucTempbuf[20];
//unsigned char code table1[]=“Welcome to System“;
//unsigned char code table2[]=“Thank you for using!“;
//unsigned char code table3[]=“Your Card ID is:“;
//unsigned char code table4[]=“Sign in Successfully!“;
//unsigned char code table4[]=“UltraLight“;
//unsigned char code table5[]=“M1(S50)“;
//unsigned char code table6[]=“M1(S70)“;
//unsigned char code table7[]=“Pro(X)“;
//unsigned char code table8[]=“DESFire“;
//unsigned char code table9[]=“Type:“;
// typedef unsigned char uint8;
//void delay(unsigned int z)
//{
// uint xy;
// for(x=z;x>0;x--)
// for(y=110;y>0;y--);
//}
void wait(void)
{
P0 = 0xFF;
do
{
RS = 0;
RW = 1;
EN = 0;
EN = 1;
}while (STA7 == 1);
EN = 0;
}
////////////写命令////////////////////////////
//void write_com(unsigned char com)
//{
//
// lcdrs=0;
// RW =0;
// P0=com;
// delay(5);
// lcden=1;
// delay(5);
// lcden=0;
//}
void w_cmd(uint8 cmd)
{
wait();
EN = 0;
P0 = cmd;
RS = 0;
RW = 0;
EN = 1;
EN = 0;
}
//////////////////////////////////////////////
////////////写数据////////////////////////////
//void write_data(unsigned char date)
//{
// lcdrs=1;
// RW =0;
// P0=date;
// delay(5);
// lcden=1;
// delay(5);
// lcden=0;
//}
void w_dat(uint8 dat)
{
wait();
EN = 0;
P0 = dat;
RS = 1;
RW = 0;
EN = 1;
EN = 0;
}
//////////////////////////////////////////////
//////////数值的转换格式 \ 显示数值 ////////////////
//void LCD_Data(unsigned char LCDbyte )
//{
// unsigned char count;
// count=(LCDbyte&0xf0)>>4;
// if (count>0x9) write_data(count%9+0x40);
// else write_data(count+0x30);
// count=LCDbyte&0x0f;
// if (count>9) write_data(count%9+0x40);
// else write_data(count+0x30);
//}
/////////////////////////////////////////////////////
/**
* 发送字符串到LCD
*/
void w_string(uint8 addr_start uint8 *p)
{
w_cmd(addr_start);
while (*p != ‘\0‘)
{
w_dat(*p++);
}
}
////////////初始化////////////////////////////
//void init()
//{
// lcden=0;
// write_com(0x38);
// write_com(0x0c);
// write_com(0x06);
// write_com(0x01);
//
//}
void Init_LCD1602(void)
{
w_cmd(0x38); // 16*2显示,5*7点阵,8位数据接口
w_cmd(0x0C); // 显示器开、光标开、光标允许闪烁
w_cmd(0x06); // 文字不动,光标自动右移
w_cmd(0x01); // 清屏
}
///////////////////////////////////////////////
// main()
//{
//
// Init_LCD1602();
//
// w_string(0x80table1);
// w_string(0xC0table2);
//
// while (1);
//}
//void display_welcome()
//{
// unsigned char num;
// write_com(0x80);//显示的起始地址
// for(num=0;num<17;num++)
// {
// write_data(table1[num]);
//
// }
// write_com(0x80+0x40);//显示的起始地址
// for(num=0;num<20;num++)
// {
// write_data(table2[num]);
//
// }
//
//
//
//}
//
//
//void display_cardnum()
//{
// unsigned char num;
//
// write_com(0x80);//显示的起始地址
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2017-01-02 14:31 89C52_RC522\
文件 4573 2017-01-01 16:11 89C52_RC522\LCD1602.c
文件 633 2016-12-06 18:54 89C52_RC522\LCD1602.h
文件 10694 2017-01-02 13:45 89C52_RC522\LCD1602.LST
文件 4119 2017-01-02 13:45 89C52_RC522\LCD1602.OBJ
文件 2827 2016-12-06 18:54 89C52_RC522\lpcreg.h
文件 4020 2017-01-02 14:30 89C52_RC522\MAIN.c
文件 964 2016-12-06 18:54 89C52_RC522\MAIN.H
文件 8776 2017-01-02 14:30 89C52_RC522\MAIN.LST
文件 15373 2017-01-02 14:30 89C52_RC522\MAIN.OBJ
文件 4939 2016-12-06 18:54 89C52_RC522\MFRC522.H
文件 35037 2017-01-02 14:30 89C52_RC522\RC522
文件 986 2016-12-06 19:31 89C52_RC522\RC522.build_log.htm
文件 11605 2016-12-07 15:35 89C52_RC522\RC522.C
文件 4711 2017-01-02 14:30 89C52_RC522\RC522.hex
文件 71 2017-01-02 14:30 89C52_RC522\RC522.lnp
文件 19298 2017-01-02 14:30 89C52_RC522\RC522.LST
文件 29430 2017-01-02 14:30 89C52_RC522\RC522.M51
文件 23190 2017-01-02 14:30 89C52_RC522\RC522.OBJ
文件 2070 2016-12-06 18:54 89C52_RC522\RC522.opt.bak
文件 10834 2017-01-02 14:31 89C52_RC522\RC522.plg
文件 2256 2016-12-06 18:54 89C52_RC522\RC522.Uv2.bak
文件 82737 2016-12-06 18:54 89C52_RC522\RC522.uvgui.Administrator
文件 72536 2016-12-08 22:37 89C52_RC522\RC522.uvgui.john
文件 73010 2016-12-06 18:54 89C52_RC522\RC522.uvgui.LENOVO
文件 80053 2016-12-06 18:54 89C52_RC522\RC522.uvgui_Administrator.bak
文件 65433 2017-01-02 14:31 89C52_RC522\RC522.uvopt
文件 13888 2016-12-31 18:56 89C52_RC522\RC522.uvproj
文件 0 2016-12-06 18:54 89C52_RC522\RC522_Uv2.Bak
文件 64930 2017-01-01 19:33 89C52_RC522\RC522_uvopt.bak
文件 14503 2016-12-06 18:54 89C52_RC522\RC522_uvproj.bak
............此处省略3个文件信息
- 上一篇:软件开发文档大全
- 下一篇:张林_康华光模拟电子课件
相关资源
- 12864多功能万年历
- 郭天祥的GSM与51单片机通信程序一
- MCS-51单片机定时器/计数器常见习题解
- 51单片机实现智能型孵化器的控制系统
- 51单片机7种常见时钟电路图
- 解析51单片机LED系统电路
- 51单片机实现usb鼠标
- 51单片机数码管滚动显示hello
- 16x16点阵程序
- 060 示波器 简易示波器 51单片机 仿真
- 0-999计数器的C51程序
- 电子万年历的设计51单片机 Proteus仿真
- 工程1 路口红绿灯.rar
- 基于51单片机的十字路口交通灯控制系
- GA6 gprs模块 51单片机 程序
- 51单片机交通灯电路及代码
- 51单片机交通灯 源代码+proteus仿真图
- 基于51单片机的直流电机PID控制
- 基于51单片机超声波测距毕业设计
- 8051 单片机 模块 程序例程
- STC-ISP51单片机
- 基于51单片机电子万年历的设计
- ESP8266AP模式控制51单片机亮灯.docx
- 51单片机控制步进电机软硬件实现
- 用51单片机做的简易电子琴
- 基于51单片机控制的婴儿电子驱蚊器的
- 用51单片机做的一个红外摇控电机的风
- 郭天祥十天学会单片机PPT课件(完整
- 基于AT89C51单片机信号发生器设计.pd
- 基于51单片机的温度检测系统的设计与
评论
共有 条评论