致远电子研制的LAB系列逻辑分析仪能够解决楼主的问题,如其代表产品LAB6052,拥有高达500MHz的采样频率和16M/通道的存储深度,同时在其上位机软件zlglogic中集成了曼彻斯特码、米勒码等众多的协议分析插件,渣兄如图4.1所示。
首先用逻辑分析仪抓取RFID读卡器发出和收到的信号,然后调用相应的插件即可对数据进行解码分析。图4.2是读卡器发出查询指令射频卡响应后用逻辑分析仪抓到的数据,send信号是读卡器发出的命令,编码方式为米勒码,解码后的值为0x26,在ISO14443协议中表示REQA指令,receive信号是射频卡返回的数据,编码方式为曼彻斯特码,解码后的值为0x04,在ISO14443协议中表示ATQA。
图4.2 插件解码后的数据
图4.2中使用了米勒码和曼彻斯闹丛特码两个解码插件,这两个插件的参数设置如图4.3所示。
图4.3 米勒码和曼彻斯特码插件参数设置如弯袭
#include "LCD1602.H"#include <reg52.H>
sbit lcdrs=P2^5//命令/数据
sbit lcdrw=P2^6//读/写
sbit lcden=P2^7 //使能端
static void delay(uchar zz)
{
uchar a,b
for(a=zza>0a--)
for(b=35b>0b--)
}
void WriteData(uchar x) //写数据
{
lcden=0
lcdrs=1
lcdrw=0
P0=x
delay(10)
lcden=1
delay(10)
lcden=0
lcdrw=1
}
void WriteCommand(uchar y) //写命令
{
lcden=0// 写指令 输入:RS=0,RW=0,E=下降沿脉冲,DB0~DB7=指令码 输出:无
lcdrs=0// 写数据 输入:RS=1,RW=0,E=下降沿脉冲,DB0~DB7=数据 输枝早出:无
lcdrw=0// 读数据 输入:RS=1,RW=1,E=1 输出:DB0~DB7=数据
P0=y // 读状态 输入此孙:RS=0,RW=1,E=1 输出:DB0~森搭链DB7=状态字
delay(10)
lcden=1
delay(10)
lcden=0
lcdrw=1
}
void Init_LCD1602()
{
WriteCommand(0x01)//清屏
WriteCommand(0x38)//1602显示,5*7点阵设置
WriteCommand(0x38)
WriteCommand(0x0c)//开显示,不显示光标
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)