Ir ao conteúdo

Erro ao compilar programa em Assembly para pic


Vicente Cesar

Posts recomendados

Postado

Estou fazendo um programa para pic 16F628A Mas esta dando erro na compilação na seguinte linha.

 

__CONFIG _XT_OSC & _WDT_OFF & _PWRTE_ON & _MCLRE_OFF & _BOREN_OFF & _LVP_OFF & _CP_OFF & DATA_CP_OFF

 

O erro é : "Error[126]   C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 10 : Argument out of range (not a valid config register address)"

 

OBS: O programa é um simples pisca led.

 

Codigo  completo:

 

#INCLUDE <P16F628A.INC>
 
__CONFIG _XT_OSC & _WDT_OFF & _PWRTE_ON & _MCLRE_OFF & _BOREN_OFF & _LVP_OFF & _CP_OFF & DATA_CP_OFF
 
;Paginação de mesmoria
#DEFINE BANCO_0 BCF STATUS,RP0 ; BCF deixa um bit igual a 0
#DEFINE BANCO_1 BSF STATUS,RP0 ; BSF deixa um bit igual a 1
 
CBLOCK 0X20                    ; Endereço inicial da memoria do banco a ser usada
 
  DELAY_0
  DELAY_1
       DELAY_2
ENDC
 
;Define Constantes (Valores iniciasis das vairiaveis)
 
INI_DELAY_0 EQU B'11111111' ;Binario
INI_DELAY_1 EQU .50 ;Descimal
INI_DELAY_2 EQU D'13' ;Descima
 
; X e H para hexadecimal
 
; 1 - Entrada 0 - Saida
 
#DEFINE LED PORTA,0 ;Led associado ao Port A Pino 0
 
ORG 0X00 ;Onde a proxima proxima instrução sera gravada
GOTO INICIO ;Devia para inicio
 
ORG 0x04
RETFIE ;Se ocorrer alguma interrupção, o programa retona onde ouve a interrupção
 
INICIO
BANCO_1
MOVLW B'11111110'
MOVWF TRISA
MOVLW B'11111111'
MOVWF TRISB
 
BANCO_0
MOVLW B'00000111'
MOVWF CMCON
 
MOVLW INI_DELAY_0
MOVWF DELAY_0
MOVLW INI_DELAY_1
MOVWF DELAY_1
MOVLW INI_DELAY_2
MOVWF DELAY_2
 
PRINCIPAL ;GOTO PRINCIPAL para voltar a esse ponto do programa
 
DECFSZ DELAY_0,F ;Decrementa Delay e salva o resultado nela mesma
GOTO PRINCIPAL
MOVLW INI_DELAY_0
MOVWF DELAY_0
 
DECFSZ DELAY_1,F ;Decrementa Delay e salva o resultado nela mesma
GOTO PRINCIPAL
MOVLW INI_DELAY_0
MOVWF DELAY_1
 
DECFSZ DELAY_0,F ;Decrementa Delay e salva o resultado nela mesma
GOTO PRINCIPAL
MOVLW INI_DELAY_2
MOVWF DELAY_2
 
BTFSS LED ;Se led aceso, pula a proxima linha
GOTO ACENDE_LED
BCF LED
GOTO PRINCIPAL
ACENDE_LED
BSF LED
GOTO PRINCIPAL
 
END
Postado

Aqui não deu erro.

Se voce esta usando o MPLAB,altere no 'configure/select device' e escolha o pic correto,existe diferenças no config register entre o 16F628 e 16F628A.

Postado

Era isso mesmo, obrigado, mas depois apareceu um monte de avisos, um deles diz que estou selecionando o banco 0 ao invés do banco 1 que é onde está o registrador TRISA, o problema é que mudei isso de todo jeito e continua a mesma mensagem,

Se souber como ajudar:

"----------------------------------------------------------------------

Debug build of project `C:\Users\Vicente Cesar\Desktop\pic\Programação\asm\TV\TVProjet.mcp' started.
Language tool versions: MPASMWIN.exe v5.39, mplink.exe v4.38, mplib.exe v4.38
Preprocessor symbol `__DEBUG' is defined.
Tue Oct 07 20:21:03 2014
----------------------------------------------------------------------
Make: The target "C:\Users\Vicente Cesar\Desktop\pic\Programação\asm\TV\TV.o" is out of date.
Executing: "C:\Program Files (x86)\Microchip\MPASM Suite\MPASMWIN.exe" /q /p16F628A "TV.asm" /l"TV.lst" /e"TV.err" /d__DEBUG=1
Warning[205] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 10 : Found directive in column 1. (__CONFIG)
Warning[205] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 16 : Found directive in column 1. (CBLOCK)
Warning[205] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 21 : Found directive in column 1. (ENDC)
Warning[205] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 35 : Found directive in column 1. (ORG)
Warning[203] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 36 : Found opcode in column 1. (GOTO)
Warning[205] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 38 : Found directive in column 1. (ORG)
Warning[203] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 39 : Found opcode in column 1. (RETFIE)
Warning[203] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 43 : Found opcode in column 1. (BSF)
Warning[203] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 44 : Found opcode in column 1. (MOVLW)
Warning[203] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 45 : Found opcode in column 1. (MOVWF)
Message[302] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 45 : Register in operand not in bank 0.  Ensure that bank bits are correct.
Warning[203] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 46 : Found opcode in column 1. (MOVLW)
Warning[203] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 47 : Found opcode in column 1. (MOVWF)
Message[302] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 47 : Register in operand not in bank 0.  Ensure that bank bits are correct.
Warning[203] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 49 : Found opcode in column 1. (BCF)
Warning[203] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 50 : Found opcode in column 1. (MOVLW)
Warning[203] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 51 : Found opcode in column 1. (MOVWF)
Warning[203] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 53 : Found opcode in column 1. (MOVLW)
Warning[203] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 54 : Found opcode in column 1. (MOVWF)
Warning[203] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 55 : Found opcode in column 1. (MOVLW)
Warning[203] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 56 : Found opcode in column 1. (MOVWF)
Warning[203] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 57 : Found opcode in column 1. (MOVLW)
Warning[203] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 58 : Found opcode in column 1. (MOVWF)
Warning[203] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 62 : Found opcode in column 1. (DECFSZ)
Warning[203] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 63 : Found opcode in column 1. (GOTO)
Warning[203] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 64 : Found opcode in column 1. (MOVLW)
Warning[203] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 65 : Found opcode in column 1. (MOVWF)
Warning[203] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 67 : Found opcode in column 1. (DECFSZ)
Warning[203] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 68 : Found opcode in column 1. (GOTO)
Warning[203] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 69 : Found opcode in column 1. (MOVLW)
Warning[203] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 70 : Found opcode in column 1. (MOVWF)
Warning[203] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 72 : Found opcode in column 1. (DECFSZ)
Warning[203] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 73 : Found opcode in column 1. (GOTO)
Warning[203] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 74 : Found opcode in column 1. (MOVLW)
Warning[203] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 75 : Found opcode in column 1. (MOVWF)
Warning[203] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 77 : Found opcode in column 1. (BTFSS)
Warning[203] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 78 : Found opcode in column 1. (GOTO)
Warning[203] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 79 : Found opcode in column 1. (BCF)
Warning[203] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 80 : Found opcode in column 1. (GOTO)
Warning[203] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 82 : Found opcode in column 1. (BSF)
Warning[203] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 83 : Found opcode in column 1. (GOTO)
Warning[205] C:\USERS\VICENTE CESAR\DESKTOP\PIC\PROGRAMAçãO\ASM\TV\TV.ASM 85 : Found directive in column 1. (END)
Make: The target "C:\Users\Vicente Cesar\Desktop\pic\Programação\asm\TV\TV.cof" is out of date.
Executing: "C:\Program Files (x86)\Microchip\MPASM Suite\mplink.exe" /p16F628A "TV.o" /u_DEBUG /z__MPLAB_BUILD=1 /z__MPLAB_DEBUG=1 /o"TV.cof" /M"TV.map" /W /x
MPLINK 4.38, Linker
Copyright © 1998-2010 Microchip Technology Inc.
Errors    : 0
 
Loaded C:\Users\Vicente Cesar\Desktop\pic\Programação\asm\TV\TV.cof.
----------------------------------------------------------------------
Debug build of project `C:\Users\Vicente Cesar\Desktop\pic\Programação\asm\TV\TVProjet.mcp' succeeded.
Language tool versions: MPASMWIN.exe v5.39, mplink.exe v4.38, mplib.exe v4.38
Preprocessor symbol `__DEBUG' is defined.
Tue Oct 07 20:21:11 2014
----------------------------------------------------------------------
BUILD SUCCEEDED
 

"


Montei o circuito e o led não piscou como o esperado, saberia como me ajudar com esses problemas ? 


Problema resolvido, os aviso eram sobre o espaçamento errado no inicio das linhas citadas e o aviso dos bacos de memoria descobri que aparecem mesmo que o banco correto esteja selecionado. Obrigado

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...

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!