TODOPIC
Microcontroladores PIC => Primeros pasos - Iniciación a los microcontroladores => Mensaje iniciado por: micro_carp en 18 de Diciembre de 2011, 12:44:15
-
Hola a todos,
Desde hace algunos dias que ando metido con un problemita, pero no se me ocurre que puede estar pasando.
Arme mi circuito en el protoboard y simplemente no funciona, algo tan simple como encender y apagar un led se ha vuelto imposible. Probé el circuito con unicamente el oscilador, el reset y la alimentacion. Luego de hacer muchas pruebas cambie mi oscilador de 8 Mhz a 6 Mhz y al fin funcionó... despues de haber probado con 2 microcontroladores, cambiar la fuente, grabadores de pic, etc etc. Lo mas raro es que mis microcontroladores solo funcionan con el cristal de 6 Mhz mas no con otro valor.
No hay problema con el circuito, por que tengo mi placa EasyPic7 de Mikroe y la falla es la misma. En realidad todo el problema partio cuando luego de comprar mi placa de prueba Easy PIC quise hacer mis primeras pruebas y cuando escribi un pequeño programa para parpadear el led, esto funcionaba en Proteus, pero al cargar el programa no me funcionaba en la placa de pruebas... luego de consultar a MikroElectronika (sin encontrar respuestas) y dado muchisimas vueltas he llegado a la conclusion que solo puedo trabajar con cristales de 6 Mhz... esto si que es bien extraño...
Haber si alguien me lanza ideas para salir de este imposible. Me pregunto si algo estarè haciendo mal con el grabador. Vuelvo a esto de los cicrocontraladores despues de 5 años y hasta ahora no puedo encender un led.
-
Hola micro_carp, deberias de poner el codigo que tienes para ver donde estas fallando ya que dicho micro puede estar trabajando a 20MHz, de todos modos revisa la configuracion del micro.
Saludos.
-
habras cambiado el XT por el HS no?
-
Hola micro_carp, deberias de poner el codigo que tienes para ver donde estas fallando ya que dicho micro puede estar trabajando a 20MHz, de todos modos revisa la configuracion del micro.
Saludos.
Hola Miguel_s y MerLiNz. El programa es tan sencillo como esto:
void main(){
ADCON1 = 0X06;
TRISA=0X00;
TRISB=0X00;
PORTA=0X00;
PORTB=0X00;
while(1) {
PORTA =0b00000011;
PORTB.F0=1;
Delay_ms(1000);
PORTB.F0=0;
Delay_ms(1000);
}
}
El micro esta configurado para trabajar con 6 Mhz, pero cuando lo cambio a otro oscilador, simplemente no funciona. Por ejemplo configuro a 8 Mhz y coloco un cristal de 8 Mhz, el micro se queda estatico. En la configuracion hice el cambio de XT a HS y tampoco funciona a frecuencias distintas a 6 Mhz.
Estoy utilizando la tipica configuracion de 2 condensadores (de 23, 15 y 33 picofaradios) y el Cristal que van conectados a las patas 9 y 10 del micro. No creo que sea el programa, la configuracion podria ser, pero hice todos los cambios que se me pueden ocurrir, voy a seguir intentando hasta encontrar el error.
Gracias por sus sugerencias!!!
-
Luego de volver a probar las recomendaciones dadas por los foristas, encontre que el problema se debía a que no configuré para que el oscilador fuera HS (high speed). Nada mas :oops: Asunto resuelto
Gracias!!!
-
;-)