老古开发网首页
导航:老古开发网首页文章索引索引第2348页文章分类经验总结第6页→[曼码调制的非接触ID卡通用读卡程序编制]
| -文章搜索 - 最新文章 - |

第10369篇:曼码调制的非接触ID卡通用读卡程序编制

发布时间:2006年8月30日 点击次数:1850
来源:   作者:武汉锦航科技发展有限公司 阳永华
 

  非接触ID卡技术已广泛应用于诸如家居、公司办公通道,各种限权进入场所的门禁,乃至宠物识别等领域。因其使用便捷、安全,已引起有关技术领域工程师的更多关注。

  图1是采用H4001/U2270B的非接触卡读卡系统示意图。非接触ID卡是一种接口电路,它通过卡上配置的发射机应答器振荡线圈与基站振荡线圈的耦合取得能量,通过必要的通信软件配合,保证卡与基站间实现数据交换。

图11H4001/ U2270B器件组的基本性能
(1) U2270B基站读写器的基本性能
U2270B是德国Temic公司生产的射频卡基站读写专用芯片,其载波频率fOSC范围为100 kHz~125 kHz,典型fOSC为125 kHz,此时的数据传送速率为5 kb/s。U2270B适用的调制方式为曼彻斯特码和双相位码,可由5 V的稳压电源供电,有与微控制器兼容的接口。
(2) H4001射频只读晶片基本性能
H4001是瑞士钟集团生产的低频射频只读应答晶片,其载波频率为50 kHz~400 kHz,典型的工作频率为125 kHz。它有64位列阵紫外线可编程存储空间,CMOS低功耗。有两种调制方式的产品:曼彻斯特码方式和移相键控码。
2设计简介
由于H4001晶片具有与U2270B基本相同的工作频率和调制方式,因此用它们组成一个ID识别系统是非常合适的。目前,市面使用的ID卡多以JK4001、H4001、EM4001等居多,其结构和工作原理都一样,故只掌握一种便可通用了。
H4001内部阵列存储空间结构如图2所示。
图2由图2可知,H4001内部64位信息由5个区组成:9个引导位“1”,10个行奇校验位“P0~P9”,4个列奇校验位“PC0~PC3”,40位数据位“D00~D93”和一个停止位“0”。
9个引导位是出厂就掩膜到晶片内的,其值为111111111。当它输出数据流时,首先是输出9个引导位,然后是10组由4个数据位和1个行奇校验位组成的数据串,之后是1组由4个列奇校验位组成的数据串,最后是停止位“0”。
“D00~D13”是一个8位的晶片版本号或ID识别码。“D20~D93”是4组32位的晶片信息,即卡号。
当H4001得电初始化后,便依次将这64位数据反复输出,直到卡片离开基站读写器失电为止。
曼码解码方式如图3所示。
图3由图3可知,采用曼码调制数据,位数据"1"对应着电平下跳,位数据"0"对应着电平上跳。在一串传送的数据序列中,两个相邻的位数据传送跳变时间间隔应为1P。若相邻的位数据极性相同,则在该两次位数据传送的电平跳变之间,有一次非数据传送的、预备性的(电平)"空跳"。
电平上跳、电平下跳和两个相邻的同极性位数据之间的预备性空跳是确定位数据传送特征的判据。
位传送时钟周期如图4所示。
图4由图4可知,在曼彻斯特码调制方式下H4001每传送一位数据的时间是64个振荡周期,其值由RF/n决定。若载波频率为125 kHz,则每传送一位的时间为振荡周期的64分频,故位传送时间
1P=64/125 kHz=512 μs
曼码方式下的数据传送方式如图5所示。
图5由图5可以看出,晶片按曼码方式输出的数据中,前9位是引导位,10~63是54位数据,第64位是最后一位停止位0,每一位的位传送周期都是512 μs,再结合图3、图4,便可清淅、方便的编写读码程序了。
3软件设计
弄懂了上面的原理后,便可进一步编写软件了。
首先,要检测9个引导位,因为卡一旦靠近基站便开始反复发送数据了,而没法直接接收数据,只有检测到引导位并正确接收后才可往下接收数据。引导位之后是54位的数据串,没法直接接收和暂存,只能5位一个字节的存储(有4个数据位和1个奇效验位),这样方便接收又便于校验。
一个位周期为1P=512 μs,而数据跳变在0.5P=256 μs。前半周期确定一个电平,加上后半周期的电平跳变类型便可判断是数据0或1。由于射频场信号的强弱和外界的影响数据位传送周期不是很稳定的,根据经验得出:490μs<1P<520μs;230μs<0.5P<280μs。
C语言源代码程序(见本刊网站,www.dpj.com.cn)已在工程中应用过,效果可靠,解得一个卡号用时小于70 ms。感兴趣的朋友如果想进一步了解可通过Email(yf432131@sohu.com)与我联系。


欢迎进入老古论坛进行讨论
[经验总结] 相关文章:
DSP56800系列开发软件包SDK使用经验点滴
简介:
  Motorola 的SDK(Software Development Kit)是从DSP56800的Metrowerks CodeWarrior开发工具中发展而来的,SDK是一个API(Application Programming Interface)、库、服务、规则的集合体。它为DSP56800系列芯片的开发应用提供了一个很好的平台,使得开发者可以脱离硬件的束缚,在软件仿真的环境下进行开发,缩短产品进入市场的周期。SDK使得开发者对设备的操作就象对文件的操作一样,非常方便。 下面是......

在uC/GUI中实现汉字显示
Protel实用技巧之——建一个自己的SCH符号库
C51编程经验三则
shell脚本编程
 
下一个:[新闻热点]Atmel推出最小尺寸超高频ASK/FSK接收器ATA5745
简介:
Atmel宣布推出新的超高频 ASK/FSK 接收器集成电路 (IC)--ATA5745 和 ATA5746,拓展了 Atmel 现有的广泛汽车射频设备组合。在标准汽车环境下,ATA5745 的运作频率为 433-435 MHz,而 ATA5746 的频段为313-315 MHz。这些单芯片设备是采用 Atmel 新的射频 BiCMOS 工艺生产,从而实现了更小尺寸的设计。这些设备拥有业内最小的尺寸-- 5 mm ......

上一个:[新闻热点]华亚科:制程转高阶9月产能上轨道

老古开发网版权所有 2006年9月 asp.Net V2.0 设计:老古
页面缓存:否 执行时间:31毫秒