基于MCF52235 的RFID 通用开发平台设计
void hw_fec_init (uint8 mac_addr_fec [6];//FEC初始化
int8 hw_fec_sendframe (uint8 ch [], uint8destAdd[6], uint8 srcAdd[6], uint16 lenType, uint16len);//发送单个以太网帧
uint8 hw_fec_receiveframe(uint8 ch[], uint16 *len);//接收单个以太网帧
uint hw_icmp_handle(PACKET p);//处理接收到的ICMP 包,响应ping 请求
int hw_udp_send (unshort fport, unshort lport,
PACKET p);//发送UDP 包
//==================================
RC531 射频模块与MCF52235 通信严格按照串行通信时序要求。 RC531 与ISO/IEC 14443 TypeA 和Type B 卡通信,则按照A、B 卡调制和编码的方式设置相关的寄存器,并根据ISO/IEC 14443 协议来设计软件即可。 读卡器与A、B 卡之间的通信是按照应答方式来进行的,非接触式的卡有很多工作状态,各个状态的转化可通过读卡器向卡发送一系列命令完成。 射频构件的接口函数说明如下所示:
// ==操作Type A 卡的部分主要函数======
void pcdinit();//R 初始化
char pcdreset();//RC531 复位
char pcdrequest(uint8 req_code);//寻卡
char pcdanticoll(uint8 *snr);//防碰撞
char pcdselect(uint8 *snr);//选定一张卡
// =========操作Type B 卡的函数========
void pcdinitB();//B 卡初始化
char pcdrequestB(uint8 *pupi);//寻B 卡
char pcdattrib(uint8 *pupi);// 发送attrib 命令
char pcdhaltB(uint8 *pupi);// B 卡挂起
char pcdgetUID (uint8 *snr, uint8 *len); //获得B 卡的ID
//==================================
MCF52235 与LCD 构件的通信同样采用串行方式。 串行通信的一次数据分3 个字节传输。 第一个字节数据格式为11111AB0,表示串行控制,A 是选择数据方向,1 表示LCD 到MCF52235,0 表示MCF52235 到LCD. B 是选择数据类型,1 表示数据为显示
评论