郁闷,明天就要交双机接口通讯的课程设计现在还是搞不定。哪位兄弟能帮手做一个,一经采纳马上给分,下面有些老师给的参考资料,

safasfasffsa   2007-1-7 15:13 楼主
对串行接口编程,就是对其内部的10个寄存器进行必要的读或写,编程时注意要指明是对那个寄存器进行读写。
在X86系统中,串行接口的端口地址为:COM1为3F8H~3FEH,
COM2为2F8H~2FEH。所以各寄存器的读写端口地址如下表所示:
DLAB        COM1        COM2        寄存器        读/写
0        3F8H        2F8H        发送保持寄存器        OUT
0        3F8H        2F8H        接收缓冲寄存器        IN
1        3F8H        2F8H        除数寄存器低字节        OUT
1        3F9H        2F9H        除数寄存器高字节        OUT
0        3F9H        2F9H        中断允许寄存器        OUT
×        3FAH        2FAH        中断识别寄存器        IN
×        3FBH        2FBH        通信线路控制寄存器        OUT
×        3FCH        2FCH        MODEM控制寄存器        OUT
×        3FDH        2FDH        通信线路状态寄存器        IN
×        3FEH        2FEH        MODEM状态寄存器        IN
对8250编制通信软件,首先应对芯片初始化,然后按照程序查询或中断
方式实现通信。

2)        8250初始化
8250初始化就是设置波特率,确定通信的具体格式,是否使用中断,是
否自测试操作。以下对COM1编程。
1.        波特率设置
假设设置波特率为9600,则初始化程序片段为:
mov dx,3fbh             ;指向线路控制寄存器端口
          mov al,80h              ;DLAB=1   
          out dx,al
          mov dx,3f8h
          mov al,0ch               ;置产生9600波特率的除数低字节
          out dx,al
          mov dx,3f9h
          mov al,00h                ;除数高字节
          out dx,al
2.        通信数据格式设置
例如:数据格式为8位,1位停止位,奇校验,则程序如下:
mov dx,3fbh             ;指向线路控制寄存器端口
          mov al,0bh              ;线路控制寄存器控制字   
          out dx,al
3.        工作方式设置
中断输出(INTPRT),外接成受OUT2信号控制输出的三态门控制,只有
当OUT2信号为低,并有INTPRT产生时,中断信号才可通过此三态门,所以控制OUT2输出,就可控制是否允许中断产生。对MODEM控制寄存器写入控制字,使位3为1,即OUT2为低电平,三态门成为常通状态,就可以工作在中断方式。编程示例如下:
不允许中断输出:
mov dx,3fch             ;MODEM控制寄存器地址
          mov al,03h              ;使OUT2为高,DTR有效,RTS有效   
          out dx,al

允许中断输出:
mov dx,3fch            
          mov al,0bh              ;使OUT2为低,允许INTPRT去申请   
          out dx,al

自测工作方式:
mov dx,3fch            
          mov al,1bh               
          out dx,al
3)        程序查询方式通信编程
采用程序查询方式工作时,CPU通过读线路状态寄存器(3FDH),查相
应状态位(D0与D5),来检查接收缓冲寄存器是否就绪(D0=1)与发送保持器是否空(D5=1)。

谢谢了大家

回复评论 (4)

不一定要用汇编,只要能实现一台机输入字符另一台能显示出来就可以了
点赞  2007-1-7 15:37
课程设计找人做,将来工作上的事也找人做吗?呵呵
点赞  2007-1-9 16:16
楼上有理。
点赞  2007-1-9 17:55
来顶太监贴。
点赞  2007-7-30 14:43
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复