Foro de elhacker.net

Programación => ASM => Mensaje iniciado por: McastilloV en 5 Noviembre 2015, 21:42 pm



Título: Arduino ASM
Publicado por: McastilloV en 5 Noviembre 2015, 21:42 pm
Tengo este error en ensamblador de arduino como lo puedo solucionar


C:\Users\Mauricio\AppData\Local\Temp\build1496615171511360210.tmp\assemblycode.S.o: In function `humedad':
C:\Users\Mauricio\AppData\Local\Temp\build1496615171511360210.tmp/assemblycode.S:46: undefined reference to `DHT11'
collect2.exe: error: ld returned 1 exit status
Error de compilación


este es el script

.extern DHT11
.extern DHT11.read
.extern analogRead
.extern Arduino.h

.global setup
.global loop

setup:
cbi 0x14,2 //A2 Humedad
cbi 0x11,1 // A1 FotoCelda
cbi 0x11,0 // A0 Sen receptor

sbi 0x17,3 // D11 Leds Fondo
sbi 0x17,4 // D12 Led Noti Azul
sbi 0x17,5 // D13 Led Noti Rojo
ret

loop:
    sbi 0x18,3
    clr r24
    clr r25
    mov r24,1
    mov r25,1
    rcall analogRead
    cpi r24,169
    brmi foto
    cbi 0x18,4
    rjmp loop   

foto:
    clr r24
    clr r25
    mov r24,2
    mov r25,2
    rcall analogRead
    cpi r24,247
    brmi error
    sbi 0x18,5
    rjmp loop

humedad:
    clr r24
    clr r25
    mov r24,3
    rcall DHT11
    //ldi r16, dht.readtemperature
   
   
error:
    sbi 0x18,4
    cbi 0x18,5
    rjmp loop

Gracias!!!  :D


Título: Re: Arduino ASM
Publicado por: xv0 en 6 Noviembre 2015, 19:06 pm
Hola

Te esta diciendo el fallo arriba, no hay referencia a la función DHT11, que por lo que veo es externa.

Ya no puedo decirte mas, revisa esa función. Cualquier cosa dilema.

Un saludo.


Título: Re: Arduino ASM
Publicado por: McastilloV en 6 Noviembre 2015, 19:09 pm
El problema es a la hora de llamarlo en el .S porque en un .ino la librería no da ningún problema


Título: Re: Arduino ASM
Publicado por: xv0 en 6 Noviembre 2015, 20:26 pm
Estado buscando dht11 y se trata de un sensor de temp y humedad, y estado buscando la librería en contra la DHT.h, pero nada de DHT11.

El error te lo dice, que no la encuentra no hay referencia, esta bien definida?

Un saludo.