标题:
单片机+RC522图书馆座位管理系统设计 附程序+电路图
[打印本页]
作者:
907750765
时间:
2020-3-1 11:05
标题:
单片机+RC522图书馆座位管理系统设计 附程序+电路图
IC模块
51hei.png
(6.08 KB, 下载次数: 54)
下载附件
2020-3-4 18:42 上传
单片机源程序如下:
#include "include.h"
INT8U CardRevBuf[16] = { 0 };
void init_port( void )
{
P0M1 = 0x00;
P0M0 = 0xff;
P3M1 &= ~0x10;
P3M0 |= 0x10;
P34 = 0;
P35 = 0;
}
void init_all(void)
{
EA = 0;
init_port();
init_rc522();
init_lcd();
EA = 1;
}
void display_no_id( void )
{
DisplayListChar( 0, 0, " ID: " );
}
void display_id( INT8U * SrcBuf )
{
char DisplayBuf[10];
char *pDisplayChar;
INT8U Tmp, i;
pDisplayChar = DisplayBuf;
for( i = 0; i < 4; i++ )
{
Tmp = ( ( *SrcBuf ) >> 4 ) & 0x0F;
if( ( Tmp >=0 ) && ( Tmp <= 9 ) )
{
*pDisplayChar ++ = '0' + Tmp;
}
else
{
*pDisplayChar ++ = 'A' + Tmp - 10;
}
Tmp = ( *SrcBuf ) & 0x0F;
if( ( Tmp >=0 ) && ( Tmp <= 9 ) )
{
*pDisplayChar ++ = '0' + Tmp;
}
else
{
*pDisplayChar ++ = 'A' + Tmp - 10;
}
SrcBuf ++;
}
*pDisplayChar ++ = '\0';
DisplayListChar( 0, 4, DisplayBuf );
}
void ctrl( void )
{
if( PcdRequest( PICC_REQIDL, &CardRevBuf[0] ) != MI_OK )//寻天线区内未进入休眠状态的卡,返回卡片类型 2字节
{
if( PcdRequest( PICC_REQIDL, &CardRevBuf[0] ) != MI_OK )//寻天线区内未进入休眠状态的卡,返回卡片类型 2字节
{
display_no_id();
return;
}
}
if( PcdAnticoll( &CardRevBuf[2] ) != MI_OK ) //防冲撞,返回卡的序列号 4字节
{
display_no_id();
return;
}
if( PcdSelect( &CardRevBuf[2] ) != MI_OK )//选卡
{
display_no_id();
return;
}
display_id( &CardRevBuf[2] );
}
void main(void)
{
init_all();
while(1)
{
ctrl();
}
}
复制代码
所有资料51hei提供下载:
IC卡模块资料.7z
(11.46 MB, 下载次数: 47)
2020-3-4 18:43 上传
点击文件名下载附件
下载积分: 黑币 -5
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1