P16F876 NÃO EXECUTA INSTRUÇÃO

Software e Hardware para uC PIC

Moderadores: andre_luis, 51, guest2003, Renie

P16F876 NÃO EXECUTA INSTRUÇÃO

Mensagempor sgcavalcante » 21 Jul 2007 22:35

Estou utilizando um pic 16f876, e as instruções que coloco no loop principal do software são executadas apenas quando inicio o pic, gostaria de saber se alguem tem alguma dica, segue abaixo o fonte do loop principal;

SETOR DE INTERRUPÇÃO

SETOR DE SUBROTINAS

SETOR DE CONFIGURAÇÃO DO PIC

; SETOR DO LOOP_PRINCIPAL
LOOP_PRINCIPAL BANK0
MOVF VALOR_REF,W
SUBWF CONV_AD,W
BTFSS STATUS,C
GOTO SAIDA1_ON
SAIDA1_OFF BCF PORTB,5
GOTO LOOP_PRINCIPAL
SAIDA1_ON BSF PORTB,5
GOTO LOOP_PRINCIPAL
END
sgcavalcante
 
Mensagens: 4
Registrado em: 24 Jun 2007 11:52

Mensagempor MOR_AL » 22 Jul 2007 06:14

Olá sgcavalcante.

O loop principal parece ok.

Como está o seu SETOR DE CONFIGURAÇÃO DO PIC ?

Pode ser o Whatchdog em on.

Provavelmente sua variável CONV_AD está sendo alterada no SETOR DE INTERRUPÇÃO. No SETOR DO LOOP_PRINCIPAL deve ter uma parte (antes das instruções apresentadas) que configura alguma coisa para gerar interrupção. Caso não haja, sua variável CONV_AD não será alterada e o programa ficará alterando PORTB,5 sempre com o mesmo valor (um ou zero), parecendo que não está sendo alterada a PORTB,5.

Outra coisa.

Você está atualizando a PORTB, 5 a uma taxa máxima. Não deveria aguardar um pouco para atualizar? Ou não deveria esperar que uma conversão AD alterasse a variável CONV_AD? Se a PORTB,5 contiver um led, talvez não dê para perceber as alterações.


MOR_AL
Avatar do usuário
MOR_AL
Dword
 
Mensagens: 2934
Registrado em: 19 Out 2006 09:38
Localização: Mangaratiba - RJ

Mensagempor Nik » 25 Jul 2007 12:12

Tive uns problemas com o 16F876. Uma firmware que usava blz no 873, tentei gravar no 876 e dava tudo errado, não conseguia ler e atualizar direito a eeprom, entre outras coisas. Me disseram que pode ser PIC Pirata, ou de lote refugado. Alguém já ouviu algo a respeito?
Nik
Bit
 
Mensagens: 42
Registrado em: 07 Nov 2006 06:04

Mensagempor zielpunkt » 25 Jul 2007 18:53

Fica impossível opinar sem conhecer as demais rotinas, ok. Pode ser um porrilhão de coisas, e entre elas as idas/retornos para/dos bancos de memória, de forma incorreta, o que faz o programa se perder.

É isso.
"Talento é mais barato que sal. O que separa a pessoa talentosa da bem-sucedida é muito trabalho duro." [ Stephen King ]
zielpunkt
Byte
 
Mensagens: 376
Registrado em: 12 Out 2006 11:36
Localização: Sao Paulo - SP

Mensagempor tcpipchip » 25 Jul 2007 19:35

Como estao configuradas os registradores TRISx?
Avatar do usuário
tcpipchip
Dword
 
Mensagens: 6560
Registrado em: 11 Out 2006 22:32
Localização: TCPIPCHIPizinho!


Voltar para PIC

Quem está online

Usuários navegando neste fórum: Google [Bot] e 1 visitante

x