Foro de elhacker.net

Programación => ASM => Mensaje iniciado por: danielo- en 16 Octubre 2010, 19:26 pm



Título: Envio de datos por el puerto serial
Publicado por: danielo- en 16 Octubre 2010, 19:26 pm
Hola a todos, necesito que me ayuden con el envio de datos por el puerto serial, solo quiero enviar una palabra a través de este puero, pero hasta aorita no e consegguido hacerlo (soy novato en asm)
en fin, utilizo tasm para programar y hasta ahorita esto llevo:


Código
  1. pila segment stack "STACK"
  2.  
  3. pila ends
  4.  
  5. data segment
  6.  
  7. data ends
  8.  
  9. code segment
  10.  
  11. assume cs:code,ds:data,ss:pila
  12. inicio:
  13.                mov ah,0   ;servicio 00 de INT 14h: inicializar puerto  
  14. ;mov al,83 ;configuración: 1200 baudios, no paridad,      ;un bit de parada, 8 bits de datos    
  15. mov dx,00 ;Seleccionar puerto COM1  
  16. mov al,32
  17. int 14        ;interrupción del BIOS    
  18. mov ah,4ch ;servicio 4ch de INT 21h: terminar  
  19. int 21        ;interrupción servicio del DOS hald
  20.  
  21. MOV AX, 4C00h  ;halt    dos dice que es la terminacion del programa
  22. INT 21h  ;;int rebisa lo que esta en 21h.
  23.  
  24. code ends
  25. end inicio
  26.  
  27.  

mm...lo descargue de internet, pero no e logrado hacer funcionar, lo estoy checando con el hyperterminal de otra computadora, y los datos no se estan transmitiendo, espero puedan ayudarme con esto..
Gracias de antemano


Título: Re: Envio de datos por el puerto serial
Publicado por: Eternal Idol en 16 Octubre 2010, 19:31 pm
Primero mira el codigo, estas configurando el puerto (servicio 0 de la interrupcion 14h) y despues saliendo a MS-DOS, en ningun lugar escribis ...

El servicio 1 de la interrupcion 14h puede que te interese:
http://www.ctyme.com/intr/rb-0816.htm


Título: Re: Envio de datos por el puerto serial
Publicado por: danielo- en 16 Octubre 2010, 23:21 pm
MMM...si, ya se que eso es lo que necesito, pero es que no lo e logrado hacer funcionar, y no entiendo porque,

ahora que e leido un poco mas, le entiendo un poco mas, y ahi va de nuevo mi codigo, a ver si me pueden ayudar
-
Código
  1.  
  2. code segment
  3.  
  4. assume cs:code,ds:data,ss:pila
  5. inicio:
  6.                                ; esto es para iniciar el puerto
  7. mov AH,00h ;    aki inicio el puerto
  8. mov AL, 0E7h ;paramertos de puerto, esto es correcto???
  9. mov DX,00h ;= # de puerto osea el com1
  10.  
  11.                                ;y esto para mandar un caracter
  12. MOV AH,01; funcion 01h-enviando un caracter al COM
  13. MOV AL, 52; caracter a ser enviado  
  14. INT 14
  15.  
  16. code ends
  17. end inicio
  18.  

si alguien sabe de esto, agradeceria que me ayudara ;)


Título: Re: Envio de datos por el puerto serial
Publicado por: Eternal Idol en 18 Octubre 2010, 12:58 pm
Ahora si envias pero no inicializas el puerto.