基于STC12C2052单片机的串口ID读卡器设计

  作者:梁飞 张红雨 电子科技大学电子工程学院 时间:2010-07-16来源:电子产品世界

  接收回路首先采用一个二极管检波电路进行包络检波,选择适当的RC和二极管可使传输系数接近为1,防止隋性失真的产生,包络检波器的输出波形与调幅波包络线基本一致[3]。再通过运算放大器对信号进行放大,以便通过比较器使模拟信号转变成数字信号,最终完成ASK的解调输出。

  主控模块

  主控模块主要实现对解调信号进行解码,同时将得到的卡号数据通过UART向PC机传输。本设计采用STC12C2052单片机作为主控芯片,该单片机成本低,同时兼容8051单片机内核,具有运算速度高,功耗低,内部具有UART模块,可直接与PC通信,满足本设计要求[5]。MCU部分电路图见图3。

  解调电路输出的已调数字信号从单片机P3.2引脚输入,P3.2是外部中断INT0输入引脚,设置INT0为下降沿中断。当接收到已调信号时,触发中断,同时打开定时器进行计数,在下一中断到来时,统计计数值进行判断。采用外部16MHz晶振,R15与C17构成了复位电路;P3.0和P3.1作为UART的RX和TX引脚,构成人机交互接口。P1.4 、P1.3分别作为指示灯、蜂鸣器的输出引脚,平时灯一直为亮,在刚通电与读到卡时,会闪一下,同时蜂鸣器也会响一下作为警示。

  系统软件设计

  系统流程图如图4所示。系统上电后首先进行一系列设置,包括UART波特率、定时器计数方式和计数时钟选择、外部下降沿中断触发式的设置等,设置完成后会响一声作为提示。然后进行曼彻斯特解码和奇偶校验,当奇偶校验正确之后,将收到的32位卡号数据转化为10位ASCII码,单片机会将这10位ASCII码送入串口数据寄存器中,通过TXD引脚送给PC。通过设置单片机内部寄存器TM0D可以得到需要的波特率。

  结语

  本读卡器设计具有电路简单,成本低,灵敏度高,读取效率高的特点;在软件上对曼彻斯特码进行同步解码,读卡速度比较快,由于对载波频率的变化不敏感,故读卡成功率非常高;同时可以实现波特率从1200~115200的设置。实际应用表明读取距离可达到7cm左右。

  参考文献:

  [1] Klaus F.射频识别(RFID)技术(第二版)[M].陈大才,译.北京:电子工业出版社,2001

  [2] 中山市达华智能科技有限公司.125KHz只读型非接触式ID芯片TK4100[J].金卡工程, 2004(3):58

  [3] 张肃文.高频电子线路(第四版)[M].北京: 高等教育出版社

  [4] 谢方乐,张红雨,文维.基于USB接口ID读卡器的设计[J].电子设计工程, 2009(11):24~26

  [5] 宏晶科技公司.STC12C2052AD.pdf[OL].2008

  [6] 单承赣,马海燕.TYPE A型卡的曼彻斯特码的编解码技术[J].通信技术. 2003(3):51~56

1 2

关键词: 单片机 读卡器 分离元件 曼彻斯特码 201007

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版