基于W78E516的射频读卡器实现 - 中国一卡通网
用户名密码 [免费注册] [找回密码] 推广技巧 发布求购 建商铺  发产品  会员体制比较  
 

基于W78E516的射频读卡器实现

来源:RFID世界网  作者:罗士栋 白长清 汪峰  发布时间:2007-12-13 09:41:14  字体:[ ]

关键字:射频读卡器  w78e516  射频卡  读卡器电路  读卡器  

摘   要:以射频识别技术的实际应用为背景,采用北京远兴时代科技有限公司的低功耗RF射频感应式收发模块MFP-K4,结合带ISP功能的Flash EPROM的低功耗8位微处理W78E516,设计一个门禁控制系统。给出了各部分的硬件电路设计原理图,描述了各个功能的实现方法,同时给出了部分程序代码。


  4.系统软件设计

  简单地说微 处理器对MTP-K4 的控制事实上就是对非接触式智能射频卡的控制。每当有卡刷入时,单片机通过串口从读卡器芯片读入数据,对它进行处理,然后根据结果控制门的开关。软件设计的主要工作是初始化串口,从串口读入数据并对它进行处理。本系统软件设计时大量采用自定义函数,在主程序中调用不同的函数完成相应的接口功能。采用这种方式,该系统软件也可以很容易移植到其他类似系统。本系统软件在Keil uVision2 下编写,以下给出部分C 语言程序。

  4.1串口初始化函数

  void initUart()

  {

  TMOD=0x20; /*定时器1,方式2*/

  TL1=0xfd;

  TH1=0xfd; /*9600 波特11.0592MHz*/

  TCON=0x40; /*启动定时器1*/

  PCON=0x00; /*电源控制寄存器设初值*/

  SCON=0x50; /*允许接收*/

  EA=1; /*允许总中断*/

  ES=1; //允许串口中断

  }

  4.2读数据函数

  Uart()interrupt 4 using 1

  {

  if(RI&&~r_full)

  {

  rs_buf[r_in]=SBUF;

  RI=0;

  r_in++;

  if(r_in==13)

  {

  r_full=1;

  ES=0;

  r_in=0;

  P1&=GLED_ON;

  P1&=BELL_ON;

  delay100ms(2);

  P1|=GLED_OFF;

  P1|=BELL_OFF;

  }

  }

  }



  4.3看门狗"喂狗"函数

  void watchdog(void)

  {

  P1&=0x7f;

  NOP();

  NOP();

  P1|=0X80;

  NOP();

  NOP();

  P1&=0x7f;

  }

  4.4 延时函数

  void delay100ms(unsigned char n)

  {

  unsigned char k;

  for(k=0;k<n;k++)

  {

  unsigned char i=100;

  unsigned char j;

  do

  {

  j=7;

  do{ j+=2;j--; }

  while(j);

  j=1;

  }

  while(--i);

  }

  watchdog();

  }


  5.总结

  本文设计的门禁系统其读卡器在9600 bps 通信速率下普通卡读卡距离为18cm,远距离卡可以达40cm,可以实现考勤功能,整个系统采用低功耗器件,使系统的功耗降至最低。另外本文介绍了W78E516 的一种ISP 方法,使得我们不用专门的编程器就可以随时对MCU进行编程,具有简单,实用,成本低廉的特点。 

更多

新闻投稿合作邮箱:yktchina-admin@163.com    字体[ ] [收藏] [进入论坛]

推荐文章

论坛热帖