Así que sospecho, creo, intuyo, supongo que la forma correcta de comparar dos strings en CCS C es:
comando[]="XXX";
if(strcmp(cadena,comando)==0){
//Haztalcosa
}
En primer lugar gracias a todos, por responder, he estado liado con la pcb(ya que si no conseguia que funcionase poco iba a hacer el pic)pero ya esta funcionando,
,he estado probando las diferentes soluciones y mirando los comandos del manual del compilador, pero mi problema que a la hora de simular con el proteus he introducir los comandos por el teclado usando una conexion vitual con el Virtual serial port simulator, no consigo que me funcione, ya que al introducir el comando en cuanto introduzco dos caracteres me sale el mensage de vualva a introducir comando o no hace nada o me salen los textos de todas las opciones una tras otra, he probado usar delay detras de gets(cadena) y nada o se keda bloqueado y no hace nada,tambien he probado con la primera opcion de "frec" definir como constante antes del main(por si sonaba la flauta)pero nada, la verdad es que ya no se que probar ni ke estoy haciendo mal, lo unico que quiero hacer de momento es que reconozca los comandos que le introduzco por el teclado via rs232, si alquien me pueda hechar una mano, un millon de gracias.
Gracias.
#include <16F886.h>
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#use RS232(BAUD=9600, BITS=8 ,PARITY=N, XMIT=PIN_C6, RCV=PIN_C7) //Configuracion de Rs232
int opc;
char *opcion="frec";
//char *opcion2="onr1";
//char *opcion3="ofr1";
char *s2;
void main(){
//do{
printf("\r\n Introduzca Comando y Pulse Intro :");
gets(cadena);
delay_ms(1000);
comando[]="frec";
comando2[]="onr1";
comando3[]="ofr1";
if(strcmp(cadena,opcion)==0)
{
printf("Frecuencia");
}
else
{
if(strcmp(cadena,comando2)==0)
{
printf("Encender Rele 1");
}
else
{
if(strcmp(cadena,comando3)==0)
{
printf("Apagar Rele 1");
}
else
{
printf("Vuelva A Introducir comando:");;
}
}
}
//}
}
while(1);
}