Hola, tengo un problema al quemar con el micro. Voy a contar los pasos que hice, porque estoy entrgado...hice un programa en CCS compiler que uso el pic 12f675. Lo simule en el proteus y lo simule en el mplab y no le vi problema. Luego pongo importar en el mplab el archivo .hex. y lo quemo y me aparece el siguiente mensaje:
//------------------------------------------------------------------Mensaje 1------------------------------------------------------
PICkit 3 detected
Connecting to PICkit 3...
Running self test...
Self test completed
Firmware Suite Version...... 01.28.02
Firmware type......................Midrange
PICkit 3 Connected.
PK3Err0045: You must connect to a target device to use PICkit
3.
Device ID Revision = 0000000b
The target has invalid calibration data (0).
//-------------------------------------------------------------Mensaje 2------------------------------------------------------------------
PICkit 3 detected
Connecting to PICkit 3...
PK3Err0038: Failed to initialize PICkit 3.
Failed to properly connect to PICkit 3
//--------------------------------------------------------------Programa en CCS compiler------------------------------------------------------
//Sensor tacometro para maquina de freno de corriente parasita.
#include <12f675.h>
#use delay(clock=4000000)
#fuses INTRC_IO
#fuses NOWDT
#fuses NOPUT
#fuses MCLR
#fuses NOBROWNOUT
#fuses NOPROTECT
#fuses NOCPD
//------------------------------------------------------------------------------
#use fast_io(A)
//------------------------Definicion variables globales-------------------------
int8 k0,t0,vuelta;
int16 k;
//------------------------Definicion de pines del pic---------------------------
#define LCD_E PIN_A0
#define led PIN_A1
#define giro PIN_A2
//#define ¿¿ PIN_A3
#define LCD_CK PIN_A4
#define LCD_DAT PIN_A5
//-----------------------------Libreria LCD-------------------------------------
#include <flex_lcd_3pins.c>
//----------------------------Subrrutina Interrupciones-------------------------
//------------------------------Subrrutina TIMER0-------------------------------
#INT_TIMER0
void TIMER_isr(){
SET_TIMER0(6);
if(t0==0){
t0=250;
k=vuelta*60;
vuelta=0;
output_toggle(led);
}
else{
t0=t0-1;
}
}
//-------------------------------Subrrutina RA2---------------------------------
#INT_EXT
void EXT_isr(){
if(input(giro)==0){
vuelta=vuelta+1;
}
}
//-----------------------------Configuracion------------------------------------
void main(void){
setup_comparator(NC_NC_NC_NC);
SET_TRIS_a(0b00000100);
OUTPUT_a(0b0000000);
port_a_pullups(true); //habilitacion de pull-up
SETUP_TIMER_0(T0_INTERNAL|T0_DIV_16);
SET_TIMER0(6);
enable_interrupts(INT_TIMER0);
enable_interrupts(INT_EXT);
EXT_INT_EDGE(H_TO_L);
enable_interrupts(GLOBAL);
lcd_init();
output_high(led);
//-----------------------------Borro variables----------------------------------
vuelta=0;
t0=250;
k0=0;
k=0;
vuelta=0;
//-----------------------------Bucle infinito-----------------------------------
while(true){
delay_ms(250);
lcd_putc('\f');
printf(lcd_putc,"\fr.p.m=%Lu",k);
}
}
//------------------------------------------------------------------------------
//-------------------------------------------------------------------------------------------------------------------------------------------------
Igual lo probe en el protoboard y no me anda, desinstale el mplab y lo volvi a instalar y sigo con el problema de que no me anda. Es el mplab? el pickit 3 no creo que
sea, lo probe con otro y me da el mismo problema. Espero que me puedan ayudar. No pude adjuntar los archivos, por eso pegue todo el texto.
Gracias y saludos.