Qué tal calopsia!
Bueno fíjate que justo estoy trabajando en un proyecto con el 16f877 y pues en un momentico he probado lo que dices para encender y apagar un led con el RA5, y funciona de maravilla...
Aquí te dejo el programa que cargué en el micro y funcionó -en físico, 100% -.
Usé un PIC16F877 con cristal de 20MHz (es el que uso para todas mis aplicaciones, así trabaja el micro a full velocidad).
El circuito pues es el clásico, en el Pin 7 -RA5- una resistencia de 100ohms en serie con un led a tierra.
El compilador es CCS 4.118.
#include <16f877.h>
#fuses HS,NOWDT,NOPROTECT,NOLVP,PUT,NOBROWNOUT
#use delay (CLOCK=20000000)
#use fast_io(A)
void main()
{
setup_adc_ports(NO_ANALOGS);
setup_adc(ADC_OFF);
set_tris_A(0x00);
while(TRUE)
{
output_high(PIN_A5);
delay_ms(500);
output_low(PIN_A5);
delay_ms(500);
}
}
Prueba ese programita a ver si te funciona, te debe funcionar
... por lo menos para descartar que no sea el micro el que esté echando broma...
Si este programa -tal cual como te lo coloqué- te funciona, el problema entonces debe estar en alguna parte de la programación...
Te dejo el .hex por si acaso (no hagas caso del nombre "envio_serial", es que sobreescribí uno que tenía para eso jeje).
En fin, coméntanos por acá cómo te fue...
Saludos cordiales, nos leemos!