Erro na compilação

Software e Hardware para uC PIC

Moderadores: andre_luis, 51, guest2003, Renie

Erro na compilação

Mensagempor reginaldo » 05 Mar 2009 17:59

Pessoal, meu programa rodava normalmente, quando inseri + duas linhas de codigo , apareceu o seguinte erro:

Error[118] C:\teste\CONT.ASM 4864 : Overwriting previous address contents (0800)

alguém pode me ajudar? O que isso quer dizer?
reginaldo
Bit
 
Mensagens: 30
Registrado em: 16 Out 2006 12:30

Mensagempor kaoalex » 05 Mar 2009 18:50

reginaldo,
Eu não sei assembler, mas faz uma busca no google com a sentença abaixo:

Error[118] Overwriting previous address contents

Ele retorna um monte de soluções. Boa sorte.
Avatar do usuário
kaoalex
Byte
 
Mensagens: 237
Registrado em: 12 Out 2006 01:52

Mensagempor DEJANO » 06 Mar 2009 08:47

Ola Pessoal!!!
Ola Reginaldo!!
Provavelmente voce esta ultrapassando a capacidade da memoria de programa do seu Circuito.
Vai la em view e verifique o programa na memoria e ve quanto que ele esta ocupando. compare com o tamanho da memoria da sua cpu. Caso estiver sem memoria, tente otmizar os seus codigo para ocupar menos memoria e sobrar alguns bytes para voce inserir essas duas linhas.
Até mais
Dejano
DEJANO
Bit
 
Mensagens: 38
Registrado em: 05 Jun 2007 22:42

Mensagempor Sergio38br » 06 Mar 2009 10:24

bom dia, vc esta usando alguma diretiva para que ele compile após o endereço 0x800 ( ta me cheirando a bootloader) e esta faltando a diretiva org 0x800 no inicio de seu código( main.. )

[ ]'s
Sergio
Avatar do usuário
Sergio38br
Word
 
Mensagens: 759
Registrado em: 22 Nov 2007 13:39
Localização: São Paulo - SP

Mensagempor reginaldo » 06 Mar 2009 12:10

Pessoal obrigado pela atenção,

Estou usando um pic 16f877a, e ao ver o Prgram memory, a pagina 0 da flash está cheia, só que preciso fazer uma chamada de subrotina na pagina 0, sendo que a subrotina em questão está na pagina 2, como fazer isso?, se há um jeito!

Por enquanto Obrigado!
reginaldo
Bit
 
Mensagens: 30
Registrado em: 16 Out 2006 12:30

Mensagempor proex » 06 Mar 2009 13:06

LCALL "NOME DA ROTINA NA PAGINA 2"
proex
Dword
 
Mensagens: 2101
Registrado em: 11 Out 2006 14:05
Localização: São Paulo

Mensagempor reginaldo » 06 Mar 2009 17:22

Só mais uma pergunta, se eu estiver em uma pagina e quiser ler uma variavel que está em outra pagina, tenho que acertar o banco também?

obrigado!
reginaldo
Bit
 
Mensagens: 30
Registrado em: 16 Out 2006 12:30

Mensagempor proex » 06 Mar 2009 21:01

Sim, precisa acertar o banco de registradores.

Use a instrução BANKSEL.

Exermplo:
RegA esta no banco 0;
RegB esta no banco 3;

Se precisar mover RegB para RegA, faça assim:

BANKSEL RegB
MOVF RegB,W
BANKSEL RegA
MOVWF RegA

Pronto.
proex
Dword
 
Mensagens: 2101
Registrado em: 11 Out 2006 14:05
Localização: São Paulo


Voltar para PIC

Quem está online

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

cron

x