Los PICs que más me preguntan los visitantes son esta pequeña lista.
PIC12F508A
__CONFIG _CP_OFF & _WDT_ON & _MCLRE_ON & _ExtRC_OSC
PIC12F629
__CONFIG _CP_OFF & _CPD_OFF & _BODEN_OFF & _MCLRE_ON & _WDT_OFF & _PWRTE_ON & _INTRC_OSC_NOCLKOUT
PIC16F84A
__CONFIG _CP_OFF & _WDT_ON & _PWRTE_ON & _RC_OSC
PIC16F628A
__CONFIG _CP_OFF & _DATA_CP_OFF & _LVP_OFF & _BOREN_OFF & _MCLRE_ON & _WDT_OFF & _PWRTE_ON & _INTOSC_OSC_NOCLKOUT
PIC16F88
__CONFIG _CONFIG1, _CP_OFF & _CCP1_RB0 & _DEBUG_OFF & _WRT_PROTECT_OFF & _CPD_OFF & _LVP_OFF & _BODEN_OFF & _MCLR_ON & _PWRTE_ON & _WDT_OFF & _INTRC_IO
__CONFIG _CONFIG2, _IESO_OFF & _FCMEN_OFF
PIC16F886
__CONFIG _CONFIG1, _LVP_OFF & _FCMEN_ON & _IESO_OFF & _BOR_OFF & _CPD_OFF & _CP_OFF & _MCLRE_ON & _PWRTE_ON & _WDT_OFF & _INTRC_OSC_NOCLKOUT
__CONFIG _CONFIG2, _WRT_OFF & _BOR21V
PIC16F887
__CONFIG _CONFIG1, _LVP_OFF & _FCMEN_ON & _IESO_OFF & _BOR_OFF & _CPD_OFF & _CP_OFF & _MCLRE_ON & _PWRTE_ON & _WDT_OFF & _INTRC_OSC_NOCLKOUT
__CONFIG _CONFIG2, _WRT_OFF & _BOR21V
PIC16F1827
__CONFIG _CONFIG1, _FOSC_INTOSC & _WDTE_OFF & _PWRTE_OFF & _MCLRE_ON & _CP_OFF & _CPD_OFF & _BOREN_OFF & _CLKOUTEN_ON & _IESO_OFF & _FCMEN_OFF
__CONFIG _CONFIG2, _WRT_OFF & _PLLEN_OFF & _STVREN_OFF & _BORV_19 & _LVP_OFF
PIC18F2550
CONFIG FOSC = XT_XT (En realidad es una gran lista. En el MPLAB v8, puedes verlos en la barra de herramientas arriba, Configure-->Configuration Bits).
PIC18F4550
CONFIG FOSC = XT_XT (Lo mismo arriba).
Hay visitantes que no tienen instalado el MPLAB en este momento, así, este documento les puede ayudar y ahorrar tiempo.
La ubicación se encuentra en este directorio:
C:\Archivos de programa\Microchip\MPASM Suite\Template\Code
Si quieres encontrar donde están los templates, por ejemplo, del PIC16F88, encuentras el archivo llamado 16F88TEMP.ASM y lo abres.
Puede dar el caso que quieras cambiar la configuración del oscilador interno al exteno y que sea del cuarzo. Un ejemplo abajo.
LIST P=16F88 ; Procesador.
#INCLUDE
__CONFIG _CONFIG1, _CP_OFF & _DEBUG_OFF & _WRT_PROTECT_OFF & _CPD_OFF & _LVP_OFF & _BODEN_OFF & _MCLR_ON & _PWRTE_ON & _WDT_OFF & _XT_OSC
; _CP_OFF: Protección de código DESACTIVADO.
; _DEBUG_OFF: Debug en circuito DESACTIVADO.
; _WRT_PROTECT_OFF: Protección a escritura en memoria de programa DESACTIVADO.
; _CPD_OFF: Protección de código de datos DESACTIVADO.
; _LVP_OFF: Programación en baja tensión DESACTIVADO.
; _BODEN_OFF: Reset por Brown-out DESACTIVADO.
; _MCLRE_ON: Reset por pin externo ACTIVADO.
; _PWRTE_ON: Retraso al reset ACTIVADO.
; _WDT_OFF: Watchdog DESACTIVADO.
; _XT_OSC: Oscilador externo del tipo XT.
__CONFIG _CONFIG2, _IESO_OFF & _FCMEN_OFF
; _IESO_OFF: Modo de intercambio de externo a interno DESACTIVADO.
; _FCMEN_OFF: Monitor de CLK DESACTIVADO.
Hay que encontrar las directivas del PIC16F88 que está en la ubicación:
C:\Archivos de programa\Microchip\MPASM Suite
El archivo se llama P16F88.INC y lo abrimos para localizar la palabra de configuración del oscilador externo de cuarzo.
Si abriste el archivo P16F88.INC con el notepad de Windows, pulsa "Control B" y busca "CONFIG1 Options", de todas las configuraciones que hay, se usa el _XT_OSC, por ejemplo el oscilador XT a 4MHz o el 20MHz.
Puedes simplificar el __CONFIG sólo introduciendo hexadecimales en vez de los textos aunque resulte más engorroso de interpretar. Cuando lo tengas configurados la configuración de Bits en el MPLAB, lo miras y apuntas.
Ejemplo 1:
LIST P=16F88
INCLUDE
__CONFIG _CONFIG1, _CP_OFF & _CCP1_RB0 & _DEBUG_OFF & _WRT_PROTECT_OFF & _CPD_OFF & _LVP_OFF & _BODEN_OFF & _MCLR_ON & _PWRTE_ON & _WDT_OFF & _XT_OSC
__CONFIG _CONFIG2, _IESO_OFF & _FCMEN_OFF
Ejemplo 2:
LIST P=16F88
INCLUDE
__CONFIG _CONFIG1, 0x3F21
__CONFIG _CONFIG2, 0x3FFC
Los dos ejemplos son exactamente lo mismo, sólo que te ahorra tiempo y espacio en escribirlo, aún así, es más aconsejable, legible y recomendable el primer ejemplo. Puedes buscar más información en las ayudas del MPLAB escribiendo __config.
NOTA:
No olvidar que "_ _ CONFIG" tiene dos guiones bajo, no uno. Se escribe así __CONFIG. Es importante tenerlo encuenta ya que los primeros programas puedes poner solo uno guión bajo y es un error frecuente.
Autor: Ángel Acaymo M.G.
19 comentarios:
Hola, todo ok lo que explicas, ahora a mi me surgio lo siguiente.
Teniendo un hex para un proyecto, quise cambiarle la configuración de osc externo a osc interno.
La cuestión que el pickit me decia cual era la palabra de configuración. Entonces la busqué en el hexadecimal con el word pad. Pero nunca la encontré ...
Cuando se pone la configuration word por programa, ¿donde demonios va a parar esta? muchas gracias.
Si es posible contestame a andrespirolo@hotmail.com xq no se si esto me avisa que me contestas. ¿das clases particulares? saludos.
Hola:
Antes de grabar el PIC con un programa, el que dispona, puedes modificar su configuración en él. No hace falta tocar el hex para nada.
Un cordial saludo.
Cordial Saludo. Ing Exclente su documentacion acerca de como son los __CONFIG en los Pics, me puede colaborar como le digo al PIC 16F648A que va a trabajar con un cristal externo de 16MHz. si Le es posible me puede contestar a: abc.electronica@yahoo.com
Gracias por su atencion.
Buenas:
Simplemente usas un oscilador externo de cuarzo de 16 Mhz, luego configuras en HS en la palabra de configuración.
Desde 4 MHz hasta los 20 MHz se cibfigura como HS. Si usas solo 4 MHz te vale XT y HS.
Un saludo.
Hola, alguien sabe como podria obtener la Fosc a la que esta operando el microcontrolador, tal vez con alguna funcion o directiva? La finalidad es poder escribir un programa que pueda ajustar timers y prescaladores, postcalers en funcion de Fosc, es decir, independientemente de la configuracion del oscilador el programa debe conocer el valor de Fosc.
Respuesta por un usuario de foros de electrónica.
http://www.forosdeelectronica.com/f24/obtener-fosc-microcontrolador-108430/#post863239
Suerte.
hola me gustaria saber que fuses tengo que marcar y cuales no en el pic PIC 16F690,hago los programas en simulacion y andan de lujo,la cosa tambien es que programo en basic no se que marcar en el programa para que indique lo q quiero en lcd,por ejemplo para el 16f659 pongo CMCON=7 Y CON ESO MUESTRA CARACTERES EN LCD,SI NO LO PONGO NO MUESTRA NADA, mi correo es serviceelectronica@hotmail.com gracias
perdon el pic puse 659 era el 16f628a
Muy buenas Ricardo:
La configuración depende de lo que quieras. Antes que nada, en la hija de datos te dice que es y para qué es.
En caunto al LCD, no tiene nada que ver.
Un saludo.
muchas gracias,podras indicarme que fuses marcar,solo para un programa comun,como si hiciera un programa para que encienda algun led con el PIC 16F690,a la hora de cargar ese pic no me doy cuenta cuales fuses marcar,te estaria muy agradaceido,saludos desde uruguay
Hi:
Lo de marcar, más bien configurar, depende de lo que quieras.
¿Usas oscilador interno o externo?
Ahí es lo que tienes que congifugrar.
¿Qué PIC exactamente es el que quieres?
M enombra uno diferente cada rato. ;)
Si no toca la configuraciçon, quedará por defecto.
Por cierto, más delante subiré este documento, mejorado y actualizado tanto para pdf como xps para su fácil exportación.
Saludos.
Muchisimas gracias por la informacion, saludos!
De nada. Me alegro que te haya servido. ;)
me pueden ayudar.
necesito ocupar un oscilador externo de 32 MHz para una pic 16f887, ocupare el timer1 y los pines osc1 y osc2. cómo lo configuro
Hola:
El PIC16F887 soporta hasta 20 MHz.
Hoja de datos del PIC16F887:
http://ww1.microchip.com/downloads/en/DeviceDoc/41291G.pdf
Con el PIC18F4550 de los mismos pines a 48 MHz con la configuración.
Hoja de Datos:
http://ww1.microchip.com/downloads/en/DeviceDoc/39632e.pdf
Más detalles:
http://www.forosdeelectronica.com/f24/pic-soporte-mas-40-mhz-44093/#post368000
El PIC16F887 se le puede dopar a 22 MHz pero se recalienta un poco y es estable, si te pasas puede que se queme. Puedes aumentar un poco más con un ventilador y disipador, si te pasas, será inestable. No es la mejor opción.
Hay PIC32 entre 80 MHz y 200 MHz a parte de ello, también con encapsulados tipo DIP40.
Saludos.
Ayudame para hacer un ascensor con el 16f1827 gracias johnjrg11@gmail.com ayudame bro
Hola John Raqmos:
Aquí te lo explican.
http://electronica-pic.blogspot.com.es/2010/11/ascensor-de-5-plantas.html
Saludos.
Tenía un año buscando como configurar el oscilador interno del 16F883.
Muchas gracias por la explicación tan detallada de como y donde se encuentran las "palabras" de configuración.
Saludos desde Acapulco; Guerrero. México.
Hola: Andrés Gilberto Catalán Hernández.
Me alegro que te haya servido.
Saludos desde España. ;)
Publicar un comentario