Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Записать в тестбокс ответ из СОМ-порта

9.4K
05 декабря 2007 года
vitalik_4
37 / / 12.11.2006
Подскажите такую вещь. Есть некое устройство подключаемо к СОМ-порту, и программируемое
с помощью АТ-комманд, есть форма моей проги с текстбоксами в которые надо считать результаты
команд отправленных устройству, либо выдать месседжбокс с ошибкой при определенном ответе
от устройства. Вопрос как и где ловить эти ответы ? Я так подозреваю что в событии
DataReceived, но что-то не получается. Пробовал так:
Код:
private void cmdOpenPort_Click(object sender, EventArgs e)
        {
         
            serialPort.Open();
            serialPort.WriteLine("AT+CGMI\r");
         
        }

   private void serialPort_DataReceived(object sender, SerialDataReceivedEventArgs e)
        {
           
            txtVendor.Text = serialPort.ReadLine();
    }

Не выводится, пишет что я пытаюсь получить доступ к текстбоксу из потока который его не
создал. А в месседжбокс и в консоль выводится правда в формате:

<введенная команда>
<пустая строка>
<результат команды>
<пустая строка>
<OK>

А если надо получиь результаты многих команад ? Как узнать какой результат в какой
текстбокс пихать ?
713
05 декабря 2007 года
Ap0k
360 / / 13.03.2006
 
Код:
[COLOR=blue]delegate[/COLOR] [COLOR=blue]void[/COLOR] dataReceivedHandler([COLOR=blue]object[/COLOR] sender, [COLOR=teal]SerialDataReceivedEventArgs[/COLOR] e);
[COLOR=blue]private[/COLOR] [COLOR=blue]void[/COLOR] serialPort_DataReceived([COLOR=blue]object[/COLOR] sender, [COLOR=teal]SerialDataReceivedEventArgs[/COLOR] e)
{
  [COLOR=blue]if[/COLOR] (![COLOR=blue]this[/COLOR].InvokeRequired)
     txtVendor.Text = serialPort.ReadLine();
  [COLOR=blue]else[/COLOR]
     this.Invoke(new dataReceivedHandler(serialPort_DataReceived),sender,e);
}
50K
14 июня 2009 года
uttesedug
3 / / 13.06.2009
У меня есть некое устройство подключенное к РС через Сом порт, есть программная оболочка управляющая этим устройством она работает только с СОМ портом. Возникла необходимость управлять этим устройством при помощи этой оболочки дистанционно через сеть по ТСР протоколу. Я написал прогу которая конвертирует Сом в ТСР она стоит на HOST машине в качестве сервераиспользовал для ТСР компоненты Indy sepver & client и для Сом порта компонент XCommunication.
Необходимо написать прогу которая будет стоять на клиенте и проводить обратную конвертацию из ТСР в Сом.
Вопрос в следующем как мне эмулировать программно СОМ портвозможноли это? на клиенте может есть какие то компоненты или кто нибудь подскажет как это сделать.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог