Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 01.06.2010, 13:36
osandr osandr вне форума
Прохожий
 
Регистрация: 01.06.2010
Сообщения: 2
Репутация: 10
По умолчанию Асинхронное чтение принятых байтов от COM-порта

Пишу программу на Delphi 7 для управления устройством на микроконтроллере. Устройство подключается к COM-порту. Устройство работает по следующему принципу: программа посылает один или несколько байт, которые устройство расценивает как команды. В зависимости от команды оно посылает соответствующий ответ в виде одного или нескольких байт.
В программе есть два потока. Один – для чтения, второй – для записи в порт. Поток чтения постоянно запущен. Как только приходят байты, происходит их считывание в буфер, представляющий собой TList. Поток записи запускается по необходимости. Мне нужно контролировать принятые байты, чтобы знать, как устройство отреагировало на команды.
Так вот вопрос следующий: как мне заставить программу подождать, пока в списке TList появится первый элемент, т.е. придет хотя бы один байт? В микроконтроллере это реализуется просто. Запускается цикл while, в котором ожидается наступление какого-то события, например установки какого-либо флага. Если использовать такой метод в моей программе, то она будет зависать. Как организовать ожидание прихода байта (или нескольких байт), без зависания программы?
Ответить с цитированием
 


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 11:10.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025