很感谢主办方给了我参与2020意法半导体开发大赛的机会,这次我的创意是NFC台灯。
下面展示是STM32L4开发板,盒子上有简单的说明
![IMG_20201011_112830.jpg IMG_20201011_112830.jpg](https://static.assets-stash.eet-china.com/forum/202010/11/192541dzjvj97wo9xsltwo.jpg)
![IMG_20201011_112835.jpg IMG_20201011_112835.jpg](https://static.assets-stash.eet-china.com/forum/202010/11/192530rs1j9d6c06dz9v92.jpg)
接下来是ST25R3916,可以实现NFC全功能,卡模拟,读卡,P2P等功能
![IMG_20201011_112852.jpg IMG_20201011_112852.jpg](https://static.assets-stash.eet-china.com/forum/202010/11/192512o5jx4ih5tprcpfz4.jpg)
![IMG_20201011_112847.jpg IMG_20201011_112847.jpg](https://static.assets-stash.eet-china.com/forum/202010/11/192520urlw87vavftpfx3v.jpg)
下图是STM32L4和ST25R3916组装后的效果,也是今天的主角
![IMG_20201011_112908.jpg IMG_20201011_112908.jpg](https://static.assets-stash.eet-china.com/forum/202010/11/192505vaakuodearmooiok.jpg)
接着出镜的是5V继电器
![IMG_20201011_112914.jpg IMG_20201011_112914.jpg](https://static.assets-stash.eet-china.com/forum/202010/11/192459zvorllokindoablo.jpg)
下面是台灯的核心硬件,USB LED灯,没有它也组不了台灯了。
![IMG_20201011_112919.jpg IMG_20201011_112919.jpg](https://static.assets-stash.eet-china.com/forum/202010/11/192453e6gg95fppph9sfpa.jpg)
下图的LED灯板是台灯1号,线已经剪好了,后面发现和继电器不匹配(12V),才被迫换上的USB LED 灯
![IMG_20201011_190946.jpg IMG_20201011_190946.jpg](https://static.assets-stash.eet-china.com/forum/202010/11/192447pk686ojzo8owkze9.jpg)
这个NFC台灯中ST25R3916角色是读卡器,当ST25R3916读到指定的nfc卡的时候,通过STM32L4拉高PC10的电平来控制继电器点亮台灯,演示视频已经放在哔哩哔哩【演示视频链接】
代码部分用的官方读取NFC的代码,以及继电器的相关控制实现了该功能,后面有需要会放在码云等平台。
下图是GPOI配置的代码
![0001.png 0001.png](https://static.assets-stash.eet-china.com/forum/202010/11/205546l1nh9bb910bo10zn.png)
然后通过
HAL_GPIO_TogglePin(GPIOC,GPIO_PIN_10);
复制代码下面聊下开发中遇到的问题。
1、在开发初期我设计的是用STM32L4的PA0控制继电器,在反复实验失败之后发现ST25R3916在用STM32L4的PA0。后来换了PC10解决问题。
2、在代码开发过程中,想当然的认为NFC的控制代码在demo.c,在读代码和多次修改无效后,惊奇的发现NFC的控制代码在ndef_demo.c中。