Muy buenas, en primer lugar voy a introducir un proyecto que he realizado y que está funcionando. Luego os comentaré una ampliación que quiero hacer y no se como programarla en CCS.
He controlado con Labview el PIC 16f877A mediante el protocolo de comunicaciones RS232. He realizado programa muy sencillo en Laview con 8 botones y me activa / desactiva las salidas del PIC (RB0:RB7). He utilizado gracias a Redpic el código que publicó de transmisión RS232 con buffer. El programa en labview cuando pulsas un botón envia por la RS232 el código del boton (ejemplo: boton1 correspondiente al puerto 1-->RB1)+un retorno de carro. El pic a la hora de detectar boton1+0xD envía un ACK al PC diciendo que el puerto RB1 está en ON. Así con todos los puertos.
Esto lo realizo para poner en marcha (dar alimentación 220Vac) los RACKS de control que están en una zona inaccesible, mediante unos relés de estado solido ya que por influencia de campo magnético necesito dichos relé para que no me conmute el contacto libre de tensión.
Ahora bien, hasta aquí todo funciona a la perfección, pero si os dais cuenta tengo 10 armários RACKS con lo cual necesito 10 puertos RS232. He pensado modificar mi diseño y usar el protocolo RS485 e ir puenteando cada dispositivo. según he estado mirando en el buscador del este foro ya tengo las conexiones claras según este enlace
http://www.todopic.com.ar/foros/index.php?topic=13687.0. Lo que quiero hacer es darle una dirección a cada micro por software y los datos que envíe sean de la siguiente forma "Dirección_micro\comando" y el micro que tenga esa dirección actue a ese comando y responda. Así con un puerto RS232 puedo controlar todos mis racks que están controlados por RS485. Mi problema es que nunca lo he programado y no se como empezar. El tema hardware lo tengo claro:
PC-------
|
---PIC1
|
---PIC2
|
---N_dispositivos(32)
El esquema sería
http://www.todopic.com.ar/foros/index.php?topic=12827.msg74559#msg74559.
alguien podría poner un ejemplo en C. Utilizo el CCS.
Muchas gracias de antemano y felicidades al FORO.
P.D. cuando lo tenga todo apunto lo subo en un ZIP.