Go Down

Topic: Acceder arduino desde ensamblador 8086 (Read 3247 times) previous topic - next topic

jaaaelpumuki

#15
May 07, 2010, 06:29 pm Last Edit: May 07, 2010, 06:30 pm by jaaaelpumuki Reason: 1
Hola, muchas gracias por todo

Finalmente salió :


     MOV AH,00 ;inicializar el puerto
     MOV AL,11110011b ; velocidad 9600, N,un bit de stop, 8 bit de datos....
     MOV DX,00 ; puerto com1
     INT 14H
Esperar:  
    mov dx,00
    mov ah,02h
    int 14h
    test ah,01h; si el bit 1(dato listo) esta puesto a cero no hay dato listo  

en esta página están todas las configuraciones del puerto:
http://hgr.tripod.com/puertos_ensamblador.html
    jz Esperar ;salta y vuelve a verificar
   

jaaaelpumuki

#16
May 08, 2010, 07:01 pm Last Edit: May 08, 2010, 07:02 pm by jaaaelpumuki Reason: 1
parece que he cantado victoria antes de tiempo. Leer datos funciona sin problemas pero escribir nada de nada, siempre me da un 80H, que significa un time out

El código es el siguiente
enviar proc
     MOV AH,00 ;inicializar el puerto
     MOV AL,11101011b ; velocidad 9600, N,un bit de stop, 8 bit de datos....
     MOV DX,00 ; puerto com1
     INT 14H
      MOV AH, 1 ; enviar
      MOV AL, 'S' ; envio un caracter
      MOV DX, 00 ; puerto com1
      INT 14H
      RET
enviar endp

El código de recibir es el siguiente (funciona bien):



recibir proc
     push bx
     MOV AH,00 ;inicializar el puerto
     MOV AL,11110011b ; velocidad 9600, N,un bit de stop, 8 bit de datos....
     MOV DX,00 ; puerto com1
     INT 14H
     
Esperar:  
   mov dx,0000
     mov ah,03h
   int 14h
   test ah,01h; si el bit 1(dato listo) esta puesto a cero no hay dato listo  
   jz Esperar ;salta y vuelve a verificar
   mov dx,0000
   mov ah,02h
   int 14h
   mov car, al
     pop bx
     ret
recibir endp

Go Up