丁丁 软硬件、前后端全栈开发者。热爱,并将终身学习有关计算机的一切 mdi-home 首页 mdi-language-go Golang mdi-cpu-32-bit STM32 mdi-format-list-bulleted-square 文章列表 mdi-share-variant 分享 mdi-book-open-page-variant 推荐书单 mdi-chat-processing 碎语 mdi-help-box ISSUE About Me mdi-message 知乎 mdi-sina-weibo 微博 mdi-rss-box RSS

丁丁的个人网站

mdi-heart mdi-login mdi-logout mdi-settings

STM32与PN532构建NFC近场通信指南(二):PN532及恩智浦PN系列产品简介

#### 目录 1. [STM32与PN532构建NFC近场通信指南(一):NFC及相关知识准备](https://www.hexcode.cn/article/show/stm32-pn532-sec1) 2. [STM32与PN532构建NFC近场通信指南(二):PN532及恩智浦PN系列产品简介](https://www.hexcode.cn/article/show/stm32-pn532-sec2) 3. [STM32与PN532构建NFC近场通信指南(三):PN532通信协议分析](https://www.hexcode.cn/article/show/stm32-pn532-sec3) 4. [STM32与PN532构建NFC近场通信指南(四):PN532握手数据流详解](https://www.hexcode.cn/article/show/stm32-pn532-sec4) 5. [STM32与PN532构建NFC近场通信指南(五):一种适用于STM32的通用串口通信架构及与PN532的通信实践](https://www.hexcode.cn/article/show/stm32-pn532-sec5) # STM32与PN532构建NFC近场通信指南(二):PN532及恩智浦PN系列产品简介 本章为系列指南第二章,主要介绍恩智浦的PN532和他家的PN系列产品,并对PN532芯片做一个正式开发前的简单认知。 ### 恩智浦 恩智浦(NXP)是荷兰一家半导体公司,目前在半导体领域全球排名前十。这家公司原来隶属于飞利浦,后以80亿欧的价格卖给荷兰一家公司,并在2006年以【恩智浦】的中文名在中国市场经营。在消费市场领域,NXP是全球第一大电视硅芯片厂商,平均出售两台电视机就有一台内部使用NXP的多媒体芯片,NXP同时是RFID解决方案的第一大厂商,其RFID芯片占全球市场的80%以上。NXP同时提供有LPC, i.MX系列ARM Cortex-M0至M7内核通用MCU。 ### NXP公司的PN系列产品 上面说到NXP公司在射频芯片领域是一骑绝尘的,其NFC产品系列以PN开头,如比较出名的PN532, PN7150, 以及全功能NFC支持的PN5180(这玩意儿甚至支持VISA和万事达信用卡的消费)。 **PN532**是一个以80C51为内核的单片机,支持ISO14443A/B标准Mifare卡和FeliCa, Jewel等类型的卡的读写,需要上层MCU主控,通信接口可选UART,SPI,I2C。官方报价4.8US每片(4000片),淘宝上售价RMB15-18每片。 **PN7150**是一个NFC全功能的高性能芯片,支持读卡器模式,卡仿真模式,以及点对点通信模式,几乎支持市面上所有类型的NFC卡片。需要上层MCU主控,通信接口只有I2C。官方售价3.36US每片(490片),淘宝上售价19-25元每片。 **PN5180**是一个RFID全功能高性能芯片,与前两者不同的是,它不再仅仅是一个NFC芯片,它是一个全功能的RFID芯片,它可以读ISO15693协议的ID卡,以及具有高级安全协议的银行信用卡,比如VISA和MASTER,因此可以用它来开发POS机(开发难度也是巨大的)。同时PN5180不再需要上层MCU主控,直接可以在PN5180内部进行编程,需要配合NXP自家的IDE进行开发。官方售价4.09US每片(490片),淘宝售价60元左右每片。 综合成本、开发难度、产品使用场景等因素考量,我们选择PN532作为NFC芯片。淘宝购买的模组如下,价格30元左右,同时送了两张Mifare S50卡,商家提供的百度网盘中还有一些实用的PC上位机,开发文档等若干,此处不表。 [![](https://files.hexcode.cn/1555f1be-f14d-4825-a1c9-dc12cc0c4bbc.png)](https://files.hexcode.cn/1555f1be-f14d-4825-a1c9-dc12cc0c4bbc.png) ### PN532 下面来详细介绍一下PN532,这款芯片在中国的使用度极广,因此网上的资料也很多,在这里我们仍然以一种零基础入门者的心态来理解这颗芯片。 硬件部分我们这里就不表了,因为手上已经购买了开发板,成品设计时让硬件工程师照着官方PCB和原理图进行设计就可以了。我们主要关心使用上位机与PN532进行通信的流程,[点击下载PN532的官方手册](http://docs.hexcode.cn/PN532UM.pdf),[点击下载PN532应用笔记](http://docs.hexcode.cn/PN532AN.pdf) 软件部分,根据官方手册,我们了解到PN532可以使用UART,SPI,I2C与主控MCU进行通信,具体通信方式根据P16和P17引脚来决定,参考PN532AN.pdf Page7: [![](https://files.hexcode.cn/6670219e-0d58-4731-b864-df1bd7d13de5.png)](https://files.hexcode.cn/6670219e-0d58-4731-b864-df1bd7d13de5.png) 这里要说明的是,硬件通信接口只指定通信介质和时序,跟软件通信协议无关,无论何种通信接口,其传输数据时收包和发包的内容都是一致的,由软件层面的通信协议来决定。具体使用时不同的通信接口单双工模式稍有差别,SPI和UART在硬件层面是双工的,I2C则是单工的,软件层面的协议要仔细看手册,PN532所有通信行为都是单工的。 PN532AN Page32列举了一次典型的对于Mifare卡的读写流程: [![](https://files.hexcode.cn/dc5fa74d-9dea-4dec-8f6f-f35eeab12324.png)](https://files.hexcode.cn/dc5fa74d-9dea-4dec-8f6f-f35eeab12324.png) 简而言之,逻辑上就是: - 寻卡 - 认证 - 读写卡 - 释放 以上步骤将会依次经历以下流程: - InListPassivTarget - InDataExchange - InSelect, InDeselect, InRelease(这一步其实不重要) 具体的,上面这些流程将涉及什么样的输入输出字节流,我们下一节将详细讲解。 ### 小结 这一章我们对恩智浦NXP公司,以及他们家的产品线有了一个大概的了解,着重对PN532这个芯片产品有了一个认知。下面一节我们将深入PN532的通信协议,罗列一套完整的上位机与PN532进行通信的握手过程,实现Mifare S50卡片的读写。
mdi-chevron-left Last:STM32与PN532构建NFC近场通信指南(一):NFC及相关知识准备 Next:STM32与PN532构建NFC近场通信指南(三):PN532通信协议分析 mdi-chevron-right
Tags JAVA Golang STM32 Links 丁丁喜欢这些网站或者博客 MCU起航 JBlog Advert
Tags JAVA Golang STM32 Links 丁丁喜欢这些网站或者博客 MCU起航 JBlog Advert
{{ $store.state.notice.msg }}