Помогите разобраться со структурой проекта, хочу вынести некоторые функции из main.c в отдельные файлы, но не совсем получается.
Использую STM32CubeIDE. Сейчас весь проект в main.c, вместе с созданием переменных, дефайнами, функциями инициализации и тд.
Подключаю к проекту новые файлы eeprom.с и eeprom.h, переношу туда функцию, допустим эту
Код:
void ReadEEPROM(uint16_t MemAddress, uint32_t ReadData, uint16_t Size)
{
HAL_I2C_Mem_Read(&hi2c4, I2C4_DEVICE_ADDRESS, MemAddress, I2C_MEMADD_SIZE_16BIT, ReadData, Size, HAL_MAX_DELAY);
}
eeprom.h
Код:
#ifndef INC_EEPROM_H_
#define INC_EEPROM_H_
#include "main.h"
#endif /* INC_EEPROM_H_ */
eeprom.c
Код:
#include "eeprom.h"
void ReadEEPROM(uint16_t MemAddress, uint32_t ReadData, uint16_t Size)
{
HAL_I2C_Mem_Read(&hi2c4, I2C4_DEVICE_ADDRESS, MemAddress, I2C_MEMADD_SIZE_16BIT, ReadData, Size, HAL_MAX_DELAY);
}
Выдается ошибка "hi2c4 undeclared".
Как правильно подключить новые файлы и перенести туда функции, чтобы они были доступны так же, как и из main.c?