第一集中PN7462的代码已经实现了串口发送数据,这一集讲的主要工作是我自己添加代码,实现串口接收数据。
一轮调试下来,其实很简单,主要归功于NXP的文档写的很详细,设计的也都很巧妙,给我留下映像最深的是这块板子更新程序的方式,不用LPClink2,也不用JLINK,也不用串口等等,而是用USB,按照文档的步骤,PC将板子的Flash识别为一个U盘,然后直接更新U盘里面的内容就OK了,很方便。
下面说重点:串口配置时增加接收数据初始化函数,名字叫phhalHif_InitRxBuffer。
然后在Polling之前增加串口接收数据的处理,函数是:phExDoorAccess_Process_Hif_Cmd。然后keil编译,烧录到板子,就搞定了。
烧录完,复位后开始运行,最后,调试结果是这样的,串口收到0x02就会发出2 hello,收到其他都不做响应,上面打印的是板子读取到的非接卡片类型和UID。
至此,串口接收和发送都已经搞定,接下来又是一个重头戏了,那就是QN9020和PN7462的通讯了。
在阅读了QN9020的资料后,发现QN9020的使用很方便,配置也很灵活,决定使用network processer模式,EACI协议接口和PN7462通讯。
EACI协议如下图所示:
显然,PN7462作为Host MCU,QN9020作为外设,这两个芯片将要协同工作。
本集先讲到这里,精彩内容请期待下集。。。
The end!
|