Hola a todos:
Despues de romperme una vez y otra la cabeza, con el entrenador easyPic (quien no lo tenga se lo aconsejo por relacion calidad/precio), y despues de consultar el foro por si hubiese temas relacionados, paso a haceros la siguiente consulta.
Estoy diseñando un sistema de automatización, que consta de 1 pic , junto a una serie de perifericos para activación de electrovalvulas, y acondicionarores de señal, asi como su respectivo max232 para comunicarse con el ordenador.
A la hora de la programacion, me he encontrado con un problema que no lo encuentro solucion.
El objetivo es que el ordenador mande un comando a la placa del pic, y esta placa actue segun el comando que reciba.
Realice; un programa prototipo para intentar probar esta parte, y lo probe en la placa easypic pero el resultado siempre es erroneo.
el programa (muy esquematizado)
program comandos
' declaracion de variables.
dim Recibido as string[7]
main:
Usart_Init(9600) ' Inicializamos Usar
TRISA = 0
PORTA = 0
recibido = ""
while true
if Usart_Data_Ready() = 1 then
' Lectura del puerto
Usart_Read_Text(Recibido,"$") 'Detecta el final del comando mediante el caracter $
select case Recibido 'Si el comando es v ......
case Recibido = "va"
Usart_Write_Text("vacio")
case Recibido = "do" 'Si el comando es do
Usart_Write_Text("dosis")
case else
Usart_Write_Text(Recibido) ' En caso contrario reenvia el dato recibido
end select
Recibido = ""
end if
Bueno el programa que veis es uno que hice para testear este apartado, utilizo el mikrobasic 5.0
cuando ejecuto sobre un Pic este programa, SI que exite una comunicacion.. pero envé el comando que envíe.. siempre recibo el texto "vacio"
Si a alguien se le ocurre una solucion, porfavor indicarmela!!!
Gracias a todos