From 344d0000fac808e4ca480c632ac2b688d9c0d964 Mon Sep 17 00:00:00 2001 From: Eduard Dlabal Date: Sun, 18 May 2025 16:27:45 +0200 Subject: [PATCH] Add DMA and LiquidCrystal I2C support - Implemented DMA functionality with a new dma.c and dma.h file. - Added LiquidCrystal I2C driver with liquidcrystal_i2c.c and liquidcrystal_i2c.h files. - Updated CMakeLists.txt to include dma.c and liquidcrystal_i2c.c in the build process. - Modified build.ninja and compile_commands.json to reflect the new source files. - Enhanced the main application to utilize the new DMA and LiquidCrystal I2C features. --- .mxproject | 32 ++-- CMakeLists.txt | 1 + Core/Inc/dma.h | 52 ++++++ Core/Inc/liquidcrystal_i2c.h | 88 +++++++++ Core/Inc/stm32f1xx_hal_conf.h | 2 +- Core/Inc/stm32f1xx_it.h | 3 +- Core/Src/dma.c | 58 ++++++ Core/Src/i2c.c | 6 - Core/Src/liquidcrystal_i2c.c | 296 ++++++++++++++++++++++++++++++ Core/Src/main.c | 129 ++++++++++++- Core/Src/stm32f1xx_it.c | 31 +++- Core/Src/usart.c | 39 ++++ LightTAM_RFID_Reader.ioc | 43 ++++- build/Debug/.ninja_deps | Bin 38716 -> 26988 bytes build/Debug/.ninja_log | 108 +++++------ build/Debug/build.ninja | 18 +- build/Debug/compile_commands.json | 12 ++ cmake/stm32cubemx/CMakeLists.txt | 1 + 18 files changed, 814 insertions(+), 105 deletions(-) create mode 100644 Core/Inc/dma.h create mode 100755 Core/Inc/liquidcrystal_i2c.h create mode 100644 Core/Src/dma.c create mode 100755 Core/Src/liquidcrystal_i2c.c diff --git a/.mxproject b/.mxproject index aea9dd2..db4747f 100644 --- a/.mxproject +++ b/.mxproject @@ -2,31 +2,33 @@ LibFiles=Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_i2c.h;Drivers/STM32F1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc_ex.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_bus.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_rcc.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_system.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_utils.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio_ex.h;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_gpio.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_dma.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_cortex.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_pwr.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_exti.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_exti.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_spi.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_spi.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usart.h;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2c.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_spi.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.c;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_i2c.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_i2c.h;Drivers/STM32F1xx_HAL_Driver/Inc/Legacy/stm32_hal_legacy.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_def.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_rcc_ex.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_bus.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_rcc.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_system.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_utils.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_gpio_ex.h;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_gpio.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma_ex.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_dma.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_cortex.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_pwr.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_pwr.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_flash_ex.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_exti.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_exti.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_spi.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_spi.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_uart.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_ll_usart.h;Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xb.h;Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f1xx.h;Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h;Drivers/CMSIS/Device/ST/STM32F1xx/Include/system_stm32f1xx.h;Drivers/CMSIS/Device/ST/STM32F1xx/Source/Templates/system_stm32f1xx.c;Drivers/CMSIS/Include/core_cm4.h;Drivers/CMSIS/Include/cmsis_iccarm.h;Drivers/CMSIS/Include/core_sc000.h;Drivers/CMSIS/Include/cmsis_armclang.h;Drivers/CMSIS/Include/core_cm0plus.h;Drivers/CMSIS/Include/core_cm7.h;Drivers/CMSIS/Include/cmsis_compiler.h;Drivers/CMSIS/Include/core_sc300.h;Drivers/CMSIS/Include/core_cm0.h;Drivers/CMSIS/Include/core_cm3.h;Drivers/CMSIS/Include/cmsis_armcc.h;Drivers/CMSIS/Include/core_armv8mbl.h;Drivers/CMSIS/Include/core_cm33.h;Drivers/CMSIS/Include/tz_context.h;Drivers/CMSIS/Include/core_cm23.h;Drivers/CMSIS/Include/core_cm1.h;Drivers/CMSIS/Include/cmsis_gcc.h;Drivers/CMSIS/Include/core_armv8mml.h;Drivers/CMSIS/Include/mpu_armv8.h;Drivers/CMSIS/Include/cmsis_version.h;Drivers/CMSIS/Include/mpu_armv7.h; [PreviousUsedCMakes] -SourceFiles=Core/Src/main.c;Core/Src/gpio.c;Core/Src/i2c.c;Core/Src/spi.c;Core/Src/usart.c;Core/Src/stm32f1xx_it.c;Core/Src/stm32f1xx_hal_msp.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2c.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_spi.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.c;Drivers/CMSIS/Device/ST/STM32F1xx/Source/Templates/system_stm32f1xx.c;Core/Src/system_stm32f1xx.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2c.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_spi.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.c;Drivers/CMSIS/Device/ST/STM32F1xx/Source/Templates/system_stm32f1xx.c;Core/Src/system_stm32f1xx.c;;; +SourceFiles=Core/Src/main.c;Core/Src/gpio.c;Core/Src/dma.c;Core/Src/i2c.c;Core/Src/spi.c;Core/Src/usart.c;Core/Src/stm32f1xx_it.c;Core/Src/stm32f1xx_hal_msp.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2c.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_spi.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.c;Drivers/CMSIS/Device/ST/STM32F1xx/Source/Templates/system_stm32f1xx.c;Core/Src/system_stm32f1xx.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2c.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_spi.c;Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.c;Drivers/CMSIS/Device/ST/STM32F1xx/Source/Templates/system_stm32f1xx.c;Core/Src/system_stm32f1xx.c;;; HeaderPath=Drivers/STM32F1xx_HAL_Driver/Inc;Drivers/STM32F1xx_HAL_Driver/Inc/Legacy;Drivers/CMSIS/Device/ST/STM32F1xx/Include;Drivers/CMSIS/Include;Core/Inc; CDefines=USE_HAL_DRIVER;STM32F103xB;USE_HAL_DRIVER;USE_HAL_DRIVER; [PreviousGenFiles] AdvancedFolderStructure=true -HeaderFileListSize=7 +HeaderFileListSize=8 HeaderFiles#0=../Core/Inc/gpio.h -HeaderFiles#1=../Core/Inc/i2c.h -HeaderFiles#2=../Core/Inc/spi.h -HeaderFiles#3=../Core/Inc/usart.h -HeaderFiles#4=../Core/Inc/stm32f1xx_it.h -HeaderFiles#5=../Core/Inc/stm32f1xx_hal_conf.h -HeaderFiles#6=../Core/Inc/main.h +HeaderFiles#1=../Core/Inc/dma.h +HeaderFiles#2=../Core/Inc/i2c.h +HeaderFiles#3=../Core/Inc/spi.h +HeaderFiles#4=../Core/Inc/usart.h +HeaderFiles#5=../Core/Inc/stm32f1xx_it.h +HeaderFiles#6=../Core/Inc/stm32f1xx_hal_conf.h +HeaderFiles#7=../Core/Inc/main.h HeaderFolderListSize=1 HeaderPath#0=../Core/Inc HeaderFiles=; -SourceFileListSize=7 +SourceFileListSize=8 SourceFiles#0=../Core/Src/gpio.c -SourceFiles#1=../Core/Src/i2c.c -SourceFiles#2=../Core/Src/spi.c -SourceFiles#3=../Core/Src/usart.c -SourceFiles#4=../Core/Src/stm32f1xx_it.c -SourceFiles#5=../Core/Src/stm32f1xx_hal_msp.c -SourceFiles#6=../Core/Src/main.c +SourceFiles#1=../Core/Src/dma.c +SourceFiles#2=../Core/Src/i2c.c +SourceFiles#3=../Core/Src/spi.c +SourceFiles#4=../Core/Src/usart.c +SourceFiles#5=../Core/Src/stm32f1xx_it.c +SourceFiles#6=../Core/Src/stm32f1xx_hal_msp.c +SourceFiles#7=../Core/Src/main.c SourceFolderListSize=1 SourcePath#0=../Core/Src SourceFiles=; diff --git a/CMakeLists.txt b/CMakeLists.txt index 04857c8..6edb22d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -50,6 +50,7 @@ target_sources(${CMAKE_PROJECT_NAME} PRIVATE # Add user sources here Core/Src/pn532_stm32f1.c Core/Src/pn532.c + Core/Src/liquidcrystal_i2c.c ) # Add include paths diff --git a/Core/Inc/dma.h b/Core/Inc/dma.h new file mode 100644 index 0000000..b874495 --- /dev/null +++ b/Core/Inc/dma.h @@ -0,0 +1,52 @@ +/* USER CODE BEGIN Header */ +/** + ****************************************************************************** + * @file dma.h + * @brief This file contains all the function prototypes for + * the dma.c file + ****************************************************************************** + * @attention + * + * Copyright (c) 2025 STMicroelectronics. + * All rights reserved. + * + * This software is licensed under terms that can be found in the LICENSE file + * in the root directory of this software component. + * If no LICENSE file comes with this software, it is provided AS-IS. + * + ****************************************************************************** + */ +/* USER CODE END Header */ +/* Define to prevent recursive inclusion -------------------------------------*/ +#ifndef __DMA_H__ +#define __DMA_H__ + +#ifdef __cplusplus +extern "C" { +#endif + +/* Includes ------------------------------------------------------------------*/ +#include "main.h" + +/* DMA memory to memory transfer handles -------------------------------------*/ + +/* USER CODE BEGIN Includes */ + +/* USER CODE END Includes */ + +/* USER CODE BEGIN Private defines */ + +/* USER CODE END Private defines */ + +void MX_DMA_Init(void); + +/* USER CODE BEGIN Prototypes */ + +/* USER CODE END Prototypes */ + +#ifdef __cplusplus +} +#endif + +#endif /* __DMA_H__ */ + diff --git a/Core/Inc/liquidcrystal_i2c.h b/Core/Inc/liquidcrystal_i2c.h new file mode 100755 index 0000000..fc2074c --- /dev/null +++ b/Core/Inc/liquidcrystal_i2c.h @@ -0,0 +1,88 @@ +#ifndef LIQUIDCRYSTAL_I2C_H_ +#define LIQUIDCRYSTAL_I2C_H_ + +#include "stm32f1xx_hal.h" + +/* Command */ +#define LCD_CLEARDISPLAY 0x01 +#define LCD_RETURNHOME 0x02 +#define LCD_ENTRYMODESET 0x04 +#define LCD_DISPLAYCONTROL 0x08 +#define LCD_CURSORSHIFT 0x10 +#define LCD_FUNCTIONSET 0x20 +#define LCD_SETCGRAMADDR 0x40 +#define LCD_SETDDRAMADDR 0x80 + +/* Entry Mode */ +#define LCD_ENTRYRIGHT 0x00 +#define LCD_ENTRYLEFT 0x02 +#define LCD_ENTRYSHIFTINCREMENT 0x01 +#define LCD_ENTRYSHIFTDECREMENT 0x00 + +/* Display On/Off */ +#define LCD_DISPLAYON 0x04 +#define LCD_DISPLAYOFF 0x00 +#define LCD_CURSORON 0x02 +#define LCD_CURSOROFF 0x00 +#define LCD_BLINKON 0x01 +#define LCD_BLINKOFF 0x00 + +/* Cursor Shift */ +#define LCD_DISPLAYMOVE 0x08 +#define LCD_CURSORMOVE 0x00 +#define LCD_MOVERIGHT 0x04 +#define LCD_MOVELEFT 0x00 + +/* Function Set */ +#define LCD_8BITMODE 0x10 +#define LCD_4BITMODE 0x00 +#define LCD_2LINE 0x08 +#define LCD_1LINE 0x00 +#define LCD_5x10DOTS 0x04 +#define LCD_5x8DOTS 0x00 + +/* Backlight */ +#define LCD_BACKLIGHT 0x08 +#define LCD_NOBACKLIGHT 0x00 + +/* Enable Bit */ +#define ENABLE 0x04 + +/* Read Write Bit */ +#define RW 0x0 + +/* Register Select Bit */ +#define RS 0x01 + +/* Device I2C Address */ +#define DEVICE_ADDR (0x27 << 1) + +void HD44780_Init(uint8_t rows); +void HD44780_Clear(); +void HD44780_Home(); +void HD44780_NoDisplay(); +void HD44780_Display(); +void HD44780_NoBlink(); +void HD44780_Blink(); +void HD44780_NoCursor(); +void HD44780_Cursor(); +void HD44780_ScrollDisplayLeft(); +void HD44780_ScrollDisplayRight(); +void HD44780_PrintLeft(); +void HD44780_PrintRight(); +void HD44780_LeftToRight(); +void HD44780_RightToLeft(); +void HD44780_ShiftIncrement(); +void HD44780_ShiftDecrement(); +void HD44780_NoBacklight(); +void HD44780_Backlight(); +void HD44780_AutoScroll(); +void HD44780_NoAutoScroll(); +void HD44780_CreateSpecialChar(uint8_t, uint8_t[]); +void HD44780_PrintSpecialChar(uint8_t); +void HD44780_SetCursor(uint8_t, uint8_t); +void HD44780_SetBacklight(uint8_t new_val); +void HD44780_LoadCustomCharacter(uint8_t char_num, uint8_t *rows); +void HD44780_PrintStr(const char[]); + +#endif /* LIQUIDCRYSTAL_I2C_H_ */ diff --git a/Core/Inc/stm32f1xx_hal_conf.h b/Core/Inc/stm32f1xx_hal_conf.h index bb619cf..0350b8e 100644 --- a/Core/Inc/stm32f1xx_hal_conf.h +++ b/Core/Inc/stm32f1xx_hal_conf.h @@ -42,7 +42,7 @@ /*#define HAL_CORTEX_MODULE_ENABLED */ /*#define HAL_CRC_MODULE_ENABLED */ /*#define HAL_DAC_MODULE_ENABLED */ -/*#define HAL_DMA_MODULE_ENABLED */ +#define HAL_DMA_MODULE_ENABLED /*#define HAL_ETH_MODULE_ENABLED */ /*#define HAL_FLASH_MODULE_ENABLED */ #define HAL_GPIO_MODULE_ENABLED diff --git a/Core/Inc/stm32f1xx_it.h b/Core/Inc/stm32f1xx_it.h index 42ae767..a1c319c 100644 --- a/Core/Inc/stm32f1xx_it.h +++ b/Core/Inc/stm32f1xx_it.h @@ -55,7 +55,8 @@ void SVC_Handler(void); void DebugMon_Handler(void); void PendSV_Handler(void); void SysTick_Handler(void); -void I2C1_EV_IRQHandler(void); +void DMA1_Channel6_IRQHandler(void); +void DMA1_Channel7_IRQHandler(void); void USART1_IRQHandler(void); void USART2_IRQHandler(void); /* USER CODE BEGIN EFP */ diff --git a/Core/Src/dma.c b/Core/Src/dma.c new file mode 100644 index 0000000..3ce56e3 --- /dev/null +++ b/Core/Src/dma.c @@ -0,0 +1,58 @@ +/* USER CODE BEGIN Header */ +/** + ****************************************************************************** + * @file dma.c + * @brief This file provides code for the configuration + * of all the requested memory to memory DMA transfers. + ****************************************************************************** + * @attention + * + * Copyright (c) 2025 STMicroelectronics. + * All rights reserved. + * + * This software is licensed under terms that can be found in the LICENSE file + * in the root directory of this software component. + * If no LICENSE file comes with this software, it is provided AS-IS. + * + ****************************************************************************** + */ +/* USER CODE END Header */ + +/* Includes ------------------------------------------------------------------*/ +#include "dma.h" + +/* USER CODE BEGIN 0 */ + +/* USER CODE END 0 */ + +/*----------------------------------------------------------------------------*/ +/* Configure DMA */ +/*----------------------------------------------------------------------------*/ + +/* USER CODE BEGIN 1 */ + +/* USER CODE END 1 */ + +/** + * Enable DMA controller clock + */ +void MX_DMA_Init(void) +{ + + /* DMA controller clock enable */ + __HAL_RCC_DMA1_CLK_ENABLE(); + + /* DMA interrupt init */ + /* DMA1_Channel6_IRQn interrupt configuration */ + HAL_NVIC_SetPriority(DMA1_Channel6_IRQn, 0, 0); + HAL_NVIC_EnableIRQ(DMA1_Channel6_IRQn); + /* DMA1_Channel7_IRQn interrupt configuration */ + HAL_NVIC_SetPriority(DMA1_Channel7_IRQn, 0, 0); + HAL_NVIC_EnableIRQ(DMA1_Channel7_IRQn); + +} + +/* USER CODE BEGIN 2 */ + +/* USER CODE END 2 */ + diff --git a/Core/Src/i2c.c b/Core/Src/i2c.c index 280a29a..eea5b4e 100644 --- a/Core/Src/i2c.c +++ b/Core/Src/i2c.c @@ -78,10 +78,6 @@ void HAL_I2C_MspInit(I2C_HandleTypeDef* i2cHandle) /* I2C1 clock enable */ __HAL_RCC_I2C1_CLK_ENABLE(); - - /* I2C1 interrupt Init */ - HAL_NVIC_SetPriority(I2C1_EV_IRQn, 0, 0); - HAL_NVIC_EnableIRQ(I2C1_EV_IRQn); /* USER CODE BEGIN I2C1_MspInit 1 */ /* USER CODE END I2C1_MspInit 1 */ @@ -107,8 +103,6 @@ void HAL_I2C_MspDeInit(I2C_HandleTypeDef* i2cHandle) HAL_GPIO_DeInit(GPIOB, GPIO_PIN_7); - /* I2C1 interrupt Deinit */ - HAL_NVIC_DisableIRQ(I2C1_EV_IRQn); /* USER CODE BEGIN I2C1_MspDeInit 1 */ /* USER CODE END I2C1_MspDeInit 1 */ diff --git a/Core/Src/liquidcrystal_i2c.c b/Core/Src/liquidcrystal_i2c.c new file mode 100755 index 0000000..99cc321 --- /dev/null +++ b/Core/Src/liquidcrystal_i2c.c @@ -0,0 +1,296 @@ +#include "liquidcrystal_i2c.h" + +extern I2C_HandleTypeDef hi2c1; + +uint8_t dpFunction; +uint8_t dpControl; +uint8_t dpMode; +uint8_t dpRows; +uint8_t dpBacklight; + +static void SendCommand(uint8_t); +static void SendChar(uint8_t); +static void Send(uint8_t, uint8_t); +static void Write4Bits(uint8_t); +static void ExpanderWrite(uint8_t); +static void PulseEnable(uint8_t); +static void DelayInit(void); +static void DelayUS(uint32_t); + +uint8_t special1[8] = { + 0b00000, + 0b11001, + 0b11011, + 0b00110, + 0b01100, + 0b11011, + 0b10011, + 0b00000 +}; + +uint8_t special2[8] = { + 0b11000, + 0b11000, + 0b00110, + 0b01001, + 0b01000, + 0b01001, + 0b00110, + 0b00000 +}; + +void HD44780_Init(uint8_t rows) +{ + dpRows = rows; + + dpBacklight = LCD_BACKLIGHT; + + dpFunction = LCD_4BITMODE | LCD_1LINE | LCD_5x8DOTS; + + if (dpRows > 1) + { + dpFunction |= LCD_2LINE; + } + else + { + dpFunction |= LCD_5x10DOTS; + } + + /* Wait for initialization */ + DelayInit(); + HAL_Delay(50); + + ExpanderWrite(dpBacklight); + HAL_Delay(1000); + + /* 4bit Mode */ + Write4Bits(0x03 << 4); + DelayUS(4500); + + Write4Bits(0x03 << 4); + DelayUS(4500); + + Write4Bits(0x03 << 4); + DelayUS(4500); + + Write4Bits(0x02 << 4); + DelayUS(100); + + /* Display Control */ + SendCommand(LCD_FUNCTIONSET | dpFunction); + + dpControl = LCD_DISPLAYON | LCD_CURSOROFF | LCD_BLINKOFF; + HD44780_Display(); + HD44780_Clear(); + + /* Display Mode */ + dpMode = LCD_ENTRYLEFT | LCD_ENTRYSHIFTDECREMENT; + SendCommand(LCD_ENTRYMODESET | dpMode); + DelayUS(4500); + + HD44780_CreateSpecialChar(0, special1); + HD44780_CreateSpecialChar(1, special2); + + HD44780_Home(); +} + +void HD44780_Clear() +{ + SendCommand(LCD_CLEARDISPLAY); + DelayUS(2000); +} + +void HD44780_Home() +{ + SendCommand(LCD_RETURNHOME); + DelayUS(2000); +} + +void HD44780_SetCursor(uint8_t col, uint8_t row) +{ + int row_offsets[] = { 0x00, 0x40, 0x14, 0x54 }; + if (row >= dpRows) + { + row = dpRows-1; + } + SendCommand(LCD_SETDDRAMADDR | (col + row_offsets[row])); +} + +void HD44780_NoDisplay() +{ + dpControl &= ~LCD_DISPLAYON; + SendCommand(LCD_DISPLAYCONTROL | dpControl); +} + +void HD44780_Display() +{ + dpControl |= LCD_DISPLAYON; + SendCommand(LCD_DISPLAYCONTROL | dpControl); +} + +void HD44780_NoCursor() +{ + dpControl &= ~LCD_CURSORON; + SendCommand(LCD_DISPLAYCONTROL | dpControl); +} + +void HD44780_Cursor() +{ + dpControl |= LCD_CURSORON; + SendCommand(LCD_DISPLAYCONTROL | dpControl); +} + +void HD44780_NoBlink() +{ + dpControl &= ~LCD_BLINKON; + SendCommand(LCD_DISPLAYCONTROL | dpControl); +} + +void HD44780_Blink() +{ + dpControl |= LCD_BLINKON; + SendCommand(LCD_DISPLAYCONTROL | dpControl); +} + +void HD44780_ScrollDisplayLeft(void) +{ + SendCommand(LCD_CURSORSHIFT | LCD_DISPLAYMOVE | LCD_MOVELEFT); +} + +void HD44780_ScrollDisplayRight(void) +{ + SendCommand(LCD_CURSORSHIFT | LCD_DISPLAYMOVE | LCD_MOVERIGHT); +} + +void HD44780_LeftToRight(void) +{ + dpMode |= LCD_ENTRYLEFT; + SendCommand(LCD_ENTRYMODESET | dpMode); +} + +void HD44780_RightToLeft(void) +{ + dpMode &= ~LCD_ENTRYLEFT; + SendCommand(LCD_ENTRYMODESET | dpMode); +} + +void HD44780_AutoScroll(void) +{ + dpMode |= LCD_ENTRYSHIFTINCREMENT; + SendCommand(LCD_ENTRYMODESET | dpMode); +} + +void HD44780_NoAutoScroll(void) +{ + dpMode &= ~LCD_ENTRYSHIFTINCREMENT; + SendCommand(LCD_ENTRYMODESET | dpMode); +} + +void HD44780_CreateSpecialChar(uint8_t location, uint8_t charmap[]) +{ + location &= 0x7; + SendCommand(LCD_SETCGRAMADDR | (location << 3)); + for (int i=0; i<8; i++) + { + SendChar(charmap[i]); + } +} + +void HD44780_PrintSpecialChar(uint8_t index) +{ + SendChar(index); +} + +void HD44780_LoadCustomCharacter(uint8_t char_num, uint8_t *rows) +{ + HD44780_CreateSpecialChar(char_num, rows); +} + +void HD44780_PrintStr(const char c[]) +{ + while(*c) SendChar(*c++); +} + +void HD44780_SetBacklight(uint8_t new_val) +{ + if(new_val) HD44780_Backlight(); + else HD44780_NoBacklight(); +} + +void HD44780_NoBacklight(void) +{ + dpBacklight=LCD_NOBACKLIGHT; + ExpanderWrite(0); +} + +void HD44780_Backlight(void) +{ + dpBacklight=LCD_BACKLIGHT; + ExpanderWrite(0); +} + +static void SendCommand(uint8_t cmd) +{ + Send(cmd, 0); +} + +static void SendChar(uint8_t ch) +{ + Send(ch, RS); +} + +static void Send(uint8_t value, uint8_t mode) +{ + uint8_t highnib = value & 0xF0; + uint8_t lownib = (value<<4) & 0xF0; + Write4Bits((highnib)|mode); + Write4Bits((lownib)|mode); +} + +static void Write4Bits(uint8_t value) +{ + ExpanderWrite(value); + PulseEnable(value); +} + +static void ExpanderWrite(uint8_t _data) +{ + uint8_t data = _data | dpBacklight; + HAL_I2C_Master_Transmit(&hi2c1, DEVICE_ADDR, (uint8_t*)&data, 1, 10); +} + +static void PulseEnable(uint8_t _data) +{ + ExpanderWrite(_data | ENABLE); + DelayUS(20); + + ExpanderWrite(_data & ~ENABLE); + DelayUS(20); +} + +static void DelayInit(void) +{ + CoreDebug->DEMCR &= ~CoreDebug_DEMCR_TRCENA_Msk; + CoreDebug->DEMCR |= CoreDebug_DEMCR_TRCENA_Msk; + + DWT->CTRL &= ~DWT_CTRL_CYCCNTENA_Msk; //~0x00000001; + DWT->CTRL |= DWT_CTRL_CYCCNTENA_Msk; //0x00000001; + + DWT->CYCCNT = 0; + + /* 3 NO OPERATION instructions */ + __ASM volatile ("NOP"); + __ASM volatile ("NOP"); + __ASM volatile ("NOP"); +} + +static void DelayUS(uint32_t us) { + uint32_t cycles = (SystemCoreClock/1000000L)*us; + uint32_t start = DWT->CYCCNT; + volatile uint32_t cnt; + + do + { + cnt = DWT->CYCCNT - start; + } while(cnt < cycles); +} diff --git a/Core/Src/main.c b/Core/Src/main.c index 01ce7ff..59702c7 100644 --- a/Core/Src/main.c +++ b/Core/Src/main.c @@ -19,6 +19,7 @@ /* USER CODE END Header */ /* Includes ------------------------------------------------------------------*/ #include "main.h" +#include "dma.h" #include "i2c.h" #include "spi.h" #include "usart.h" @@ -27,6 +28,11 @@ /* Private includes ----------------------------------------------------------*/ /* USER CODE BEGIN Includes */ #include "pn532_stm32f1.h" +#include "liquidcrystal_i2c.h" + +#include +#include +#include /* USER CODE END Includes */ /* Private typedef -----------------------------------------------------------*/ @@ -36,7 +42,14 @@ /* Private define ------------------------------------------------------------*/ /* USER CODE BEGIN PD */ +typedef struct +{ + uint8_t state; + char name[32]; + char surname[32]; + time_t time; +} incomming_data_t; /* USER CODE END PD */ /* Private macro -------------------------------------------------------------*/ @@ -59,7 +72,7 @@ void SystemClock_Config(void); /* Private user code ---------------------------------------------------------*/ /* USER CODE BEGIN 0 */ void sendToServer(uint16_t _uuid); -void send_CalculateCRC(uint8_t *packet); +void parseIncommingPacket(uint8_t *_packet, incomming_data_t *_data); /* USER CODE END 0 */ /** @@ -83,7 +96,7 @@ int main(void) HAL_Init(); /* USER CODE BEGIN Init */ - + incomming_data_t R_Data; /* USER CODE END Init */ /* Configure the system clock */ @@ -95,12 +108,21 @@ int main(void) /* Initialize all configured peripherals */ MX_GPIO_Init(); + MX_DMA_Init(); MX_I2C1_Init(); MX_USART1_UART_Init(); MX_USART2_UART_Init(); MX_SPI1_Init(); /* USER CODE BEGIN 2 */ - printf("Hello!\r\n"); + HD44780_Init(2); + HD44780_Clear(); + HD44780_SetCursor(0, 0); + HD44780_PrintStr("LightTAM RFID"); + HD44780_SetCursor(0, 1); + HD44780_PrintStr("(C) E. Dlabal"); + HAL_Delay(2000); + HD44780_Clear(); + PN532 pn532; // PN532_SPI_Init(&pn532); PN532_I2C_Init(&pn532); @@ -114,6 +136,8 @@ int main(void) return -1; } PN532_SamConfiguration(&pn532); + HD44780_SetCursor(1, 0); + HD44780_PrintStr("Prilozte kartu"); printf("Waiting for RFID/NFC card...\r\n"); HAL_GPIO_WritePin(GREEN_LED_GPIO_Port, GREEN_LED_Pin, GPIO_PIN_SET); @@ -127,6 +151,7 @@ int main(void) /* USER CODE BEGIN 3 */ // Check if a card is available to read + uid_len = PN532_ReadPassiveTarget(&pn532, uid, PN532_MIFARE_ISO14443A, 1000); if (uid_len == PN532_STATUS_ERROR) { @@ -134,9 +159,15 @@ int main(void) } else { - printf("Found card with UID: "); + HD44780_Clear(); + HD44780_SetCursor(0, 0); + HD44780_PrintStr("Prosim,ponechte"); + HD44780_SetCursor(0, 1); + HD44780_PrintStr("kartu prilozenou"); HAL_GPIO_WritePin(GREEN_LED_GPIO_Port, GREEN_LED_Pin, GPIO_PIN_RESET); HAL_GPIO_WritePin(ORANGE_LED_GPIO_Port, ORANGE_LED_Pin, GPIO_PIN_SET); + printf("Found card with UID: "); + for (uint8_t i = 0; i < uid_len; i++) { printf("%02x ", uid[i]); @@ -146,8 +177,7 @@ int main(void) { printf(" Auth block 6..\r\n"); - pn532_error = PN532_MifareClassicAuthenticateBlock(&pn532, uid, uid_len, - 6, MIFARE_CMD_AUTH_A, key_a); + pn532_error = PN532_MifareClassicAuthenticateBlock(&pn532, uid, uid_len, 6, MIFARE_CMD_AUTH_A, key_a); for (uint8_t i = 0; i < 16; i++) { @@ -162,20 +192,61 @@ int main(void) printf("\r\n"); uint32_t value_le = (buff[3] << 24) | (buff[2] << 16) | (buff[1] << 8) | buff[0]; - printf("Cislo z bloku (little-endian): %lu\r\n", value_le); + printf("UUID: %lu\r\n", value_le); sendToServer(value_le); + + uint8_t r_packet[76]; + HAL_UART_Receive(&huart2, r_packet, 76, HAL_MAX_DELAY); + parseIncommingPacket(r_packet, &R_Data); + + HD44780_Clear(); HAL_GPIO_WritePin(ORANGE_LED_GPIO_Port, ORANGE_LED_Pin, GPIO_PIN_RESET); - HAL_GPIO_WritePin(GREEN_LED_GPIO_Port, GREEN_LED_Pin, GPIO_PIN_SET); + + if (R_Data.state == 1) + { + HAL_GPIO_WritePin(GREEN_LED_GPIO_Port, GREEN_LED_Pin, GPIO_PIN_SET); + HD44780_SetCursor(1, 0); + HD44780_PrintStr("Prichod OK"); + HD44780_SetCursor(0, 1); + char name[15]; + sprintf(name, "%10s,%1s.", R_Data.surname, R_Data.name); + HD44780_PrintStr(name); + } + else if (R_Data.state == 2) + { + HAL_GPIO_WritePin(GREEN_LED_GPIO_Port, GREEN_LED_Pin, GPIO_PIN_SET); + HD44780_SetCursor(1, 0); + HD44780_PrintStr("Odchod OK"); + HD44780_SetCursor(0, 1); + char name[15]; + sprintf(name, "%10s,%1s.", R_Data.surname, R_Data.name); + HD44780_PrintStr(name); + } + else if (R_Data.state == 0) + { + HAL_GPIO_WritePin(RED_LED_GPIO_Port, RED_LED_Pin, GPIO_PIN_SET); + HD44780_SetCursor(1, 0); + HD44780_PrintStr("Chyba"); + HD44780_SetCursor(0, 1); + HD44780_PrintStr("Zkuste to znovu"); + } + while (PN532_ReadPassiveTarget(&pn532, uid, PN532_MIFARE_ISO14443A, 100) != PN532_STATUS_ERROR) { HAL_Delay(100); } + HAL_GPIO_WritePin(RED_LED_GPIO_Port, RED_LED_Pin, GPIO_PIN_RESET); + HAL_GPIO_WritePin(GREEN_LED_GPIO_Port, GREEN_LED_Pin, GPIO_PIN_SET); + printf("Card removed. Waiting for next card...\r\n"); - break; // Exit the inner while(1) to wait for a new card + HD44780_Clear(); + HD44780_SetCursor(1, 0); + HD44780_PrintStr("Prilozte kartu"); if (pn532_error) { printf("Error: 0x%02x\r\n", pn532_error); } + break; } } } @@ -243,8 +314,48 @@ void sendToServer(uint16_t _uuid) packet[5] = crc; HAL_UART_Transmit(&huart2, packet, 6, HAL_MAX_DELAY); + + return; } +void parseIncommingPacket(uint8_t *_packet, incomming_data_t *_data) +{ + if (_packet[0] != 0xFF || _packet[1] != 0x55) + { + printf("Invalid packet header\r\n"); + return; + } + + uint8_t state = _packet[2]; + char name[32] = {0}; + char surname[32] = {0}; + time_t time = 0; + uint8_t crc = 0; + + memcpy(name, _packet + 3, 31); + name[31] = '\0'; + memcpy(surname, _packet + 35, 31); + surname[31] = '\0'; + + memcpy(&time, _packet + 67, sizeof(time_t)); + + for (int i = 0; i < 67 + sizeof(time_t); i++) + { + crc ^= _packet[i]; + } + if (crc != _packet[67 + sizeof(time_t)]) + { + printf("CRC error\r\n"); + return; + } + + strcpy(_data->name, name); + strcpy(_data->surname, surname); + _data->state = state; + _data->time = time; + + return; +} #ifdef __GNUC__ /* With GCC/RAISONANCE, small printf (option LD Linker->Libraries->Small printf diff --git a/Core/Src/stm32f1xx_it.c b/Core/Src/stm32f1xx_it.c index b33df2f..d665bfc 100644 --- a/Core/Src/stm32f1xx_it.c +++ b/Core/Src/stm32f1xx_it.c @@ -55,7 +55,8 @@ /* USER CODE END 0 */ /* External variables --------------------------------------------------------*/ -extern I2C_HandleTypeDef hi2c1; +extern DMA_HandleTypeDef hdma_usart2_rx; +extern DMA_HandleTypeDef hdma_usart2_tx; extern UART_HandleTypeDef huart1; extern UART_HandleTypeDef huart2; /* USER CODE BEGIN EV */ @@ -201,17 +202,31 @@ void SysTick_Handler(void) /******************************************************************************/ /** - * @brief This function handles I2C1 event interrupt. + * @brief This function handles DMA1 channel6 global interrupt. */ -void I2C1_EV_IRQHandler(void) +void DMA1_Channel6_IRQHandler(void) { - /* USER CODE BEGIN I2C1_EV_IRQn 0 */ + /* USER CODE BEGIN DMA1_Channel6_IRQn 0 */ - /* USER CODE END I2C1_EV_IRQn 0 */ - HAL_I2C_EV_IRQHandler(&hi2c1); - /* USER CODE BEGIN I2C1_EV_IRQn 1 */ + /* USER CODE END DMA1_Channel6_IRQn 0 */ + HAL_DMA_IRQHandler(&hdma_usart2_rx); + /* USER CODE BEGIN DMA1_Channel6_IRQn 1 */ - /* USER CODE END I2C1_EV_IRQn 1 */ + /* USER CODE END DMA1_Channel6_IRQn 1 */ +} + +/** + * @brief This function handles DMA1 channel7 global interrupt. + */ +void DMA1_Channel7_IRQHandler(void) +{ + /* USER CODE BEGIN DMA1_Channel7_IRQn 0 */ + + /* USER CODE END DMA1_Channel7_IRQn 0 */ + HAL_DMA_IRQHandler(&hdma_usart2_tx); + /* USER CODE BEGIN DMA1_Channel7_IRQn 1 */ + + /* USER CODE END DMA1_Channel7_IRQn 1 */ } /** diff --git a/Core/Src/usart.c b/Core/Src/usart.c index ca706fc..48f6672 100644 --- a/Core/Src/usart.c +++ b/Core/Src/usart.c @@ -26,6 +26,8 @@ UART_HandleTypeDef huart1; UART_HandleTypeDef huart2; +DMA_HandleTypeDef hdma_usart2_rx; +DMA_HandleTypeDef hdma_usart2_tx; /* USART1 init function */ @@ -143,6 +145,39 @@ void HAL_UART_MspInit(UART_HandleTypeDef* uartHandle) GPIO_InitStruct.Pull = GPIO_NOPULL; HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); + /* USART2 DMA Init */ + /* USART2_RX Init */ + hdma_usart2_rx.Instance = DMA1_Channel6; + hdma_usart2_rx.Init.Direction = DMA_PERIPH_TO_MEMORY; + hdma_usart2_rx.Init.PeriphInc = DMA_PINC_DISABLE; + hdma_usart2_rx.Init.MemInc = DMA_MINC_ENABLE; + hdma_usart2_rx.Init.PeriphDataAlignment = DMA_PDATAALIGN_BYTE; + hdma_usart2_rx.Init.MemDataAlignment = DMA_MDATAALIGN_BYTE; + hdma_usart2_rx.Init.Mode = DMA_CIRCULAR; + hdma_usart2_rx.Init.Priority = DMA_PRIORITY_LOW; + if (HAL_DMA_Init(&hdma_usart2_rx) != HAL_OK) + { + Error_Handler(); + } + + __HAL_LINKDMA(uartHandle,hdmarx,hdma_usart2_rx); + + /* USART2_TX Init */ + hdma_usart2_tx.Instance = DMA1_Channel7; + hdma_usart2_tx.Init.Direction = DMA_MEMORY_TO_PERIPH; + hdma_usart2_tx.Init.PeriphInc = DMA_PINC_DISABLE; + hdma_usart2_tx.Init.MemInc = DMA_MINC_ENABLE; + hdma_usart2_tx.Init.PeriphDataAlignment = DMA_PDATAALIGN_BYTE; + hdma_usart2_tx.Init.MemDataAlignment = DMA_MDATAALIGN_BYTE; + hdma_usart2_tx.Init.Mode = DMA_CIRCULAR; + hdma_usart2_tx.Init.Priority = DMA_PRIORITY_LOW; + if (HAL_DMA_Init(&hdma_usart2_tx) != HAL_OK) + { + Error_Handler(); + } + + __HAL_LINKDMA(uartHandle,hdmatx,hdma_usart2_tx); + /* USART2 interrupt Init */ HAL_NVIC_SetPriority(USART2_IRQn, 0, 0); HAL_NVIC_EnableIRQ(USART2_IRQn); @@ -189,6 +224,10 @@ void HAL_UART_MspDeInit(UART_HandleTypeDef* uartHandle) */ HAL_GPIO_DeInit(GPIOA, GPIO_PIN_2|GPIO_PIN_3); + /* USART2 DMA DeInit */ + HAL_DMA_DeInit(uartHandle->hdmarx); + HAL_DMA_DeInit(uartHandle->hdmatx); + /* USART2 interrupt Deinit */ HAL_NVIC_DisableIRQ(USART2_IRQn); /* USER CODE BEGIN USART2_MspDeInit 1 */ diff --git a/LightTAM_RFID_Reader.ioc b/LightTAM_RFID_Reader.ioc index 70e8682..bdd16fb 100644 --- a/LightTAM_RFID_Reader.ioc +++ b/LightTAM_RFID_Reader.ioc @@ -2,19 +2,41 @@ CAD.formats= CAD.pinconfig= CAD.provider= +Dma.Request0=USART2_RX +Dma.Request1=USART2_TX +Dma.RequestsNb=2 +Dma.USART2_RX.0.Direction=DMA_PERIPH_TO_MEMORY +Dma.USART2_RX.0.Instance=DMA1_Channel6 +Dma.USART2_RX.0.MemDataAlignment=DMA_MDATAALIGN_BYTE +Dma.USART2_RX.0.MemInc=DMA_MINC_ENABLE +Dma.USART2_RX.0.Mode=DMA_CIRCULAR +Dma.USART2_RX.0.PeriphDataAlignment=DMA_PDATAALIGN_BYTE +Dma.USART2_RX.0.PeriphInc=DMA_PINC_DISABLE +Dma.USART2_RX.0.Priority=DMA_PRIORITY_LOW +Dma.USART2_RX.0.RequestParameters=Instance,Direction,PeriphInc,MemInc,PeriphDataAlignment,MemDataAlignment,Mode,Priority +Dma.USART2_TX.1.Direction=DMA_MEMORY_TO_PERIPH +Dma.USART2_TX.1.Instance=DMA1_Channel7 +Dma.USART2_TX.1.MemDataAlignment=DMA_MDATAALIGN_BYTE +Dma.USART2_TX.1.MemInc=DMA_MINC_ENABLE +Dma.USART2_TX.1.Mode=DMA_CIRCULAR +Dma.USART2_TX.1.PeriphDataAlignment=DMA_PDATAALIGN_BYTE +Dma.USART2_TX.1.PeriphInc=DMA_PINC_DISABLE +Dma.USART2_TX.1.Priority=DMA_PRIORITY_LOW +Dma.USART2_TX.1.RequestParameters=Instance,Direction,PeriphInc,MemInc,PeriphDataAlignment,MemDataAlignment,Mode,Priority File.Version=6 GPIO.groupedBy=Group By Peripherals KeepUserPlacement=false Mcu.CPN=STM32F103C8T6 Mcu.Family=STM32F1 -Mcu.IP0=I2C1 -Mcu.IP1=NVIC -Mcu.IP2=RCC -Mcu.IP3=SPI1 -Mcu.IP4=SYS -Mcu.IP5=USART1 -Mcu.IP6=USART2 -Mcu.IPNb=7 +Mcu.IP0=DMA +Mcu.IP1=I2C1 +Mcu.IP2=NVIC +Mcu.IP3=RCC +Mcu.IP4=SPI1 +Mcu.IP5=SYS +Mcu.IP6=USART1 +Mcu.IP7=USART2 +Mcu.IPNb=8 Mcu.Name=STM32F103C(8-B)Tx Mcu.Package=LQFP48 Mcu.Pin0=PD0-OSC_IN @@ -44,10 +66,11 @@ Mcu.UserName=STM32F103C8Tx MxCube.Version=6.14.0 MxDb.Version=DB.6.0.140 NVIC.BusFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false +NVIC.DMA1_Channel6_IRQn=true\:0\:0\:false\:false\:true\:false\:true\:true +NVIC.DMA1_Channel7_IRQn=true\:0\:0\:false\:false\:true\:false\:true\:true NVIC.DebugMonitor_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false NVIC.ForceEnableDMAVector=true NVIC.HardFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false -NVIC.I2C1_EV_IRQn=true\:0\:0\:false\:false\:true\:true\:true\:true NVIC.MemoryManagement_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false NVIC.NonMaskableInt_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false NVIC.PendSV_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false @@ -147,7 +170,7 @@ ProjectManager.ToolChainLocation= ProjectManager.UAScriptAfterPath= ProjectManager.UAScriptBeforePath= ProjectManager.UnderRoot=false -ProjectManager.functionlistsort=1-SystemClock_Config-RCC-false-HAL-false,2-MX_GPIO_Init-GPIO-false-HAL-true,3-MX_I2C1_Init-I2C1-false-HAL-true,4-MX_USART1_UART_Init-USART1-false-HAL-true,5-MX_USART2_UART_Init-USART2-false-HAL-true +ProjectManager.functionlistsort=1-SystemClock_Config-RCC-false-HAL-false,2-MX_GPIO_Init-GPIO-false-HAL-true,3-MX_DMA_Init-DMA-false-HAL-true,4-MX_I2C1_Init-I2C1-false-HAL-true,5-MX_USART1_UART_Init-USART1-false-HAL-true,6-MX_USART2_UART_Init-USART2-false-HAL-true,7-MX_SPI1_Init-SPI1-false-HAL-true RCC.ADCFreqValue=36000000 RCC.AHBFreq_Value=72000000 RCC.APB1CLKDivider=RCC_HCLK_DIV2 diff --git a/build/Debug/.ninja_deps b/build/Debug/.ninja_deps index 98d269e4268e418381f39c28828f6b219f2701cb..5a726e7e4952932deeb1dcf53aa45823c3233041 100644 GIT binary patch delta 1910 zcmcgsZA?>F7`|nf%e~Nobt5vz0!&25uz;N#ZUtIpqMHGnARm#HugzAGRa%gi3dLAH zdJ7l&GOb^cnUZV~5p^<>kp=e^V`2u&l9|jPZZk8B8zD2{-`IQ3T?u9jzs!C->3N^$ zz3+M7o^zh@;gE;lDMlvZ;7+$6h7!}EEB*x3cKTr~;UVZey)gO80XVnj2q?RHQNIDs z9zV=zO>j3U44RYd5GxTr9j>iA0pELMZRd+l81l+|SMs?~x%?v2Le)uZ&0pxV|f-c<;pGX5>+js|TVlVFW0QUBhUlUAha)Avn#sZHOa}!1iM?4)(0zbf70)@; z5$?S6@JE#o(#lv>EyFNvzghH^Mb7C zW6aQIkW|H(TX=bfRw#j~I1!HV8F`dPDbm*wVRgR4hB9g=HH#rN{!fRM#_JP4Or8U zHM_9Rx1sxKO%JZy;a;&M1Q`pcOC=$CyPfJyP+24isk=sLR0Ef@MX-ph@Tun}Wo(q0 ze1jD}9?b3_T{;fweZ8nr-M1xCY88kN!P6>qYFFeg&R0qSgt z%h#U92=efRM{K-c*4?I}5q8x}T+~f%CyG6LPJzqHs@iad9hi==u3aD#n)4 z?KK1L&zI4~z{RUyKCZK*KbYY2!s^X+`!psS^eGCIHWFCLEoH1Q6;bq@EY{<3rzzxH zX=pTF`XTVxteK=%Dk1_AhTsw52o4d6h(f3l&mz(g>4*fx3y3vv@|o1x&LLS`#((=#11~;nN}~Ii9EnUob4N!*KHm|yEzUkwy<38TdOiLoHq7^zl!Ru zAFU)LSJh(Sh4U9a!%!bn0&@)#x5M%m5oOn5)#T|(k%d_#L4JCNnniH!W`)C97b%N= zv{qCH|IJu7I-BG!xuZ|`-1>1wD|QuocRk(7hR;t_6Wa-CDWlAy?SN|!&$ajLLpJ#K zzyhowQ~H=D=-Vv`$<{~ovqd9T*|C`A+EaQmh=ck`FscDVvBZteuSAVnVnGqBD#i3$ zOaVxga!L4T{_HjqQOEcj3nF)E delta 3022 zcmY*bdr(wm6o%6 z);6^?A4rIzuoNNISfizdiZhlbYC36}Hl$^ZQ|Fw|yBGdo*!w%b^L^hvzu!6EeRSEj zz45iCPEX~Ran~l?uhXl-ZES2J*harfrjFOJ_q}Qr>Zo7B?$@!7lp1F7ek9g(_YiR& z>(V}9W}i|qeRT^E^r}?WzxC=D0;5F`bB~ zN7pL4pVlIAZyYBkjxi{z8p{D{zBDG)RxxDYjBxlJ9GGA$;Uz)Qwu*l`F2EVs!qf_u z7~CVahvm@$R?xXSLmr7iZrdPHugZs=%2<@9&U(lKLK>2sSz+i6(Z+5N@e1i>yhaHu zQEO04$y-TB&=%N=ljFUKQACXJFoSiaVy5wa0`F$eydvybOL&RcYN{u$fw)1D21TBF z61;J9V`Q$an0==v63KP_ z6;fc5gz=7LV!%)52>}J*<(y+3M0fEfAvsil{20M;7Rbm^5N?m+-;e$R0u*e!<9vu* z%=S~mBkBWW<#K=qAJYP)SMeI^7dt551vK^XBtkQBE2mR7HlygjW+{AjE5`ApV-XpO7NvGO^Mz1G3`2Xat1hPfitBX@VefNUvH$ zX{FNzu`A{xrJ-xeTn@s9D)!~K^mJ8j0Ce^D0UCUZ63kYv17vvG7D9??z2vt9 z@$l`B2`MC`DN_*7JiJ9nK4lpp>zq@F7S|~yjy_uudoRo(WD_AzX9!}@lKo-G+0w5z zjh1)*J8r_-Sj*)U``o#=Ka{?~E-&|keyrt(?mEVstwo&+r}+77^zB_{y=op7jLaY* zyi2`fs~EnK#gs!l{zh1{c#m>I()l}16GYX$(}ZA?a?`vqrI!$^X~+k;NzVwi`oM7+ zoP?v)aFS3GkqgzcSP-wTPr8H0C9_zCl2Az~XD2gAi2n5KNCQ3%7PM>zKv^~`5W;zY z`=B`IrnS+kBo6Dzk`WS_p|d0ocNRK)`E}R3un;)hD#I&CaxI$U`W>ED90fjuTtBzA3BL7tP&KCj1d>uMGMR0TbcrU*0{FTI8GEdEkTnDsmU80)?k9t)RJ2A0JtT(38lhq)~)lieQlgkNx z=CK6H+z|(Omee zh6px6OX~t!Zw_-Dt-e7r{ph4;h{2BUT7RS+>GJ)@P-OY%y25PAK| zV2vv~p_W&|`_(izRD%^mh2@p74{w=bC{k>V;HLpPee{iFir_sXueKHOS(QkrX7zHLK2*to!BY~UgXrk}uB fswkcbw-DQ@;~3mF%weLOndW_@c`9Xk1zP?G89^ij diff --git a/build/Debug/.ninja_log b/build/Debug/.ninja_log index ab4d043..9ef15b8 100644 --- a/build/Debug/.ninja_log +++ b/build/Debug/.ninja_log @@ -1,59 +1,59 @@ # ninja log v5 -0 122 1747571564473484462 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/main.c.obj c2dc3f2732657e0d -3 140 1747571564491297547 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c.obj e404f98c21d9960c -3 189 1747571564541220387 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.c.obj 4a83760c6970da49 -2 129 1747571564479297462 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c.obj 9ac7e8bd06499e09 +1 74 1747578196454204133 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/main.c.obj c2dc3f2732657e0d +4 139 1747575113565996495 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c.obj e404f98c21d9960c +5 202 1747575113629512590 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.c.obj 4a83760c6970da49 +3 155 1747575113580996591 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c.obj 9ac7e8bd06499e09 2 60 1747562728539855847 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/sysmem.c.obj 48505e2ae1379bff -253 303 1747569606750961765 LightTAM_RFID_Reader.elf c8e9f02884fc4525 -1 136 1747571564487297518 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Core/Src/system_stm32f1xx.c.obj 69de4e2e894ff1f6 -1 130 1747569606577952313 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/pn532_stm32f1.c.obj ace5fe5eaa640de9 -1 124 1747569606571952284 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/spi.c.obj 29b8962fdc075683 -1 35 1747571606865613189 build.ninja 8eebc3391e90f491 -2 249 1747571564600742917 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2c.c.obj c0e6a05b8bf26b38 -2 133 1747571564483297490 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.c.obj c5564d41e7b70dfe -3 179 1747569606626952549 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_spi.c.obj 183cd1c3191a519f -1 124 1747571564476017212 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/stm32f1xx_it.c.obj fa5ad28ec0ecfd -2 136 1747571564487297518 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c.obj 4496ac6b9d38935a -1 144 1747571564495297575 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/stm32f1xx_hal_msp.c.obj e2f79b6c03fd5c8b +74 128 1747578196507380052 LightTAM_RFID_Reader.elf 9d2867053cc90835 +2 129 1747575113552307720 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Core/Src/system_stm32f1xx.c.obj 69de4e2e894ff1f6 +2 168 1747575113595996687 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/pn532_stm32f1.c.obj ace5fe5eaa640de9 +2 139 1747575113565996495 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/liquidcrystal_i2c.c.obj dfeff065ac36bd04 +1 117 1747575113542996346 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/spi.c.obj 29b8962fdc075683 +1 32 1747578320549918389 build.ninja 8eebc3391e90f491 +2 255 1747575113682623065 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2c.c.obj c0e6a05b8bf26b38 +3 156 1747575113583996610 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.c.obj c5564d41e7b70dfe +5 210 1747575113637658229 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_spi.c.obj 183cd1c3191a519f +1 127 1747575113553996417 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/stm32f1xx_it.c.obj fa5ad28ec0ecfd +2 130 1747575113556996436 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c.obj 4496ac6b9d38935a +2 129 1747575113552307720 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/stm32f1xx_hal_msp.c.obj e2f79b6c03fd5c8b +3 155 1747575113581600962 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c.obj 528d87f729cf68d 2 107 1747562728590710642 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/pn532.c.obj ef4526e20d88611d -2 142 1747571564493297561 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c.obj 528d87f729cf68d -2 143 1747571564494297567 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c.obj b34ce154fb886c41 -3 151 1747571564501297617 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c.obj 1a6ffc8b4f71d92c -1 130 1747571564480297469 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/gpio.c.obj a4ee7916438dcb17 -2 138 1747571564489297532 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c.obj b1a9fc4b60267b2b +2 158 1747575113584996617 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c.obj b34ce154fb886c41 +3 140 1747575113566996501 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c.obj 1a6ffc8b4f71d92c +1 158 1747575113585996623 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/gpio.c.obj a4ee7916438dcb17 +1 132 1747575113559996456 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/dma.c.obj b6ac4b0cee498b2f +2 145 1747575113572321975 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c.obj b1a9fc4b60267b2b 2 91 1747562728574528157 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/syscalls.c.obj d6918a00c893f8de 2 29 1747562728512390674 CMakeFiles/LightTAM_RFID_Reader.dir/startup_stm32f103xb.s.obj a907dbf68bf9d8b1 -1 124 1747571564475680509 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/usart.c.obj 1ffd4219db96f7f7 -3 133 1747571564484297497 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c.obj 6d3c4804672e99b1 -1 117 1747571564467399274 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/i2c.c.obj f50033045897e403 -3 132 1747571564482297482 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c.obj 711f5e47418b9df8 -3 153 1747571564504297639 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c.obj 694dda52c71bc792 -1 32 1747571606865613189 build.ninja 8eebc3391e90f491 -1 114 1747571606981870628 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/stm32f1xx_hal_msp.c.obj e2f79b6c03fd5c8b -1 117 1747571606985474106 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/spi.c.obj 29b8962fdc075683 -2 117 1747571606985997551 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.c.obj c5564d41e7b70dfe -1 119 1747571606987596961 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Core/Src/system_stm32f1xx.c.obj 69de4e2e894ff1f6 -2 122 1747571606989596975 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c.obj 4496ac6b9d38935a -1 124 1747571606992596996 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/usart.c.obj 1ffd4219db96f7f7 -2 125 1747571606992596996 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c.obj b1a9fc4b60267b2b -1 125 1747571606994366176 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/stm32f1xx_it.c.obj fa5ad28ec0ecfd -3 129 1747571606997597031 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c.obj 711f5e47418b9df8 -3 131 1747571606998597038 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c.obj e404f98c21d9960c -1 131 1747571606999597045 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/gpio.c.obj a4ee7916438dcb17 -1 133 1747571607000597052 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/i2c.c.obj f50033045897e403 -3 133 1747571607001597059 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c.obj 6d3c4804672e99b1 -1 134 1747571607001597059 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/pn532_stm32f1.c.obj ace5fe5eaa640de9 -2 137 1747571607005663814 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c.obj 9ac7e8bd06499e09 -2 138 1747571607005663814 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c.obj b34ce154fb886c41 -2 142 1747571607009597115 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c.obj 528d87f729cf68d -3 147 1747571607014597150 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c.obj 694dda52c71bc792 -1 147 1747571607015597157 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/main.c.obj c2dc3f2732657e0d -2 152 1747571607020597192 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c.obj 1a6ffc8b4f71d92c -3 200 1747571607069161621 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_spi.c.obj 183cd1c3191a519f -5 203 1747571607072461846 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.c.obj 4a83760c6970da49 -2 256 1747571607124403683 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2c.c.obj c0e6a05b8bf26b38 -256 305 1747571607173356715 LightTAM_RFID_Reader.elf c8e9f02884fc4525 -0 70 1747571790020354397 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/main.c.obj c2dc3f2732657e0d -70 122 1747571790070616586 LightTAM_RFID_Reader.elf c8e9f02884fc4525 -1 69 1747572172266123871 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/main.c.obj c2dc3f2732657e0d -69 120 1747572172316189751 LightTAM_RFID_Reader.elf c8e9f02884fc4525 +1 132 1747575113558996449 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/usart.c.obj 1ffd4219db96f7f7 +4 162 1747575113589996649 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c.obj 6d3c4804672e99b1 +1 129 1747575113553996417 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/i2c.c.obj f50033045897e403 +4 153 1747575113579996585 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c.obj 694dda52c71bc792 +3 144 1747575113570996527 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c.obj 711f5e47418b9df8 +0 31 1747578320549918389 build.ninja 8eebc3391e90f491 +2 124 1747578320674329542 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/spi.c.obj 29b8962fdc075683 +4 124 1747578320676408135 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Core/Src/system_stm32f1xx.c.obj 69de4e2e894ff1f6 +1 130 1747578320682474445 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/gpio.c.obj a4ee7916438dcb17 +5 135 1747578320687180706 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c.obj 4496ac6b9d38935a +2 139 1747578320691556425 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/i2c.c.obj f50033045897e403 +3 145 1747578320697167503 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/liquidcrystal_i2c.c.obj dfeff065ac36bd04 +2 151 1747578320703012471 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/stm32f1xx_hal_msp.c.obj e2f79b6c03fd5c8b +1 157 1747578320709813276 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/main.c.obj c2dc3f2732657e0d +5 158 1747578320711114524 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c.obj b1a9fc4b60267b2b +1 162 1747578320714366466 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/dma.c.obj b6ac4b0cee498b2f +2 162 1747578320715222662 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/pn532_stm32f1.c.obj ace5fe5eaa640de9 +14 163 1747578320715222662 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c.obj 1a6ffc8b4f71d92c +2 173 1747578320724456234 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/stm32f1xx_it.c.obj fa5ad28ec0ecfd +7 173 1747578320725456240 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c.obj b34ce154fb886c41 +16 174 1747578320725456240 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c.obj 711f5e47418b9df8 +2 175 1747578320726456246 CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/usart.c.obj 1ffd4219db96f7f7 +7 178 1747578320730456269 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.c.obj c5564d41e7b70dfe +22 179 1747578320731456275 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c.obj e404f98c21d9960c +17 181 1747578320732456281 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c.obj 6d3c4804672e99b1 +11 182 1747578320734456293 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c.obj 528d87f729cf68d +11 190 1747578320742172860 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c.obj 9ac7e8bd06499e09 +22 200 1747578320753273553 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c.obj 694dda52c71bc792 +23 219 1747578320771695855 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_spi.c.obj 183cd1c3191a519f +27 243 1747578320796622150 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.c.obj 4a83760c6970da49 +5 284 1747578320836229032 cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2c.c.obj c0e6a05b8bf26b38 +284 341 1747578320892496514 LightTAM_RFID_Reader.elf 9d2867053cc90835 diff --git a/build/Debug/build.ninja b/build/Debug/build.ninja index 454d2cb..b75651d 100644 --- a/build/Debug/build.ninja +++ b/build/Debug/build.ninja @@ -65,6 +65,14 @@ build CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/gpio.c.obj: C_COMPILER__Light OBJECT_DIR = CMakeFiles/LightTAM_RFID_Reader.dir OBJECT_FILE_DIR = CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src +build CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/dma.c.obj: C_COMPILER__LightTAM_RFID_Reader_unscanned_Debug /home/eduard/Repos/LightTAM_RFID_Reader/Core/Src/dma.c || cmake_object_order_depends_target_LightTAM_RFID_Reader + DEFINES = -DDEBUG -DSTM32F103xB -DUSE_HAL_DRIVER + DEP_FILE = CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/dma.c.obj.d + FLAGS = -mcpu=cortex-m3 -Wall -Wextra -Wpedantic -fdata-sections -ffunction-sections -O0 -g3 -mcpu=cortex-m3 -Wall -Wextra -Wpedantic -fdata-sections -ffunction-sections -O0 -g3 -g -std=gnu11 + INCLUDES = -I/home/eduard/Repos/LightTAM_RFID_Reader/Core/Inc -I/home/eduard/Repos/LightTAM_RFID_Reader/Drivers/STM32F1xx_HAL_Driver/Inc -I/home/eduard/Repos/LightTAM_RFID_Reader/Drivers/STM32F1xx_HAL_Driver/Inc/Legacy -I/home/eduard/Repos/LightTAM_RFID_Reader/Drivers/CMSIS/Device/ST/STM32F1xx/Include -I/home/eduard/Repos/LightTAM_RFID_Reader/Drivers/CMSIS/Include + OBJECT_DIR = CMakeFiles/LightTAM_RFID_Reader.dir + OBJECT_FILE_DIR = CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src + build CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/i2c.c.obj: C_COMPILER__LightTAM_RFID_Reader_unscanned_Debug /home/eduard/Repos/LightTAM_RFID_Reader/Core/Src/i2c.c || cmake_object_order_depends_target_LightTAM_RFID_Reader DEFINES = -DDEBUG -DSTM32F103xB -DUSE_HAL_DRIVER DEP_FILE = CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/i2c.c.obj.d @@ -145,6 +153,14 @@ build CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/pn532.c.obj: C_COMPILER__Ligh OBJECT_DIR = CMakeFiles/LightTAM_RFID_Reader.dir OBJECT_FILE_DIR = CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src +build CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/liquidcrystal_i2c.c.obj: C_COMPILER__LightTAM_RFID_Reader_unscanned_Debug /home/eduard/Repos/LightTAM_RFID_Reader/Core/Src/liquidcrystal_i2c.c || cmake_object_order_depends_target_LightTAM_RFID_Reader + DEFINES = -DDEBUG -DSTM32F103xB -DUSE_HAL_DRIVER + DEP_FILE = CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/liquidcrystal_i2c.c.obj.d + FLAGS = -mcpu=cortex-m3 -Wall -Wextra -Wpedantic -fdata-sections -ffunction-sections -O0 -g3 -mcpu=cortex-m3 -Wall -Wextra -Wpedantic -fdata-sections -ffunction-sections -O0 -g3 -g -std=gnu11 + INCLUDES = -I/home/eduard/Repos/LightTAM_RFID_Reader/Core/Inc -I/home/eduard/Repos/LightTAM_RFID_Reader/Drivers/STM32F1xx_HAL_Driver/Inc -I/home/eduard/Repos/LightTAM_RFID_Reader/Drivers/STM32F1xx_HAL_Driver/Inc/Legacy -I/home/eduard/Repos/LightTAM_RFID_Reader/Drivers/CMSIS/Device/ST/STM32F1xx/Include -I/home/eduard/Repos/LightTAM_RFID_Reader/Drivers/CMSIS/Include + OBJECT_DIR = CMakeFiles/LightTAM_RFID_Reader.dir + OBJECT_FILE_DIR = CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src + # ============================================================================= # Link build statements for EXECUTABLE target LightTAM_RFID_Reader @@ -153,7 +169,7 @@ build CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/pn532.c.obj: C_COMPILER__Ligh ############################################# # Link the executable LightTAM_RFID_Reader.elf -build LightTAM_RFID_Reader.elf: C_EXECUTABLE_LINKER__LightTAM_RFID_Reader_Debug cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Core/Src/system_stm32f1xx.c.obj cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c.obj cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2c.c.obj cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c.obj cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c.obj cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.c.obj cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c.obj cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c.obj cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c.obj cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c.obj cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c.obj cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c.obj cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c.obj cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_spi.c.obj cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.c.obj CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/main.c.obj CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/gpio.c.obj CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/i2c.c.obj CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/spi.c.obj CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/usart.c.obj CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/stm32f1xx_it.c.obj CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/stm32f1xx_hal_msp.c.obj CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/sysmem.c.obj CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/syscalls.c.obj CMakeFiles/LightTAM_RFID_Reader.dir/startup_stm32f103xb.s.obj CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/pn532_stm32f1.c.obj CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/pn532.c.obj || cmake/stm32cubemx/STM32_Drivers +build LightTAM_RFID_Reader.elf: C_EXECUTABLE_LINKER__LightTAM_RFID_Reader_Debug cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Core/Src/system_stm32f1xx.c.obj cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c.obj cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2c.c.obj cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c.obj cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c.obj cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.c.obj cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c.obj cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c.obj cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c.obj cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c.obj cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c.obj cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c.obj cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_exti.c.obj cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_spi.c.obj cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Drivers/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.c.obj CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/main.c.obj CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/gpio.c.obj CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/dma.c.obj CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/i2c.c.obj CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/spi.c.obj CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/usart.c.obj CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/stm32f1xx_it.c.obj CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/stm32f1xx_hal_msp.c.obj CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/sysmem.c.obj CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/syscalls.c.obj CMakeFiles/LightTAM_RFID_Reader.dir/startup_stm32f103xb.s.obj CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/pn532_stm32f1.c.obj CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/pn532.c.obj CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/liquidcrystal_i2c.c.obj || cmake/stm32cubemx/STM32_Drivers FLAGS = -mcpu=cortex-m3 -Wall -Wextra -Wpedantic -fdata-sections -ffunction-sections -O0 -g3 -mcpu=cortex-m3 -Wall -Wextra -Wpedantic -fdata-sections -ffunction-sections -O0 -g3 -g OBJECT_DIR = CMakeFiles/LightTAM_RFID_Reader.dir POST_BUILD = : diff --git a/build/Debug/compile_commands.json b/build/Debug/compile_commands.json index 9339528..be89a04 100644 --- a/build/Debug/compile_commands.json +++ b/build/Debug/compile_commands.json @@ -11,6 +11,12 @@ "file": "/home/eduard/Repos/LightTAM_RFID_Reader/Core/Src/gpio.c", "output": "CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/gpio.c.obj" }, +{ + "directory": "/home/eduard/Repos/LightTAM_RFID_Reader/build/Debug", + "command": "/opt/st/stm32cubeclt_1.17.0_2/GNU-tools-for-STM32/bin/arm-none-eabi-gcc -DDEBUG -DSTM32F103xB -DUSE_HAL_DRIVER -I/home/eduard/Repos/LightTAM_RFID_Reader/Core/Inc -I/home/eduard/Repos/LightTAM_RFID_Reader/Drivers/STM32F1xx_HAL_Driver/Inc -I/home/eduard/Repos/LightTAM_RFID_Reader/Drivers/STM32F1xx_HAL_Driver/Inc/Legacy -I/home/eduard/Repos/LightTAM_RFID_Reader/Drivers/CMSIS/Device/ST/STM32F1xx/Include -I/home/eduard/Repos/LightTAM_RFID_Reader/Drivers/CMSIS/Include -mcpu=cortex-m3 -Wall -Wextra -Wpedantic -fdata-sections -ffunction-sections -O0 -g3 -mcpu=cortex-m3 -Wall -Wextra -Wpedantic -fdata-sections -ffunction-sections -O0 -g3 -g -std=gnu11 -o CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/dma.c.obj -c /home/eduard/Repos/LightTAM_RFID_Reader/Core/Src/dma.c", + "file": "/home/eduard/Repos/LightTAM_RFID_Reader/Core/Src/dma.c", + "output": "CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/dma.c.obj" +}, { "directory": "/home/eduard/Repos/LightTAM_RFID_Reader/build/Debug", "command": "/opt/st/stm32cubeclt_1.17.0_2/GNU-tools-for-STM32/bin/arm-none-eabi-gcc -DDEBUG -DSTM32F103xB -DUSE_HAL_DRIVER -I/home/eduard/Repos/LightTAM_RFID_Reader/Core/Inc -I/home/eduard/Repos/LightTAM_RFID_Reader/Drivers/STM32F1xx_HAL_Driver/Inc -I/home/eduard/Repos/LightTAM_RFID_Reader/Drivers/STM32F1xx_HAL_Driver/Inc/Legacy -I/home/eduard/Repos/LightTAM_RFID_Reader/Drivers/CMSIS/Device/ST/STM32F1xx/Include -I/home/eduard/Repos/LightTAM_RFID_Reader/Drivers/CMSIS/Include -mcpu=cortex-m3 -Wall -Wextra -Wpedantic -fdata-sections -ffunction-sections -O0 -g3 -mcpu=cortex-m3 -Wall -Wextra -Wpedantic -fdata-sections -ffunction-sections -O0 -g3 -g -std=gnu11 -o CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/i2c.c.obj -c /home/eduard/Repos/LightTAM_RFID_Reader/Core/Src/i2c.c", @@ -71,6 +77,12 @@ "file": "/home/eduard/Repos/LightTAM_RFID_Reader/Core/Src/pn532.c", "output": "CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/pn532.c.obj" }, +{ + "directory": "/home/eduard/Repos/LightTAM_RFID_Reader/build/Debug", + "command": "/opt/st/stm32cubeclt_1.17.0_2/GNU-tools-for-STM32/bin/arm-none-eabi-gcc -DDEBUG -DSTM32F103xB -DUSE_HAL_DRIVER -I/home/eduard/Repos/LightTAM_RFID_Reader/Core/Inc -I/home/eduard/Repos/LightTAM_RFID_Reader/Drivers/STM32F1xx_HAL_Driver/Inc -I/home/eduard/Repos/LightTAM_RFID_Reader/Drivers/STM32F1xx_HAL_Driver/Inc/Legacy -I/home/eduard/Repos/LightTAM_RFID_Reader/Drivers/CMSIS/Device/ST/STM32F1xx/Include -I/home/eduard/Repos/LightTAM_RFID_Reader/Drivers/CMSIS/Include -mcpu=cortex-m3 -Wall -Wextra -Wpedantic -fdata-sections -ffunction-sections -O0 -g3 -mcpu=cortex-m3 -Wall -Wextra -Wpedantic -fdata-sections -ffunction-sections -O0 -g3 -g -std=gnu11 -o CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/liquidcrystal_i2c.c.obj -c /home/eduard/Repos/LightTAM_RFID_Reader/Core/Src/liquidcrystal_i2c.c", + "file": "/home/eduard/Repos/LightTAM_RFID_Reader/Core/Src/liquidcrystal_i2c.c", + "output": "CMakeFiles/LightTAM_RFID_Reader.dir/Core/Src/liquidcrystal_i2c.c.obj" +}, { "directory": "/home/eduard/Repos/LightTAM_RFID_Reader/build/Debug", "command": "/opt/st/stm32cubeclt_1.17.0_2/GNU-tools-for-STM32/bin/arm-none-eabi-gcc -DDEBUG -DSTM32F103xB -DUSE_HAL_DRIVER -I/home/eduard/Repos/LightTAM_RFID_Reader/Core/Inc -I/home/eduard/Repos/LightTAM_RFID_Reader/Drivers/STM32F1xx_HAL_Driver/Inc -I/home/eduard/Repos/LightTAM_RFID_Reader/Drivers/STM32F1xx_HAL_Driver/Inc/Legacy -I/home/eduard/Repos/LightTAM_RFID_Reader/Drivers/CMSIS/Device/ST/STM32F1xx/Include -I/home/eduard/Repos/LightTAM_RFID_Reader/Drivers/CMSIS/Include -mcpu=cortex-m3 -Wall -Wextra -Wpedantic -fdata-sections -ffunction-sections -O0 -g3 -mcpu=cortex-m3 -Wall -Wextra -Wpedantic -fdata-sections -ffunction-sections -O0 -g3 -g -std=gnu11 -o cmake/stm32cubemx/CMakeFiles/STM32_Drivers.dir/__/__/Core/Src/system_stm32f1xx.c.obj -c /home/eduard/Repos/LightTAM_RFID_Reader/Core/Src/system_stm32f1xx.c", diff --git a/cmake/stm32cubemx/CMakeLists.txt b/cmake/stm32cubemx/CMakeLists.txt index f43fde7..8799574 100644 --- a/cmake/stm32cubemx/CMakeLists.txt +++ b/cmake/stm32cubemx/CMakeLists.txt @@ -21,6 +21,7 @@ set(MX_Include_Dirs set(MX_Application_Src ${CMAKE_SOURCE_DIR}/Core/Src/main.c ${CMAKE_SOURCE_DIR}/Core/Src/gpio.c + ${CMAKE_SOURCE_DIR}/Core/Src/dma.c ${CMAKE_SOURCE_DIR}/Core/Src/i2c.c ${CMAKE_SOURCE_DIR}/Core/Src/spi.c ${CMAKE_SOURCE_DIR}/Core/Src/usart.c