Ir ao conteúdo

PIC 16F877A não funciona!


andrezinhoandrad

Posts recomendados

Postado

Olá comunidade..Boa Noite!

Estou fazendo um projeto para a faculdade com o PIC16F877A.. Utilizo um gravador chamado PICBURNER. Ele grava certinho o PIC, mais nada funciona quando teste o hardware. As configs estão corretas... XT p cristal, utilizo o PIC C.

Caso haja algum problema atipico com o pic, gostaria de conhecer.

Obrigado!

Postado

Se esta gravando o pic pode ,estar funcionando sim ,eu disse pode porque as vezes grava mais nao roda o programa como devido e ja aconteceu varias vezes e tive q trocar o pic ...... mais é como matheus disse, manda o material ai amigao.

Postado

Desculpem a ausência pessoal, seguem dados da programação:

OBS: Programo no PIC C, faço o projeto wizard, onde ele ja configura os FUSE pra mim.

#include <16F877A.h>

#define LED PIN_A0 // PIN_A0 será no programa LED

void main() // Rotina principal do programa AcendeLED.c

{

setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1); // Configuração do Timer0

setup_timer_1(T1_DISABLED); // Configuração do Timer1

setup_timer_2(T2_DISABLED,0,1); // Configuração do Timer2

setup_ccp1(CCP_OFF); // Configuração do CCP1

setup_comparator(NC_NC_NC_NC); // Configuração dos Comparadores

setup_vref(FALSE); // Configuração da Tensão de referência

while(true) // Laço While, aqui começa o programa

{

output_high(LED); // Saída LED para nível alto (high)

delay_ms(500); // Aguarda 500 ms

output_low(LED); // Saída LED para nível baixo (low)

delay_ms(500); // Aguarda 500 ms

}

}

Uso o PICBURNER, que muita gente compra pelo ML. O meu, comprei na Santa Efigênia. Eu gravei a mesma programação no 16F628A e funcionou, mais no 877A nao.

Galera, aqui esta o circuito no Proteus.

Na programação que enviei acima, selecionei o port A0, porém no circuito eu mudei a programação e selecionei o A2.

No proteus funciona tudo que faço, ja no hardware nao.

post-873153-13884961025305_thumb.jpg

Postado

Grava este q ira rodar

#include <16f877a.h>
#fuses xt, nowdt, noprotect, put, nobrownout, mclr, nolvp, nocpd
#use delay(clock=4000000)
#define led pin_b0

void main(){
set_trisb_b(0);
output_b(0);
while(1)
{
output_high(led);
delay_ms(1000);
output_low(led);
delay_ms(1000);
}
}

Postado

Estava com um problema semelhante ainda hoje, mas resolvi tudo no icprog. Fico em duvida se as configurações no pic wizard são válidas... coisas que não acontecem em ASM...

Postado

Programei o pic com essa programação.

Agora na faculdade, tirei as duvidas com o professor..e acho qe estava errando vergonhosamente, eu gravava o pic, na protoboard eu o alimentava e colocava o led no port escolhida.. Mais nao conectava o cristal :S

Chegando em casa testarei com o oscilador ligado e postarei o resultado.

Obrigado por enquanto

Galera o erro persiste.

Coloquei o cristal de 4MHz co os capacitores C1 e C2 de acordo com o modo XT do data sheet.

Ele nao faz o led piscar, tenho 3 pics e o erro é o mesmo.

O gravador esta me deixando c puga atras da orelha..o software p gravacao é o USBurner.

Ja nao sei o que faco!

Postado
Coloquei o cristal de 4MHz co os capacitores C1 e C2 de acordo com o modo XT do data sheet.

Essa é nova mas acho que muita gente conhecem, o oscilador de 4MHz estando no limiar para operação em XT causando o funcionamento ou não domicrocontrolador em muitos casos.

Nesse caso, tente usar o fuse HS, issomesmo, nesse fuse é garantido que com o oscilador de 4MHZ o PIC irá operar.

duvidas, tamos ae.

Abs.

Postado

Amigos, na madrugada do dia 13 fiquei mexendo nas configuracoes e fusiveis do programa de gravacao. Assim q gravei, coloquei o pic na protoboard e logo no pino 1 MCLR deixei em VCC. Como ainda sou leigo com o pic, nao sabbia q esse pino deveria ser alimentado. Como um passe de magica as saidas q havia escolhido, funcionaram. E enfim meu problema td foi solucionado.

Depois postarei uma foto do progeo montado, agradeco a comunidade e a todos os membros q me ajudaram, foi meu primeiro de mts posts.

Obrigado!

Felipe, eu programei com o fuse XT. Tirandoo mais duvidas c meu professor, ele me explicou q o cristal poderia estar oscilando menos doq 4MHz exatos, caso ele ttivesse com 3,99 ja nnao funcionaria com o HS. Isso foi de suma importancia.

Postado

Me admiro o professor não ter visto tal erro. Enfim, só lembrando que no esquema do proteus o LED ta ligado direto no pino e sem resistor. Mesmo que as vezes funcione na prática é bom colocar o velho amigo de 1K que garante que tudo continuará funcionando por um longo tempo.

Postado

aproveitando a duvida do amigo, gostaria de saber algumas coisas desse pic.... se alguem puder resolver pra mim....

esse pic não tem oscilador interno ? ou tem?

porque consigo compilar um codigo e não grava no pic??

e sera que alguem pode dar dicar para inicialização dele no MICKRO C for 5.2, ja tentei alguns codigos simples como piscar led em um port inteiro ou fazer uma sequencia de leds mas não ta dando muito certo... se alguem tiver dicas....

abss!!!!

Postado
O problema deve ser q esta seguindo o esquematico do proteus e nao esta ligado o resistor pull up no pino mcrl do pic.Confira ai amigo.Abraços.
.Ja tinha dado a dica do pino master clear.Vamos prestar atençao nas dicas ae amigos.....

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades 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

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!