Autor Tema: Problemas con el puerto B0 en 16f877  (Leído 1714 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado elfrancho

  • PIC16
  • ***
  • Mensajes: 101
Problemas con el puerto B0 en 16f877
« en: 03 de Agosto de 2010, 00:38:46 »
Hola Sres !  mi problema es que no puedo encender un led en el puerto B0 del micro 16f877

Aquí les paso el código para que me corrijan a ver si le pifié en algo..

Saludos y garcias!!

Código: [Seleccionar]
#include <16F877.h>
#device adc=8

#FUSES NOWDT                    //No Watch Dog Timer
#FUSES XT                       //Crystal osc <= 4mhz
#FUSES NOPUT                    //No Power Up Timer
#FUSES NOPROTECT                //Code not protected from reading
#FUSES BROWNOUT                 //Reset when brownout detected
#FUSES NOLVP                      //Low Voltage Programming on B3(PIC16) or B5(PIC18)
#FUSES NOCPD                    //No EE protection
#FUSES NOWRT                    //Program memory not write protected
#FUSES NODEBUG                  //No Debug mode for ICD

#use delay(clock=4000000)
#use rs232(baud=9600,parity=N,xmit=PIN_C6,rcv=PIN_C7,bits=8)

#include "flex_lcd.c"

   
//==========================
///PROGRAMA
void main(void)
{
   setup_adc_ports(NO_ANALOGS);
   setup_adc(ADC_OFF);
   setup_psp(PSP_DISABLED);
   setup_spi(FALSE);
   setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
   setup_timer_1(T1_DISABLED);
   setup_timer_2(T2_DISABLED,0,1);

while(1){
   
   output_b(0xff);                  // <--- PRENDEN TODOS MENOS RB0  :(
   delay_ms(1000);               //delay
   output_b(0x00);
   delay_ms(1000);               //delay

}
}

Desconectado culebrasx

  • PIC10
  • *
  • Mensajes: 39
Re: Problemas con el puerto B0 en 16f877
« Respuesta #1 en: 03 de Agosto de 2010, 03:44:40 »
Lo has simulado? yo lo he probado en mplab y en proteus y si que me funciona,
he desactivado las lineas que no utilizas y para empezar no te hacen falta:

//#use rs232(baud=9600,parity=N,xmit=PIN_C6,rcv=PIN_C7,bits=8)

//#include "flex_lcd.c"

imagino que has utilizado el Wizard de CCS,....

Desconectado Chenao

  • PIC18
  • ****
  • Mensajes: 414
Re: Problemas con el puerto B0 en 16f877
« Respuesta #2 en: 03 de Agosto de 2010, 14:23:11 »
Saludos culebrasx

Como dice el compañero elfrancho en la simulación anda perfecto, por que no intentas simular en algún software el código que has hecho.

Como sugerencia te recomiendo que el puerto_B lo configures como salida digital con las funciones set_tris_x(valor)

Código: [Seleccionar]
SET_TRIS_B(0X00)          // Termnales del puerto_b como salidas digitales
Un saludo desde Pereira - Colombia

Desconectado elfrancho

  • PIC16
  • ***
  • Mensajes: 101
Re: Problemas con el puerto B0 en 16f877
« Respuesta #3 en: 03 de Agosto de 2010, 21:11:51 »
Saludos culebrasx

Como dice el compañero elfrancho en la simulación anda perfecto, por que no intentas simular en algún software el código que has hecho.

Como sugerencia te recomiendo que el puerto_B lo configures como salida digital con las funciones set_tris_x(valor)

Código: [Seleccionar]
SET_TRIS_B(0X00)          // Termnales del puerto_b como salidas digitales

Muchas gracias culebrasx y chenao, debe haber un problema en ese puerto (cabe aclarar que el pic lo rasjunié de alguna placa vieja y es posible que esté quemado el puerto)

Proteus es lo mejor para esto de simular no ?

Desconectado Chenao

  • PIC18
  • ****
  • Mensajes: 414
Re: Problemas con el puerto B0 en 16f877
« Respuesta #4 en: 04 de Agosto de 2010, 19:48:53 »
Saludos elfrancho

Citar
Proteus es lo mejor para esto de simular no ?

Proteus no es más que un simulador, no siempre la cosas que se simulan funcionan en la práctica por diferentes circustancias. Personalmente siempre simulo antes de llevarlo a la práctica. Con respecto a la consulta, para simular microcontroladores siempre he utilizado el Proteus así que no se como serán los demás pero en general el Proteus me parece un buen software para simular este tipo de ejercicios.
Un saludo desde Pereira - Colombia