Связь RS-232 с использованием C#

Привет всем, я хочу отправлять / получать данные последовательно через RS-232 с помощью C#,VS10 ... мой код для этого заключается в следующем.....

SerialPort sp = new SerialPort();
//predefined values are baud rate =9600, parity=none, databits=8,stopbit=1 
//for sending data I used a textbox same name itself and a button "sendbutton" which coded as follow
try
{
    sp.WriteLine(textBox.Text);
    textBox.Text = "";
}
catch (System.Exception ex)
{
    baudRatelLabel.Text = ex.Message;
}
//for receiving data code is as follows 
try
{
    textBox.Text = "";
    textBox.Text = sp.ReadLine();
}
catch (System.Exception ex)
{
    baudRatelLabel.Text = ex.Message;
}

Я установил это приложение на два компьютера и общаюсь, используя rs232 (оба с внутренней стороны). Но данные, которые я посылаю с одного компьютера кнопкой отправки, не принимаются другим компьютером.... что мне теперь делать.....

3 ответа

Решение

Первое, что я хотел бы сделать, это использовать другое приложение для чтения данных. Гипертерминал, например. Попытайтесь выяснить, отправляет ли ваше приложение или нет, затем, как только вы получите его для отправки, постарайтесь выяснить, правильно ли оно получает данные или нет.

Прежде чем отлаживать это. Первое правило любого аппаратного взаимодействия - вы должны убедиться, что оборудование и ОС работают правильно. Обе машины должны быть в состоянии обмениваться данными либо с другими, либо с модемами или другими устройствами RS232. Если все порты работают должным образом, то вы должны сначала попытаться отладить свою программу, используя известную программу с одной стороны.

Я бы использовал программу связи, такую ​​как http://realterm.sourceforge.net/ в качестве известной стороны.

Я усвоил этот урок, потратив 2 недели на отладку программы, когда в кабеле было сухое соединение!

Позвоните Open метод, прежде чем пытаться что-либо отправить. Документация MSDN о Open У метода даже есть пример кода.

Другие вопросы по тегам