【问题标题】:Using COM port 8086 Assembly使用 COM 端口 8086 组件
【发布时间】:2013-12-07 00:58:57
【问题描述】:

我正在尝试使用汇编语言通过 COM 端口发送数据。我在 Windows 上使用 DOSBOX 以允许运行 16 位应用程序。我也在使用 MASM 5.1。 Windows 显示我的第一个 COM 端口位于 03F8H。我使用 INT 14H 将 0 分配给 DX,没有发送任何内容,尝试将 03F8H 分配给 DX,但效果不佳。

MOV DX,0H
MOV AL,'1'
MOV AH,01H
INT 14H
MOV AH,4CH
INT 21H

将DOSBOX的串口设置为直接端口后,将所有行设置为0

【问题讨论】:

  • 你能显示你的代码吗?您提到了端口03F8H,但您会将其用于out 指令。如果您使用int 14h,则不要使用端口地址。它需要一个端口号(0、1、2 或 3)。另外,您如何检查它是否有效?需要正确设置串行模式(波特率等)以及接收匹配的任何内容。
  • 什么版本的 Windows ?
  • 你是正确的configuration吗?
  • windows 7 MOV DX,0H MOV AL,'1' MOV AH,01H INT 14H
  • 我会尝试将dosbox串口分配给真正的com并检查它是否可以工作

标签: assembly serial-port x86-16


【解决方案1】:

设置 DOSBOX 的串口后,它工作了。非常感谢大家

【讨论】: