Ir ao conteúdo
  • Cadastre-se

Recommended Posts

Pessoal meu programa consiste em ou habilitar a conversão A/D ou a porta da serial só que no void main quando eu ativo o conversor A/D fala que o tempo de espera não foi atingido quanto testo no proteus. (Linha de vermelho no programa). Agora quando eu acrescento if(ADCON0bits.GO == 0)  (Linha de azul no programa) o funcionamento é correto não estou entendendo o por que. Alguém pode me ajudar?

 

 
void configAD(){    ADCON1bits.ADCS2 = 0;    ADCON0bits.ADCS1 = 0;    ADCON0bits.ADCS0 = 1;    ADCON0bits.CHS2 = 0;    ADCON0bits.CHS1 = 0;    ADCON0bits.CHS0 = 1;    ADCON1bits.ADFM = 1;    ADCON1bits.PCFG3 = 0;    ADCON1bits.PCFG2 = 0;    ADCON1bits.PCFG1 = 1;    ADCON1bits.PCFG0 = 0;    ADCON0bits.ADON = 1;}  void main() {   TRISD = 0;   PORTD = 0;   TRISCbits.TRISC3 = 0;   TRISBbits.TRISB1= 1;   TRISBbits.TRISB0= 1;   configAD();   configSerial();   configTMR0();   configTMR1();   INTCONbits.GIE = 1;   INTCONbits.PEIE = 1;   PIE1bits.RCIE = 1;   while(1){        if (PORTBbits.RB0 == 0) {            PIE1bits.ADIE = 1;            PIE1bits.RCIE = 0;              if(ADCON0bits.GO == 0)             ADCON0bits.GO = 1;           } else if (PORTBbits.RB1 == 0) {            PIE1bits.ADIE = 0;            PIE1bits.RCIE = 1;                    }    }}
 
 
 

Compartilhar este post


Link para o post
Compartilhar em outros sites
Visitante

cuidado com o proteus as vezes ele engana quando o seu chip é bem complexo!!

mais revise o seu código !!

por que você não passa para ccs c não gosta?

 

 

 

 

 

Charles francês joaõ pessoa  pb

Compartilhar este post


Link para o post
Compartilhar em outros sites

Existe um tempo de aquisição (carga do capacitor de hold) e de conversão.

provavelmente o que ocorre é que a conversão ainda está em curso (ADCON0,GO/DONEbarra = 1).

Leia a parte da conversão no datasheet.

Faça uma espera para a conversão While (ADCON0,GO/DONEbarra = 1){}

Procure auxiliar quem quer te auxiliar.

Informe o PIC, o compilador, etc. Não que eu vá precisar, pois não uso o C, mas quanto mais informações melhor.

MOR_AL

Compartilhar este post


Link para o post
Compartilhar em outros sites
Visitante
Este tópico está impedido de receber novos posts.





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×