ST NFC RFAL SDK 移植

由于官网的示例工程,使用的 mcu 不是 STM32F103C8T6,所以需要移植。

1. 环境简介

- MCU:					STM32F103C8T6
- NFC Reader IC:		ST25R3911B
- 编译 IDE:				keil5
- RFAL 版本号: 			V2.8.0 / 14-Dez-2022  

2. 需下载资源

3. 步骤

  1. 建立 STM32F103 工程,按原理图配置好所需的 SPI 、UAST、外部中断等等管脚。确保可正常运行。可以使用 STM32CubeMX 创建工程。
  2. 解压 en.STSW-ST25RFAL001,解压后文件夹结构如图。
    在这里插入图片描述
  3. 在 STM32F103 工程的 Drivers 下,新建文件夹 .\BSP\Components,
    把解压后的 RFAL 下的 .\en.STSW-ST25RFAL001\source\st25r3911
    复制到
    STM32F103 工程的 .\Drivers\BSP\Components 文件夹下
  4. 在 STM32F103 工程下新建文件夹 .\Middlewares\ST\rfal,
    把解压后的 RFAL 下除了 .\en.STSW-ST25RFAL001\source\st25r3911 的文件
    复制到 \Middlewares\ST\rfal 下
    在这里插入图片描述
  5. 用 keil5 打开工程,并新建分组 Drivers/ST/RFAL 和 Drivers/Components/ST25R3911B,分别导入对应的 c文件。
    在这里插入图片描述
    在这里插入图片描述
  6. 解压 en.x-cube-nfc5,复制文件 logger.c,spi.c,usart.c,timer.c,logger.h,spi.h,usart.h,timer.h,platform.h 到 STM32F103 工程下,并导入工程。
    在这里插入图片描述
  7. 编译,会报错,提示找不到 platform.h。原因是 v2.8.0 版本的 RFAL,使用 rfal_platform.h 文件,需要修改或重新建个 rfal_platform.h 文件。
    参考 ./en.STSW-ST25RFAL001/doc/Release_Notes.html
    在这里插入图片描述

在 rfal_platform.h 中,最好把 rfal_defConfig.h 放在所有定义之后,避免编译报错提示重复定义以及其他错误。

  1. 在外部中断函数中添加 ST25R3911B 的中断处理函数 st25r3911Isr()
  2. 按需求在keil5魔法棒中添加宏定义:USE_LOGGER=LOGGER_ON 和 ST25R3911。

4. 参考

移植过程参考:
1. ST25R3911B SDK移植
相关术语参考:
2. NFC与P2P应用解析

5. 相关术语

  • ISO14443 - Proximity cards ( 距离 < 10cm )
  • ISO15693 - Vicinity cards ( 距离 < 50cm )
  • ISO18092 - Near Field Communication - Interface and Protocol (NFCIP-1)
  • ISO21481 - Near Field Communication - Interface and Protocol (NFCIP-2)
  • Felica - JIS X 6319-4,日本的国标
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值