TODOPIC
Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: ElVale en 11 de Diciembre de 2008, 01:15:39
-
Al simular el siguiente código en Proteus, la virtual terminal se me queda en negro y no muestra nada, sin embargo el pin A0 si parpadea bien.
#include <16F688.H>
#fuses HS, NOWDT, NOBROWNOUT, PUT, NOMCLR
#use delay(clock=20000000)
#use rs232(baud=9600, xmit=PIN_C4, rcv=PIN_C5, ERRORS)
//===================================
void main()
{
printf("Hello World \n\r");
WHILE (1)
{
output_high(PIN_A0);
delay_ms(1000);
output_low(PIN_A0);
delay_ms(1000);
}
}
Ahora, si cambio el reloj del procesador a 8 MHz y hago el respectivo cambio en el Processor Clock Frequency en Proteus, el RS232 simula perfecto y el A0 también parpadea bien. Es decir
#include <16F688.H>
#fuses HS, NOWDT, NOBROWNOUT, PUT, NOMCLR
#use delay(clock=8000000)
#use rs232(baud=9600, xmit=PIN_C4, rcv=PIN_C5, ERRORS)
//===================================
void main()
{
printf("Hello World \n\r");
WHILE (1)
{
output_high(PIN_A0);
delay_ms(1000);
output_low(PIN_A0);
delay_ms(1000);
}
}(http://img355.imageshack.us/img355/3936/dibujozi7.jpg) (http://imageshack.us)
(http://img355.imageshack.us/img355/dibujozi7.jpg/1/w659.png) (http://g.imageshack.us/img355/dibujozi7.jpg/1/)
Entonces ¿por qué el rs232 funciona bien a 8 MHz y no a 20 MHz?? será un bug del CCS? estoy usando la versión 4.068.
Si hay alguien que haya trabajado con el RS232 del 16f688 a 20 MHz le agradecería que pueda proveer el código.
-
en las propiedades del microcontrolador dentro de proteus , te aseguraste de cambiar la frecuencia de operacion, a la vez que cambiaste el programa principal en ccs?. de no ser asi, puedes ser ese el problema.
Saludos
-
Claro hermano, cada vez que cambiaba la frecuencia en CCS la cambiaba en las propiedades del pic en proteus, la prueba es que el pin A0 parpadea cada segundo a 20 MHz, pero el RS232 no funciona a esa frecuencia. Aun y si no la cambiara eso saldría algo en la Virtual Terminal aunque sean garabatos extraños, pero el problema es que no sale nada de nada, se queda en negro.
-
como que el CCS estaba mal instalado porque reinstalé y ya funciona
-
me alegra. ;) eso ya estaba extraño. :D
-
en las propiedades del microcontrolador dentro de proteus , te aseguraste de cambiar la frecuencia de operacion, a la vez que cambiaste el programa principal en ccs?. de no ser asi, puedes ser ese el problema.
Saludos
y no solamente del pic, el virtual terminal también tiene sus propiedades, allí sale el baudeaje y todas las opciones para una comunicación serial rs232