comunicación serie con Arduino usando el lenguaje ensamblador 8086

votos
0

Estoy intentando conectar Arduino a un lenguaje ensamblador programin 8086. Tengo el departamento de montaje usando DOSBox. El código que estoy usando en el montaje es:

mov ah, 00
mov al, 11000111b 
mov dx, 3
int 14h
MOV DX, 02E8H ;my port com4
MOV AH, 00
MOV AL, 'A' ;sending an 'A'
OUT DX,AL

Y mi código de Arduino es muy simple,

if (Serial.available()) {
     int inByte = Serial.read();
     if(inByte == 65){
          digitalWrite(2,HIGH);
     }
}

Estoy recibiendo algo en Arduino, pero no recibirá lo que pienso que estoy enviando, la 'A' en este caso.

Si envío una 'A', o 'a', o 1, me sale un 6 en Arduino.

Si envío una 'B', o 'b', o 2, me sale un 24 en Arduino.

Si envío una 'C', o 'c' o 3, me sale un 30 en Arduino.

Las mismas cosas con todas las letras, consiguiendo 0,6,24,30,96,102,120,126,128,134,152 ...

También recibo veces el número i dicho anteriormente y un 254.

Le agradecería cualquier ayuda!

Publicado el 07/11/2018 a las 22:46
fuente por usuario
En otros idiomas...                            


1 respuestas

votos
0

tratar con este conf 11100011b funciona para mí

Respondida el 09/11/2018 a las 02:51
fuente por usuario

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more