Programación Específica => Microcontroladores => Mensaje iniciado por: frnaco_0610 en Viernes 29 de Octubre de 2004, 16:03
Título: Una Orientacion a Principiante
Publicado por: frnaco_0610 en Viernes 29 de Octubre de 2004, 16:03
este es un pequño ejemplo de hacer parpadear un led con un retardo de 1 seg pero no comete su objetivo el led se vuelve intermitente y quisiera saber que estoy haciendo mal, ahora que configuracion debo hacer en el epicwin para poder utilizar un cristal de 20Mhz List P=16F877A Include "P16F877A.INC"
#Define BAUD D'100' ; Baud Rate Deseada en kbps #Define FOSC D'4000' ; Frecuencia del oscillator en kHz
__config (_CP_OFF & _DEBUG_OFF & _WRT_ENABLE_OFF & _CPD_OFF & _LVP_OFF & _BODEN_ON & _PWRTE_ON & _WDT_OFF & _XT_OSC) ;) ;) no se que significa esto alguien puede ayudarme????????? org 0
goto INICIO ;************************************************************************************************ ; PROGRAMA PRINCIPAL ;************************************************************************************************ INICIO BANCO_L BANCO1 MOVLW B'00000111' MOVWF ADCON1 ;SELECIONO LA OPCION DE E/S DIGITALES CLRF TRISA ;PORTA SON SALIDAS
Esta es la configuracion para el grabado del programa en el PIC... es lo mismo que configurar el programa con el que grabaras... aqui tienes codigo de proteccion, perro guardian, escritura en eeprom, tipo de oscilador.. etc...
Si el led se vuelve intermitente es porque los tiempo no son de un segundo... para hacer que el programa funcione a 20Mhz, solo debes variar los retardos y hacerlos mas largos... ya que en 4Mhz cada ciclo de instruccion demora 400ns (4 ciclos de reloj de 100ns) y a 20Mhz demora 50ns. Espero haberte sido de ayuda. Me dices tus dudas. Saludos! :hola:
PD: hace mucho, en este foro, deje un programita para generar retardos... eso te podria ser muy util.