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

 
 
> Управление прибором на AVR через COM-port компьютера, нужна помощь
smk
сообщение Apr 3 2008, 20:44
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 2 246
Регистрация: 17-03-05
Из: Украина, Киев
Пользователь №: 3 446



Пробую создать программу для управления прибором с помощью ПК. Програму пишу в среде C++ Builder 6. Подключил библиотеку ComPort. Собственно по ней и вопрос. А в теме по AVR потому что девайс на AVR и еще потому что не знаю куда еще можно. Сам вопрос:
Вынося на поле Form1 любую из кнопок-компонент при попытке компиляции получаю для строки
/* Exception.CreateRes */ inline __fastcall EComPort(int Ident)/* overload */ : Sysutils::Exception(Ident) { }
сообщение об ошибке: [C++ Error] CPort.hpp(683): E2238 Multiple declaration for '_fastcall EComPort::EComPort(int)'
а для строки: __fastcall EComPort(int ACode);
сообщение об ошибке:[C++ Error] CPort.hpp(675): E2344 Earlier declaration of '_fastcall EComPort::EComPort(int)'

также для строки: typedef TBitmap TLedBitmap;
сообщение об ошибке: [C++ Error] CPortCtl.hpp(242): E2015 Ambiguity between 'TBitmap' and 'Windows::TBitmap'

Это у всех так? Помогите разобраться. Заранее спасибо!


--------------------
Живи днем так, чтобы ночью ты спал спокойно.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
sysel
сообщение Apr 4 2008, 04:40
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 601
Регистрация: 3-07-07
Пользователь №: 28 852



Все эти компоненты для порта от лукавого...
По собственному опыту знаю, что потом как вылезет какой-нибудь нюанс использования, что придётся в конечном итоге всё руками переписывать.
Так что пишите сразу на WinAPI.

В дополнение, чтобы предостеречь от ошибок:
Работа с портом(ReadFile, WriteFile) должна осуществляться только в том потоке, который открыл этот порт (CreateFile).
Go to the top of the page
 
+Quote Post
gena_dj
сообщение Apr 4 2008, 05:13
Сообщение #3


Участник
*

Группа: Новичок
Сообщений: 23
Регистрация: 24-03-08
Пользователь №: 36 189



Цитата(sysel @ Apr 4 2008, 10:40) *
Работа с портом(ReadFile, WriteFile) должна осуществляться только в том потоке, который открыл этот порт (CreateFile).

Это еще почему?
Можно открыть в одном потоке, а читать в другом.

Единственное, что нельзя делать - одновременно пытаться работать в двух разных потоках.
Go to the top of the page
 
+Quote Post
Andrew O. Shadou...
сообщение Apr 12 2008, 17:39
Сообщение #4


Участник
*

Группа: Свой
Сообщений: 37
Регистрация: 13-05-07
Из: Minsk, Belarus
Пользователь №: 27 694



Цитата(gena_dj @ Apr 4 2008, 08:13) *
Это еще почему?
Можно открыть в одном потоке, а читать в другом.

Единственное, что нельзя делать - одновременно пытаться работать в двух разных потоках.

Можно работать не только в разных потоках, но и в разных процессах при применении некоторой эквилибристики. Естественно, механизмы синхронизации никто не отменял.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- smk   Управление прибором на AVR через COM-port компьютера   Apr 3 2008, 20:44
- - =GM=   Цитата(smk @ Apr 3 2008, 19:44) Сам вопро...   Apr 3 2008, 22:18
- - defunct   Цитата(smk @ Apr 3 2008, 22:44) Это у все...   Apr 3 2008, 22:29
- - Axxel   Цитата(smk @ Apr 4 2008, 02:44) Это у все...   Apr 4 2008, 06:11
- - Ruslan Konovalov   Цитата(smk @ Apr 3 2008, 23:44) Пробую со...   Apr 4 2008, 11:01
- - bloodden   Вы, скорее всего, подключили инклюдом в нескольких...   Apr 7 2008, 13:01
- - smk   ЦитатаЕсли у вас установлен компонент от Dejan (TC...   Apr 9 2008, 20:42
- - Axxel   пункт 7, C++ Builder notes файл прикрепил.   Apr 10 2008, 01:56
- - gagik   Попробуй этот класс. Я его часто использую с AVR в...   Apr 10 2008, 05:51
- - smk   Цитатаиспользую с AVR в Visual C++ 6.0 интересует ...   Apr 10 2008, 18:34
- - Axxel   Я проверял-работает   Apr 11 2008, 01:52
- - smk   ЦитатаЯ проверял-работает Разбираюсь с хелпом. А ...   Apr 11 2008, 19:41
|- - Axxel   Цитата(smk @ Apr 12 2008, 01:41) А есть л...   Apr 14 2008, 02:03
- - smk   ЦитатаЕсть один корявенький.... пользуйтесь Спасиб...   Apr 14 2008, 05:03
- - smk   А как передать байт (не строку)? Суть в том чтоб и...   Apr 14 2008, 13:11
- - Axxel   Ну это как напишите, а как принято-изучайте станда...   Apr 15 2008, 01:50
- - 23322   приветствую. моя тема http://electronix.ru/forum...   Apr 19 2008, 11:18
|- - 23322   актуально.   Apr 23 2008, 20:02
- - Axxel   Начни с изучения ДШ на МК в плате, разберись как п...   Apr 24 2008, 02:35
- - 23322   Шпак Ю А - Программирование На Языке C Для Avr И P...   Apr 26 2008, 16:32
- - radiohobbyt   Пробуй(изучай) WinAPI. То есть не всякие библиотек...   Apr 26 2008, 16:54


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

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 19:19
Рейтинг@Mail.ru


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