collapse

* Posts Recentes

Amplificador - Rockboard HA 1 In-Ear por almamater
[27 de Março de 2024, 19:13]


O que é isto ? por KammutierSpule
[26 de Março de 2024, 19:35]


Bateria - Portátil por almamater
[25 de Março de 2024, 22:14]


Emulador NES em ESP32 por dropes
[13 de Março de 2024, 21:19]


Escolher Osciloscópio por jm_araujo
[06 de Fevereiro de 2024, 23:07]


TP4056 - Dúvida por dropes
[31 de Janeiro de 2024, 14:13]


Leitura de dados por Porta Serie por jm_araujo
[22 de Janeiro de 2024, 14:00]


Distancia Cabo por jm_araujo
[08 de Janeiro de 2024, 16:30]


Meu novo robô por josecarlos
[06 de Janeiro de 2024, 16:46]


Laser Engraver - Alguém tem? por almamater
[16 de Dezembro de 2023, 14:23]

Autor Tópico: Curso PIC asena  (Lida 3922 vezes)

0 Membros e 1 Visitante estão a ver este tópico.

Offline guuustavo

  • Mini Robot
  • *
  • Mensagens: 9
Curso PIC asena
« em: 05 de Agosto de 2014, 18:06 »
Boa tarde pessoal,

Estou a seguir o curso de microcontroladores PIC do asena mas estou com algumas dificuldades em executar os exemplos de assembly.
Estou a utilizar o MPLAB X IDE V.205 e no primeiro exemplo prático "Registo temporário W" com o seguinte código:

   processor 16F886   ;configura o tipo de CPU usado
   radix   hex         ;pre-definicao do tipo de valores numericos usados


;------------------------

inicio
           movlw   0x0F      ;carrega W com o valor 0x0F
           movlw   0x0A      ;carrega W com o valor 0x0A
           movlw   0x0D      ;carrega W com o valor 0x0D
              movlw   0x04      ;carrega W com o valor 0x04
              movlw   0x33      ;carrega W com o valor 0x33

           goto   inicio

;------------------------

    end


e obtenho os erros:

make -f nbproject/Makefile-default.mk SUBPROJECTS= .build-conf
make[1]: Entering directory `C:/Users/zeze/MPLABXProjects/Projecto2.1.X'
make  -f nbproject/Makefile-default.mk dist/default/production/Projecto2.1.X.production.hex
make[2]: Entering directory `C:/Users/zeze/MPLABXProjects/Projecto2.1.X'
make[2]: *** [build/default/production/registow.o] Error 1
make[1]: *** [.build-conf] Error 2
"C:\Program Files\Microchip\MPLABX\mpasmx\mpasmx.exe" -q -p16f886 -l"build/default/production/registow.lst" -e"build/default/production/registow.err" -o"build/default/production/registow.o" "registow.asm"
make: *** [.build-impl] Error 2
Error[150]   C:\USERS\ZEZE\MPLABXPROJECTS\PROJECTO2.1.X\REGISTOW.ASM 18 : Labels must be defined in a code or data section when making an object file
Error[152]   C:\USERS\ZEZE\MPLABXPROJECTS\PROJECTO2.1.X\REGISTOW.ASM 20 : Executable code and data must be defined in an appropriate section
Error[152]   C:\USERS\ZEZE\MPLABXPROJECTS\PROJECTO2.1.X\REGISTOW.ASM 22 : Executable code and data must be defined in an appropriate section
Error[152]   C:\USERS\ZEZE\MPLABXPROJECTS\PROJECTO2.1.X\REGISTOW.ASM 24 : Executable code and data must be defined in an appropriate section
Error[152]   C:\USERS\ZEZE\MPLABXPROJECTS\PROJECTO2.1.X\REGISTOW.ASM 26 : Executable code and data must be defined in an appropriate section
Error[152]   C:\USERS\ZEZE\MPLABXPROJECTS\PROJECTO2.1.X\REGISTOW.ASM 28 : Executable code and data must be defined in an appropriate section
Error[151]   C:\USERS\ZEZE\MPLABXPROJECTS\PROJECTO2.1.X\REGISTOW.ASM 30 : Operand contains unresolvable labels or is too complex
Error[152]   C:\USERS\ZEZE\MPLABXPROJECTS\PROJECTO2.1.X\REGISTOW.ASM 30 : Executable code and data must be defined in an appropriate section
make[2]: Leaving directory `C:/Users/zeze/MPLABXProjects/Projecto2.1.X'
make[1]: Leaving directory `C:/Users/zeze/MPLABXProjects/Projecto2.1.X'

BUILD FAILED (exit value 2, total time: 1s)


Também experimentei outros exemplos e também não correm, referem sempre o erro 150, apenas consegui correr o "primeiro programa" da página 247 mas tive que acrescentar um _config1, no __config. Como não tenho nenhuma experiência em Assembly está muito difícil encontrar uma solução para este problema será que alguém me pode ajudar?

Desde já muito obrigado!

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.733
  • Helpdesk do sitio
Re: Curso PIC asena
« Responder #1 em: 05 de Agosto de 2014, 18:10 »
Diria para esqueceres o assembly e usar C.
Isso pelo jeito falta ai um .section ou um .data ou algo do género.
Avr fanboy

Offline KammutierSpule

  • Mini Robot
  • *
  • Mensagens: 1.481
Re: Curso PIC asena
« Responder #2 em: 05 de Agosto de 2014, 19:29 »
diria que tambem faltam includes..

Offline guuustavo

  • Mini Robot
  • *
  • Mensagens: 9
Re: Curso PIC asena
« Responder #3 em: 05 de Agosto de 2014, 23:45 »
Já resolvi, parece que tinha que acrescentar ao programa:

;***** Program memory structure *****
        ORG     0x00        ; Reset vector
        goto    Main        ; After reset jump to this location

Obrigado pela ajuda!