реклама на сайте
подробности

 
 
> Как объявить / сослаться на глобальную стуктуру, Или может как - то по-другому реализовать?
Димон Безпарольн...
сообщение Jun 9 2016, 17:21
Сообщение #1


Знающий
****

Группа: Участник
Сообщений: 734
Регистрация: 29-11-10
Пользователь №: 61 247



Смысл в том, что нужно читать АЦП 8 каналов и записать в структуру. Структура объявляется глобальной в файле ADC, а сам АЦП считывается в файле прерываний. Не знаю как сослаться на эту структуру, объявленную в файле ADC.

Спасибо.

Сообщение отредактировал Димон Безпарольный - Jun 9 2016, 17:21
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
ViKo
сообщение Jun 9 2016, 18:59
Сообщение #2


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



В h файле:
typedef struct {
...
} ADC_Micro_TypeDef;

В c файле:
ADC_Micro_TypeDef ADC_Micro;

В других файлах:
extern ADC_Micro_TypeDef ADC_Micro;


А если так:
extern struct ADC ADC_Micro;
Go to the top of the page
 
+Quote Post
Димон Безпарольн...
сообщение Jun 10 2016, 05:18
Сообщение #3


Знающий
****

Группа: Участник
Сообщений: 734
Регистрация: 29-11-10
Пользователь №: 61 247



В первом случае ругается на:
Код
extern ADC_Micro_TypeDef ADC_Micro;

Цитата
../Src/stm32l4xx_it.c(49): error: #20: identifier "ADC_Micro_TypeDef" is undefined


В текущем файле, где структура объявлена глобальной не ругается.

Во втором случае ругается при использовании:
Код
ADC_Micro.ADC_CH_Step = 0;

в сторонних файлах:

Цитата
../Src/stm32l4xx_it.c(248): warning: #111-D: statement is unreachable


Сообщение отредактировал Herz - Jun 13 2016, 14:54
Причина редактирования: Избыточное цитирование
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Димон Безпарольный   Как объявить / сослаться на глобальную стуктуру   Jun 9 2016, 17:21
- - ViKo   extern квалификатор примените   Jun 9 2016, 18:13
|- - Димон Безпарольный   Цитата(ViKo @ Jun 9 2016, 21:13) extern к...   Jun 9 2016, 18:38
- - ViKo   Заголовочный файл h должен быть включен в проект, ...   Jun 10 2016, 05:36
|- - MrYuran   Цитата(ViKo @ Jun 10 2016, 08:36) #ifndef...   Jun 10 2016, 07:06
- - x893   Без книжки счастья не будет - точно   Jun 10 2016, 08:43
- - ar__systems   обучение программированию по гуглу в действии   Jun 10 2016, 13:00
- - Lagman   Начинает проясняться после таких тем и ранее таких...   Jun 10 2016, 14:41
- - Димон Безпарольный   Срач не удался. Обидно, да? Кстати, по поводу Куба...   Jun 11 2016, 20:16
|- - Baser   В одном хидер-файле объявляете структуру (например...   Jun 12 2016, 18:32
- - Baser   Вам же ViKo сразу написал, как это делать правильн...   Jun 11 2016, 21:34
|- - aaarrr   Цитата(Baser @ Jun 12 2016, 00:34) Вам же...   Jun 12 2016, 23:52
- - Димон Безпарольный   Я в С не силен, увы. Понимаю что делаю не правильн...   Jun 12 2016, 07:06
- - Димон Безпарольный   Вроде разобрался. Вынес в хидер. И пара include. Д...   Jun 13 2016, 06:20
- - Димон Безпарольный   Со структурой все понятно. Как теперь сослаться на...   Jun 13 2016, 12:51
|- - zltigo   QUOTE (Димон Безпарольный @ Jun 13 2016, 15...   Jun 13 2016, 13:14
- - ar__systems   Как вообще люди имееют наглсмелость пытаться делат...   Jun 15 2016, 14:24
- - Димон Безпарольный   Да расслабтесь, господа. Давно все заработало. И н...   Jun 15 2016, 18:13


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 28th June 2025 - 04:00
Рейтинг@Mail.ru


Страница сгенерированна за 0.01394 секунд с 7
ELECTRONIX ©2004-2016