Хм содержимое var_user.h:
#ifndef __var_user__
#define __var_user__
typedef struct
/*RTC_Time_TypeDef*/{
uint16_t rtc_mseconds;
uint8_t rtc_seconds;
uint8_t rtc_minuts;
uint8_t rtc_hours;
}RTC_Time_TypeDef;
typedef struct
/*RTC_Date_TypeDef*/{
uint8_t rtc_date;
uint8_t rtc_month;
uint8_t rtc_year;
}RTC_Date_TypeDef;
extern RTC_Time_TypeDef RTC_Time;// это можно и по месту применения вписать, например, в main.c
extern RTC_Date_TypeDef RTC_Date;// это можно и по месту применения вписать, например, в main.c
#endif
а это в stm32f4xx_it.c:
#include "var_user.h"
RTC_Time_TypeDef RTC_Time;// это объявление с выделением места
//RTC_Time_TypeDef RTC_Time = {0};//это было бы объявление с выделением места, но с принудительным занулением всех элементов структуры
RTC_Date_TypeDef RTC_Date;// это объявление с выделением места
а это в main.c:
#include "var_user.h"
//extern RTC_Time_TypeDef RTC_Time;//при extern задавать значения низзя, даже если хочется
//extern RTC_Date_TypeDef RTC_Date;
-
- Спасибо коллега Balda(199 знак., 20.09.2016 18:47)