Si además quieres enviarnos un Artículo para el Blog y redes sociales, pulsa el siguiente botón:
Hola a todos!
Estoy intentando comprobar si mi Programador PIC Pablin I funciona correctamente. Para ello he buscado un programa sencillito, el típico que hace parpadear un LED para el PIC 16F628.
Lo he intentado compilar, y al principio me daba error por la linea:
__config 0x3D18
Asi que la quite, y el programa funciono dando 2 warnings. Mi problema es que yo no programo todavía ensamblador, y sé que tengo que aprenderlo, pero por el momento sólo quiero probar si el Pablin funciona.
Me imagino que esta línea se debe cambiar por otra, que probablemente proporcione el MPLAB?
Mi versión es la 7.40, importa que el programa este hecho para el 16F628 y no para el 16F628A?
Los warnings que me da son:
Warning[215] C:DOWNLOADS_WINKASM.ASM 7 : Processor superseded by command line. Verify processor symbol.
Message[301] C:MPLABMPASM SUITEP16F628.INC 35 : MESSAGE: (Processor-header file mismatch. Verify selected processor.)
He intentado meterlo en el PIC con el ICPROG y obtuve lo siguiente:
Verificación falló en la dirección de código 0000h !
El Pablin parece que funciona ya que el led de programar parpadea cuando es debido. Espero vuestra ayuda, gracias una vez más.
Un saludo
La línea de config se utiliza para decirle que tipo de oscilador estas usando, si quieres reset automático, watchog, ...
si se la quitas lo tienes que definir en el icprog.
S2
Ranganok Schahzaman
Aironjack, cuando nunca has programado en ASM, esa linea da muuuchos problemas.
Nunca he probado el 16F628A, pero prueba a meter estas lineas en el encabezado:
__CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON & _XT_OSC
LIST P=P16F628A
INCLUDE <P16F628A>
La primera es la configuracion tipica, y vale para la enorme mayoria de pics.
La segunda linea le dice al compilador el micro que vas a usar, y la tercera es un archivo que define cosas basicas como la direccion de memoria de cada puerto, asi tu puedes usar la palabra PORTA, y no tienes que escribir su direccion de memoria... 0x06... si mal no recuerdo era esa, pero como ya no lo uso...
AironJack el problema está en que no has seleccionado correctamente el PIC para el que quieres compilar.
En la barra de menú del MPLAB, selecciona Configure-Select Device y en el desplegable que aparece selecciona el pic correcto.
Saludos desde Almería
Gracias por vuestras respuestas, os cuento lo que he conseguido.
Manofwar: He seleccionado el dispositivo como me has dicho y después he compilado el código tal y como viene en la web, sin poner lo que me comenta Mif. El resultado ha sido:
Make: The target "C:Downloadsparpadeo_Winkasm.o" is out of date.
Executing: "C:MPLABMPASM SuiteMPAsmWin.exe" /q /p16F628A "_Winkasm.asm" /l"_Winkasm.lst" /e"_Winkasm.err"
Message[301] C:MPLABMPASM SUITEP16F628.INC 35 : MESSAGE: (Processor-header file mismatch. Verify selected processor.)
Loaded C:Downloadsparpadeo_Winkasm.COD.
BUILD SUCCEEDED: Wed Sep 06 11:21:18 2006
Después he cambiado la cabecera del código por lo siguiente:
LIST p=16F628A ;Decimos al ensamblador qué micro estamos usando
include "P16F628A.inc" ;Incluimos las definiciones de nuestro micro
ERRORLEVEL 0, -302 ;suprime mensajes de "bank selection" al ensamblar
__CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON & _XT_OSC
Como me ha comentado Mif. Aunque debo comentar que también ha funcionado con el config antiguo:__config 0x3D18
El resultado de la compilación con esto es:
Make: The target "C:Downloadsparpadeo_Winkasm.o" is out of date.
Executing: "C:MPLABMPASM SuiteMPAsmWin.exe" /q /p16F628A "_Winkasm.asm" /l"_Winkasm.lst" /e"_Winkasm.err"
Loaded C:Downloadsparpadeo_Winkasm.COD.
BUILD SUCCEEDED: Wed Sep 06 11:24:28 2006
Luego la compilación ha funcionado. Sin embargo cuando intento usar el ICPROG para grabarlo en el PIC, me sigue diciendo:
Verificación falló en la dirección de código 0000h !
He probado con las opciones del ICPROG, marcando y desmarcando y seleccionando siempre como oscilador el XT, sin lograr nada. ¿Alguien me puede comentar cuáles hay que marcar y cuáles desmarcar?
Gracias de nuevo,
Un saludo