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

 
 
> Использование channel в разных модулях.
Вячик13
сообщение May 30 2012, 13:16
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 71
Регистрация: 17-01-12
Пользователь №: 69 604



В главном модуле, где процессы, имеется объявление channel:

OS::channel<TKeyCode,16> KeyMsg;

В другом модуле имеется подпрограмма, которая пишет в канал:

KeyMsg.push(KeyEvent);

Как в этом модуле объявить внешний объект?

Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Вячик13
сообщение Jun 1 2012, 05:21
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 71
Регистрация: 17-01-12
Пользователь №: 69 604



Спасибо всем.

Эффект я устранил, но причину не понял.

Объявление:

extern OS::channel<TKeyCode,16> KeyMsg;

у меня было в модуле объявлений Key.h.

В модуле программного кода Key.cpp было два инклуда:

#include <scmRTOS.h>
#include "Key.h"

Имено в таком порядке.
После того, как я перенёс инклуд

#include <scmRTOS.h>

из модуля Key.cpp в модуль Key.h всё заработало.

Объясните, пожалуйста, в чём моя ошибка.
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 8th August 2025 - 10:23
Рейтинг@Mail.ru


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