由于本人除了比较矮之外,还比较穷,手头只有台古董模拟示波器,带宽只有20M,所以有些波形需要“意会”,废话不多说,我们来看图说话。

目录
一、单片机读取ID卡(工作原理及电路)二、单片机读取ID卡(产生载波)三、单片机读取ID卡(EM41000的数据格式)四、单片机读取ID卡(硬件调试及读码)

1、功率放大电路及125Khz载波测量

A点为示波器测量处,signalcarrier为单片机产生125KHz波形

ic卡数据分析工具修改码_ic卡数据分析工具修改码


实际波形

ic卡数据分析工具修改码_曼切斯特编码_02

2、LC谐振电路及正弦波测量

B点为示波器测量点

ic卡数据分析工具修改码_ic卡数据分析工具修改码_03


ic卡数据分析工具修改码_包络检波_04

3、包络检波电路及检波波形

C点为示波器测量点

ic卡数据分析工具修改码_LC谐振电路_05


ic卡数据分析工具修改码_ID卡_06

4、放大整形电路及输出波形测量

测量点为OutSignal。

ic卡数据分析工具修改码_ic卡数据分析工具修改码_07


ic卡数据分析工具修改码_ic卡数据分析工具修改码_08

5、波形分析与读码

通过上面最终输出的波形,单片机已经可以识别到输出的曼切斯特码了。

首先我们使用市面上能买到的读卡器,读取一下本次测试用的ID卡卡号

1 E 0 0 6 8 B 0 9 8

通过在EM4100的数据格式一文中的格式,我们进行拆解,如下图所示

ic卡数据分析工具修改码_包络检波_09

下面是一段随机截取的输出波形。我们进行分析

ic卡数据分析工具修改码_ic卡数据分析工具修改码_10


1111111111100110111001000,对照上图列表中的数据,然后发现根本对不上,,,,,

回过头来,我们在来看看关于曼切斯特码的格式。

从低到高跳变表示“1”,从高到低跳变表示“0”。(百度百科)

这时候我们取反一下上面得到的编码
0000000000011001000110111(这下就可以对应上了吧~~~~~)

现在再让我们来看下维基百科上的相关图片,相信就会一目了然。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-mDRz6pLQ-1660696638035)(https://upload.wikimedia.org/wikipedia/commons/thumb/9/90/Manchester_encoding_both_conventions.svg/650px-Manchester_encoding_both_conventions.svg.png)]
接下来我们将编写解码程序,敬请期待。