Skip to content

Commit

Permalink
Code for #2
Browse files Browse the repository at this point in the history
  • Loading branch information
araobp committed May 27, 2019
1 parent 00dc81e commit 753c65e
Show file tree
Hide file tree
Showing 7 changed files with 242 additions and 15 deletions.
17 changes: 11 additions & 6 deletions NUCLEO-F401RE/NFC/stm32/Dynamic_NFC/.mxproject
Original file line number Diff line number Diff line change
@@ -1,12 +1,17 @@
[PreviousGenFiles]
HeaderPath=C:/Users/shiny/Documents/GitHub/dynamic-nfc/stm32/Dynamic_NFC/Inc
HeaderPath=C:/Users/shiny/Documents/GitHub/stm32-mcu/NUCLEO-F401RE/NFC/stm32/Dynamic_NFC/Inc
HeaderFiles=gpio.h;app_x-cube-nfc4.h;nfc04a1_conf.h;common.h;usart.h;stm32f4xx_nucleo_bus.h;stm32f4xx_nucleo_errno.h;stm32f4xx_nucleo_conf.h;stm32f4xx_it.h;RTE_Components.h;stm32f4xx_hal_conf.h;main.h;
SourcePath=C:/Users/shiny/Documents/GitHub/dynamic-nfc/stm32/Dynamic_NFC/Src
SourcePath=C:/Users/shiny/Documents/GitHub/stm32-mcu/NUCLEO-F401RE/NFC/stm32/Dynamic_NFC/Src
SourceFiles=gpio.c;app_x-cube-nfc4.c;lib_NDEF_config.c;usart.c;stm32f4xx_nucleo_bus.c;stm32f4xx_it.c;stm32f4xx_hal_msp.c;main.c;

[PreviousLibFiles]
LibFiles=Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_i2c.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_i2c_ex.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_tim.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_tim_ex.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_uart.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc_ex.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_flash.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_flash_ex.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_flash_ramfunc.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_gpio.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_gpio_ex.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_dma_ex.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_dma.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_pwr.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_pwr_ex.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_cortex.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal.h;Drivers/STM32F4xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_def.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_exti.h;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_i2c.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_i2c_ex.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc_ex.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_flash.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_flash_ex.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_flash_ramfunc.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma_ex.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_pwr.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_pwr_ex.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_cortex.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_exti.c;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_i2c.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_i2c_ex.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_tim.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_tim_ex.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_uart.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc_ex.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_flash.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_flash_ex.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_flash_ramfunc.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_gpio.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_gpio_ex.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_dma_ex.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_dma.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_pwr.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_pwr_ex.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_cortex.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal.h;Drivers/STM32F4xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_def.h;Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_exti.h;Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f401xe.h;Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h;Drivers/CMSIS/Device/ST/STM32F4xx/Include/system_stm32f4xx.h;Drivers/CMSIS/Device/ST/STM32F4xx/Source/Templates/system_stm32f4xx.c;Drivers/CMSIS/Include/cmsis_armcc.h;Drivers/CMSIS/Include/cmsis_armclang.h;Drivers/CMSIS/Include/cmsis_compiler.h;Drivers/CMSIS/Include/cmsis_gcc.h;Drivers/CMSIS/Include/cmsis_iccarm.h;Drivers/CMSIS/Include/cmsis_version.h;Drivers/CMSIS/Include/core_armv8mbl.h;Drivers/CMSIS/Include/core_armv8mml.h;Drivers/CMSIS/Include/core_cm0.h;Drivers/CMSIS/Include/core_cm0plus.h;Drivers/CMSIS/Include/core_cm1.h;Drivers/CMSIS/Include/core_cm23.h;Drivers/CMSIS/Include/core_cm3.h;Drivers/CMSIS/Include/core_cm33.h;Drivers/CMSIS/Include/core_cm4.h;Drivers/CMSIS/Include/core_cm7.h;Drivers/CMSIS/Include/core_sc000.h;Drivers/CMSIS/Include/core_sc300.h;Drivers/CMSIS/Include/mpu_armv7.h;Drivers/CMSIS/Include/mpu_armv8.h;Drivers/CMSIS/Include/tz_context.h;

[PreviousUsedTStudioFiles]
SourceFiles=..\Src\main.c;..\Src\gpio.c;..\Src\app_x-cube-nfc4.c;..\Src\lib_NDEF_config.c;..\Src\usart.c;..\Src\stm32f4xx_nucleo_bus.c;..\Src\stm32f4xx_it.c;..\Src\stm32f4xx_hal_msp.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_i2c.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_i2c_ex.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc_ex.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_flash.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_flash_ex.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_flash_ramfunc.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma_ex.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_pwr.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_pwr_ex.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_cortex.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_exti.c;../\Src/system_stm32f4xx.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_i2c.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_i2c_ex.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc_ex.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_flash.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_flash_ex.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_flash_ramfunc.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma_ex.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_pwr.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_pwr_ex.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_cortex.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_exti.c;../\Src/system_stm32f4xx.c;../Drivers/CMSIS/Device/ST/STM32F4xx/Source/Templates/system_stm32f4xx.c;null;
HeaderPath=..\Drivers\STM32F4xx_HAL_Driver\Inc;..\Drivers\STM32F4xx_HAL_Driver\Inc\Legacy;..\Drivers\CMSIS\Device\ST\STM32F4xx\Include;..\Drivers\CMSIS\Include;..\Drivers\BSP\Components\ST25DV\;..\Drivers\BSP\NFC04A1\;..\Middlewares\ST\lib_nfc\lib_NDEF\Core\inc;..\Middlewares\ST\lib_nfc\common\inc;..\Inc;
CDefines=__weak:__attribute__((weak));__packed:__attribute__((__packed__));USE_HAL_DRIVER;STM32F401xE;

[ThirdPartyIp]
ThirdPartyIpNumber=1
ThirdPartyIpName#0=STMicroelectronics.X-CUBE-NFC4.1.4.0
Expand All @@ -15,8 +20,8 @@ ThirdPartyIpName#0=STMicroelectronics.X-CUBE-NFC4.1.4.0
include=../Drivers/BSP/Components/ST25DV;../Drivers/BSP/NFC04A1;../Middlewares/ST/lib_nfc/lib_NDEF/Core/inc;../Middlewares/ST/lib_nfc/common/inc;
source=../Drivers/BSP/Components/ST25DV/st25dv_reg.c;../Drivers/BSP/Components/ST25DV/st25dv.c;../Drivers/BSP/NFC04A1/nfc04a1.c;../Drivers/BSP/NFC04A1/nfc04a1_nfctag.c;../Middlewares/ST/lib_nfc/lib_NDEF/Core/src/lib_NDEF.c;../Middlewares/ST/lib_nfc/lib_NDEF/Core/src/lib_NDEF_AAR.c;../Middlewares/ST/lib_nfc/lib_NDEF/Core/src/lib_NDEF_Bluetooth.c;../Middlewares/ST/lib_nfc/lib_NDEF/Core/src/lib_NDEF_Email.c;../Middlewares/ST/lib_nfc/lib_NDEF/Core/src/lib_NDEF_Geo.c;../Middlewares/ST/lib_nfc/lib_NDEF/Core/src/lib_NDEF_Handover.c;../Middlewares/ST/lib_nfc/lib_NDEF/Core/src/lib_NDEF_MyApp.c;../Middlewares/ST/lib_nfc/lib_NDEF/Core/src/lib_NDEF_SMS.c;../Middlewares/ST/lib_nfc/lib_NDEF/Core/src/lib_NDEF_Text.c;../Middlewares/ST/lib_nfc/lib_NDEF/Core/src/lib_NDEF_URI.c;../Middlewares/ST/lib_nfc/lib_NDEF/Core/src/lib_NDEF_Vcard.c;../Middlewares/ST/lib_nfc/lib_NDEF/Core/src/lib_NDEF_Wifi.c;../Middlewares/ST/lib_nfc/lib_NDEF/Core/src/lib_wrapper.c;../Middlewares/ST/lib_nfc/lib_NDEF/Core/src/tagtype3_wrapper.c;../Middlewares/ST/lib_nfc/lib_NDEF/Core/src/tagtype4_wrapper.c;../Middlewares/ST/lib_nfc/lib_NDEF/Core/src/tagtype5_wrapper.c;

[PreviousUsedTStudioFiles]
SourceFiles=..\Src\main.c;..\Src\gpio.c;..\Src\app_x-cube-nfc4.c;..\Src\lib_NDEF_config.c;..\Src\usart.c;..\Src\stm32f4xx_nucleo_bus.c;..\Src\stm32f4xx_it.c;..\Src\stm32f4xx_hal_msp.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_i2c.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_i2c_ex.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc_ex.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_flash.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_flash_ex.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_flash_ramfunc.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma_ex.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_pwr.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_pwr_ex.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_cortex.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_exti.c;../\Src/system_stm32f4xx.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_i2c.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_i2c_ex.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc_ex.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_flash.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_flash_ex.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_flash_ramfunc.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma_ex.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_pwr.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_pwr_ex.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_cortex.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c;../Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_exti.c;../\Src/system_stm32f4xx.c;../Drivers/CMSIS/Device/ST/STM32F4xx/Source/Templates/system_stm32f4xx.c;null;
HeaderPath=..\Drivers\STM32F4xx_HAL_Driver\Inc;..\Drivers\STM32F4xx_HAL_Driver\Inc\Legacy;..\Drivers\CMSIS\Device\ST\STM32F4xx\Include;..\Drivers\CMSIS\Include;..\Drivers\BSP\Components\ST25DV\;..\Drivers\BSP\NFC04A1\;..\Middlewares\ST\lib_nfc\lib_NDEF\Core\inc;..\Middlewares\ST\lib_nfc\common\inc;..\Inc;
CDefines=__weak:__attribute__((weak));__packed:__attribute__((__packed__));USE_HAL_DRIVER;STM32F401xE;
[PreviousUsedCubeIDEFiles]
SourceFiles=Src\main.c;Src\gpio.c;Src\app_x-cube-nfc4.c;Src\lib_NDEF_config.c;Src\usart.c;Src\stm32f4xx_nucleo_bus.c;Src\stm32f4xx_it.c;Src\stm32f4xx_hal_msp.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_i2c.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_i2c_ex.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc_ex.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_flash.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_flash_ex.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_flash_ramfunc.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma_ex.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_pwr.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_pwr_ex.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_cortex.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_exti.c;Src/system_stm32f4xx.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_i2c.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_i2c_ex.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_tim_ex.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_rcc_ex.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_flash.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_flash_ex.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_flash_ramfunc.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_gpio.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma_ex.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_dma.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_pwr.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_pwr_ex.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_cortex.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal.c;Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_exti.c;Src/system_stm32f4xx.c;Drivers/CMSIS/Device/ST/STM32F4xx/Source/Templates/system_stm32f4xx.c;null;
HeaderPath=Drivers\STM32F4xx_HAL_Driver\Inc;Drivers\STM32F4xx_HAL_Driver\Inc\Legacy;Drivers\CMSIS\Device\ST\STM32F4xx\Include;Drivers\CMSIS\Include;\Drivers\BSP\Components\ST25DV\;\Drivers\BSP\NFC04A1\;\Middlewares\ST\lib_nfc\lib_NDEF\Core\inc;\Middlewares\ST\lib_nfc\common\inc;Inc;
CDefines=USE_HAL_DRIVER;STM32F401xE;

5 changes: 3 additions & 2 deletions NUCLEO-F401RE/NFC/stm32/Dynamic_NFC/Dynamic_NFC.ioc
Original file line number Diff line number Diff line change
Expand Up @@ -179,10 +179,10 @@ ProjectManager.ProjectBuild=false
ProjectManager.ProjectFileName=Dynamic_NFC.ioc
ProjectManager.ProjectName=Dynamic_NFC
ProjectManager.StackSize=0x400
ProjectManager.TargetToolchain=TrueSTUDIO
ProjectManager.TargetToolchain=STM32CubeIDE
ProjectManager.ToolChainLocation=
ProjectManager.UnderRoot=true
ProjectManager.functionlistsort=1-MX_GPIO_Init-GPIO-false-HAL-true,2-MX_USART2_UART_Init-USART2-false-HAL-true,3-SystemClock_Config-RCC-false-HAL-false,4-MX_USART6_UART_Init-USART6-false-HAL-true,5-MX_NFC_Init-STMicroelectronics.X-CUBE-NFC4.1.4.0-false-HAL-true,6-MX_NFC_Process-STMicroelectronics.X-CUBE-NFC4.1.4.0-false-HAL-true
ProjectManager.functionlistsort=1-MX_GPIO_Init-GPIO-false-HAL-true,2-MX_USART2_UART_Init-USART2-false-HAL-true,3-SystemClock_Config-RCC-false-HAL-false,4-MX_USART6_UART_Init-USART6-false-HAL-true
RCC.48MHZClocksFreq_Value=48000000
RCC.AHBFreq_Value=84000000
RCC.APB1CLKDivider=RCC_HCLK_DIV2
Expand Down Expand Up @@ -394,3 +394,4 @@ VP_SYS_VS_Systick.Mode=SysTick
VP_SYS_VS_Systick.Signal=SYS_VS_Systick
board=NUCLEO-F401RE
boardIOC=true
isbadioc=false
18 changes: 18 additions & 0 deletions NUCLEO-F401RE/NFC/stm32/Dynamic_NFC/Inc/rn4020.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
/*
* rn4020.h
*
* Created on: 2019/04/25
*/

#ifndef RN4020_H_
#define RN4020_H_

#include <stdint.h>
#include "usart.h"

// TX characteristics (NOTIFY)
#define NOTIFY_CHARA "SUW,010203040506070809000A0B0C0D0E0F,"

void notify(uint8_t *data, int len);

#endif /* RN4020_H_ */
4 changes: 2 additions & 2 deletions NUCLEO-F401RE/NFC/stm32/Dynamic_NFC/Src/app_x-cube-nfc4.c
Original file line number Diff line number Diff line change
Expand Up @@ -132,8 +132,8 @@ void MX_NFC4_NDEF_URI_Init(void)
HAL_Delay( 300 );

/* Prepare URI NDEF message content */
strcpy( URI.protocol,URI_ID_0x04_STRING );
strcpy( URI.URI_Message,"github.com/araobp" );
strcpy( URI.protocol,URI_ID_0x01_STRING );
strcpy( URI.URI_Message,"st.com/st25-demo" );
strcpy( URI.Information,"\0" );

/* Write NDEF to EEPROM */
Expand Down
16 changes: 11 additions & 5 deletions NUCLEO-F401RE/NFC/stm32/Dynamic_NFC/Src/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@
#include "nfc04a1.h"
#include "nfc04a1_nfctag.h"
#include "app_nfc_uri.h"
#include "rn4020.h"

/* USER CODE END Includes */

Expand Down Expand Up @@ -74,7 +75,7 @@ typedef enum {
volatile bool field_changed = false;

// Command reception from uart2
volatile bool command_received = false;
volatile bool command_received2 = false;
uint8_t uart_rx_buf[BUFSIZE];
uint8_t uart_rx_data;

Expand Down Expand Up @@ -130,6 +131,9 @@ int main(void)

char base_url[BUFSIZE];

// Notify BLE central of RF field change
uint8_t RF_FIELD_CHANGED[] = "RF_FIELD_CHANGED";

/* USER CODE END 1 */


Expand All @@ -152,6 +156,7 @@ int main(void)
/* Initialize all configured peripherals */
MX_GPIO_Init();
MX_USART2_UART_Init();
MX_USART6_UART_Init();
MX_NFC_Init();
/* USER CODE BEGIN 2 */
NFC04A1_LED_Off( YELLOW_LED );
Expand Down Expand Up @@ -187,6 +192,7 @@ int main(void)
if (phase == STANDBY) {
NFC04A1_LED_On( GREEN_LED );
printf("PHASE 1: RF field change detected\n");
notify(RF_FIELD_CHANGED, sizeof(RF_FIELD_CHANGED)); // Notify the event to BLE entral
pData = extraProcess();
generate_URI_with_serial_number('4', (char *)base_url, (char *)pData, increment);
tick_prev = HAL_GetTick();
Expand Down Expand Up @@ -235,7 +241,7 @@ int main(void)
#endif

// Command parser
if (command_received) {
if (command_received2) {
if (strcmp((char *)uart_rx_buf, ".r") == 0) { // Reset NFC tag
printf("RESET...\n\n");
init_NFC_tag(true);
Expand All @@ -254,7 +260,7 @@ int main(void)
write_data_area2(uart_rx_buf, strlen((char *)uart_rx_buf)+1);
strcpy(base_url, (char *)uart_rx_buf);
}
command_received = false;
command_received2 = false;
}
/* USER CODE END WHILE */

Expand Down Expand Up @@ -322,11 +328,11 @@ void HAL_UART_RxCpltCallback(UART_HandleTypeDef *UartHandle) {

static int idx = 0;

if (!command_received) {
if (!command_received2) {
if (uart_rx_data == '\n') {
uart_rx_buf[idx] = '\0';
idx = 0;
command_received = true;
command_received2 = true;
} else {
uart_rx_buf[idx++] = uart_rx_data;
}
Expand Down
70 changes: 70 additions & 0 deletions NUCLEO-F401RE/NFC/stm32/Dynamic_NFC/Src/rn4020.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
/*
* rn4020.c
*
* Created on: 2019/04/25
*/

#include "rn4020.h"
#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>
#include <string.h>

#include "app_nfc_uri.h"

#define BUFSIZE 64U

uint8_t uart_rx_data;
uint8_t data_buf[BUFSIZE/2];
volatile bool command_received = false;
volatile int data_len;
uint8_t cnt = 0;

char send_buf[100];

typedef enum {
CNT_CHARA, URI_CHARA
} tx_chara;


/**
* Transfer byte array to a BLE central via RN4020 module.
*
* Note: binary data (uint8_t) is converted into hex in ASCII,
* because RN4020 accepts binary data in ASCII mode.
*
*/
void notify(uint8_t *data, int len) {

int i = 0;
int idx = 0;
char ascii_hex_buf[3];

// TX characteristics
strcpy(send_buf, NOTIFY_CHARA);

while (true) {
sprintf(ascii_hex_buf, "%02x", data[idx]);
send_buf[37+i*2] = ascii_hex_buf[0];
send_buf[37+i*2+1] = ascii_hex_buf[1];
i++;
idx++;
if (i == 20) { // The length of 20 bytes
send_buf[37 + i*2] = '\n';
HAL_UART_Transmit(&huart6, (uint8_t *)send_buf, 37+i*2+1, 0xffff);
// For debug
send_buf[37 + i*2] = '\0';
printf("sendData(@20): %s\n", send_buf);
// NOTIFY interval
HAL_Delay(500);
i = 0;
} else if (idx >= len) { // The length of data
send_buf[37 + i*2] = '\n';
HAL_UART_Transmit(&huart6, (uint8_t *)send_buf, 37+i*2+1, 0xffff);
// For debug
send_buf[37 + i*2] = '\0';
printf("sendData(@len): %s\n", send_buf);
break;
}
}
}

0 comments on commit 753c65e

Please sign in to comment.