2013-11-26 5 views
0

Я хочу отправить некоторые данные с моего компьютера на микроконтроллер PIC 16fxxxx. я написал серийный код передатчика порта с помощью C#:проверить подключение последовательного порта

вот код:

 try 
     { 

      SerialPort port = new SerialPort(
       "COM11", 9600, Parity.None, 8, StopBits.One); 

      // Open the port for communications 
      port.Open(); 

      //////////////////// 

      byte array1; 
      array1 = Convert.ToByte("11100100", 2); 

      ///// 
      byte[] array = new byte[1]; 
      array[0] = array1; 



      port.Write(array, 0, 1); 

      // Close the port 
      port.Close(); 

     } 
     catch (Exception ed) 
     { 

      MessageBox.Show(ed.Message); 
     } 

Мой вопрос: Я тестировал этот код и он преуспевает, но приемник был также ПК. Этот код является общим: если я подключу его к ПОС, будет ли он работать одинаково?

ответ

0

Да, если вы можете передавать данные с вашего порта и получать их на другом ПК, тогда нет причин, по которым вы не сможете получить его на своем микроконтроллере - очевидно, вам понадобится правильное оборудование и программное обеспечение в конец микроконтроллера тоже.

0

Порты должны быть открыты как на передатчике, так и на приемнике.

0

Вы намеревались отправлять только первый байт своего массива? Зачем? Также закрытие порта сразу после отправки данных может мешать. Попробуйте оставить его открытым или, по крайней мере, задержать (System.Threading.Thread.Sleep (500);

+0

Зачем вмешиваться. Как. @jonathan –

+0

Я не знаю, но, возможно, порт закрывается до завершения передачи Обычно порты открываются в начале приложения, а затем остаются открытыми, пока приложение не будет закрыто. – skinnedKnuckles

Смежные вопросы