Buenas a todos, qué tal?
Soy nuevo en el tema PIC, y después de unas semanas de investigar y tocar en el CCS pude terminar un programita que utiliza varias funciones (entradas analógicas, switches, interrupciones, display 7 segmentos, escritura y lectura en EEPROM). Al simularlo en PROTEUS anduvo perfecto. Pero al armar el circuito NO.
Para empezar a descartar posibles fallas hice un nuevo programa bien simple, que ponga todo el puerto C en alto y todo el puerto D en bajo. Nuevamente simulado anduvo; en el circuito NO. Todos los pines I/O muestran una tensión cercana a 1.6V (medida con multimetro)
El programa de prueba es este:
#include <16f877A.h>
#use delay(clock=4000000)
#fuses HS,NOWDT,PUT,NOPROTECT,BROWNOUT,NOCPD,NOLVP
#use fast_io(c)
#use fast_io(d)
void main (void)
{int s;
s=10;
disable_interrupts(GLOBAL);
set_tris_c(0x00);
set_tris_d(0x00);
while(1){
delay_ms(s);
output_high(PIN_C0);
output_high(PIN_c1);
output_high(PIN_c2);
output_high(PIN_c3);
output_high(PIN_c4);
output_high(PIN_c5);
output_high(PIN_c6);
output_high(PIN_c7);
output_low(PIN_D0);
output_low(PIN_D1);
output_low(PIN_D2);
output_low(PIN_D3);
output_low(PIN_D4);
output_low(PIN_D5);
output_low(PIN_D6);
output_low(PIN_D7);}
}
Uso CCS, icprog para quemar el integrado y un programador JDM. Alimento con fuente de 5V (de computadora), y tengo el pin 1 también a 5V.
Alguna idea de por qué no responde?
Desde ya muchas gracias!
Soy nuevo en el tema PIC, y después de unas semanas de investigar y tocar en el CCS pude terminar un programita que utiliza varias funciones (entradas analógicas, switches, interrupciones, display 7 segmentos, escritura y lectura en EEPROM). Al simularlo en PROTEUS anduvo perfecto. Pero al armar el circuito NO.
Para empezar a descartar posibles fallas hice un nuevo programa bien simple, que ponga todo el puerto C en alto y todo el puerto D en bajo. Nuevamente simulado anduvo; en el circuito NO. Todos los pines I/O muestran una tensión cercana a 1.6V (medida con multimetro)
El programa de prueba es este:
#include <16f877A.h>
#use delay(clock=4000000)
#fuses HS,NOWDT,PUT,NOPROTECT,BROWNOUT,NOCPD,NOLVP
#use fast_io(c)
#use fast_io(d)
void main (void)
{int s;
s=10;
disable_interrupts(GLOBAL);
set_tris_c(0x00);
set_tris_d(0x00);
while(1){
delay_ms(s);
output_high(PIN_C0);
output_high(PIN_c1);
output_high(PIN_c2);
output_high(PIN_c3);
output_high(PIN_c4);
output_high(PIN_c5);
output_high(PIN_c6);
output_high(PIN_c7);
output_low(PIN_D0);
output_low(PIN_D1);
output_low(PIN_D2);
output_low(PIN_D3);
output_low(PIN_D4);
output_low(PIN_D5);
output_low(PIN_D6);
output_low(PIN_D7);}
}
Uso CCS, icprog para quemar el integrado y un programador JDM. Alimento con fuente de 5V (de computadora), y tengo el pin 1 también a 5V.
Alguna idea de por qué no responde?
Desde ya muchas gracias!