课程设计 双机串行通信的实现

课程设计 双机串行通信的实现

ID:35394745

大小:264.00 KB

页数:13页

时间:2019-03-24

课程设计  双机串行通信的实现_第1页
课程设计  双机串行通信的实现_第2页
课程设计  双机串行通信的实现_第3页
课程设计  双机串行通信的实现_第4页
课程设计  双机串行通信的实现_第5页
资源描述:

《课程设计 双机串行通信的实现》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、课程设计课程名称计算机接口与通信题目名称双机串行通信的实现一.课程设计的内容设计一套系统,要求能在两台计算机之间以中断方式和查询方式实现串行通信,数据可以采用ASCII字符方式和二进制方式传送。二.相关技术1.使用芯片:Intel8250可编程异步通信接口、可编程中断控制器8259A。2.编程环境:WINXP操作系统。3.编程工具:MASM5.0。4.Intel8250可编程异步通信接口:工作方式:异步串行通信每一个数据的传送是独立的,各数据的传送在时间上相互隔开,并且没有特定的时间联系。异步串

2、行通信格式(起始位+数据位+校验位+停止位)8250的初始化编程,主要步骤是:(1)确定波特率设置除数锁存器的分频值。为了能对除数锁存器写入,要先使通信线路控制寄存器的最高位为1。(2)设置通信的数据格式:通过对通信线路控制寄存器编程实现,而且要使它的最高位为0,以便接下来对接收和发送缓冲器以及中断允许寄存器进行操作。(3)如果使用中断,则设置中断允许寄存器的状态。若不使用中断,这个寄存器可设置成0。(4)设置调制解调器控制寄存器:通常,这个寄存器设定的值为03H,使8250输出DTR和RTS这

3、两个调制解调器控制信号。如果系统中不使用这两个信号,这样的设置也不会带来问题。如果使用中断,OUT2位应设置为“1”,这样8250产生的中断信号可以通过系统总线送给8259中断控制器。三.方案设计概要:本程序采用ASCII字符方式传送数据.其中以查询方式或中断方式发送数据,以查询方式接收数据.查询方式发送数据:查询8250的发送保持寄存器是否为空,是就从数据缓冲区取一个数据发送到发送保持寄存器,然后数据传送到另一台的计算机的COM1接口,另一台的机器就循环查询8250的接收保持寄存器是否接收保持

4、寄存器接收数据就绪,就绪就输出一个数据,否则循环继续查询。中断方式发送数据:首先初始化8250接口,设置中断允许寄存器、调制解调器的控制寄存器、以及8259中断寄存器的屏蔽寄存器IMR(即开放IR4),然后写中断向量表,编写中断服务子程序。当8250的发送保持寄存器为空时就产生一个中断请求,cpu处理这个请求就从数据缓冲区取一个数据发送到发送保持寄存器,然后发送保持寄存器发送这个数据到与之相连的另一台机器的接收寄存器里,当接收寄存器的数据被读出时,发送寄存器就变为空,继续产生中断的请求,如此循环

5、直到数据缓存区为空。注意,当一次中断完成时,要记得发送结束命令字给8259中断寄存器,否则,下一次的中断不会被响应。四.实现与测试(1)实现..MODELSMALL.386.STACK.DATANEQU18DUP('')MESSAGEDB'SerialcommunicationviaCOM1,baudrateis9800,noparity,1stopbit,characterlengthis8bit.',0AH,0DH,0AH,0DHDB'PressESCtoExit.',0AH,0DH,0AH

6、,0DH,0AH,0DHDBN,'MENU',0DH,0AHDBN,'********************************************',0DH,0AHDBN,'**',0DH,0AHDBN,'*1.Throughinterruptedtransmission.*',0DH,0AHDBN,'*2.Throughquerytransmission.*',0DH,0AHDBN,'*3.RECEIVE*',0DH,0AHDBN,'**',0DH,0AHDBN,'********

7、*************************************',0DH,0AHDB'Chosetheway:','$'MESSAGE2DB'PleasepressanykeytobackMENU','$'RECEDB'Receive:',0AH,0DH,'$'SENDDB'Send:',0AH,0DH,'$'SENDDATADB200DUP(?)FLAGDB0;---------------------------------.CODEMAINPROCFARSTART:;INITT

8、IALINGCOM1MOVDX,3FBHMOVAL,80HOUTDX,AL;使通信线路寄存器最高位置1MOVAL,0MOVDX,3F9HOUTDX,AL;设置波特率高位MOVAL,0CHMOVDX,3F8HOUTDX,AL;设置波特率低位MOVDX,3FBHMOVAL,03HOUTDX,AL;设置数据格式为8位/字符,1个停止位,无奇偶效验MOVDX,3FCHMOVAL,08HOUTDX,AL;设置调制解调器控制寄存器,RTS,DTR无效;CHOSETHEWAYDIS:MOVAX,@DATAMO

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。