Kristof es correcto, pero para elaborar un poco más:
Cuando se comunica con RS232 sólo tiene dos puntos finales, el PC y el dispositivo externo. Se comunica con el dispositivo enviándole comandos, o incluso puede enviarlos independientemente. Puede ser texto ASCII simple o códigos binarios/hexadecimales. La forma en que se comunica entre los dos dispositivos se conoce como protocolo, y su aplicación debe implementar este protocolo para poder 'hablar' con el dispositivo.
RS485 es diferente a RS232, ya que puede conectar varios dispositivos en el mismo puerto serie que está conectado a su PC. Dependiendo de su dispositivo, tendrá su propio protocolo que entiende que necesitará estudiar y familiarizarse. Esto debe ser suministrado con los dispositivos a los que se está conectando.
Por lo general, el protocolo tendrá (al menos) la siguiente información:
- Dirección del dispositivo - que utiliza este para distinguir entre los distintos dispositivos para hablar, por lo general se puede establecer mediante interruptores de palanca de hardware o el como
- comando - el comando real que desea enviar a la unidad
- datos - Cualquier dato adicional que tenga que pasar por comandos específicos
Así, un examen comando PLE es posible enviar a la unidad se verá como (tenga en cuenta que esto es sólo un ejemplo):
$01FF9A
Dónde:
01
es el módulo o los dispositivos de dirección única FF
es el tipo de comando 9A
es los datos
Aquí, el módulo con la dirección del dispositivo 01
leerá el comando y deducirá 'hey me está hablando' y luego procesará la información del comando. Todos los demás dispositivos también recibirán los datos, pero se darán cuenta de que no están destinados a sí mismos.
Por lo general, los dispositivos RS485 comunicarse utilizando los datos Hex, por lo que su aplicación tendrá que enviar comandos hexagonales a los dispositivos externos, y manejar la conversión a partir de las respuestas pertinentes, etc. Es posible que tenga que mirar Serial.Write(byte[], int,int)
para enviar datos a hexagonales los dispositivos.
Para una explicación más detallada de la clase .NET puerto serie, consulte http://msdn.microsoft.com/en-us/library/system.io.ports.serialport.aspx
esto no responde a la pregunta. –