软件仿真多机串行通信.docx

上传人:罗晋 文档编号:11698976 上传时间:2021-08-31 格式:DOCX 页数:24 大小:251.73KB
返回 下载 相关 举报
软件仿真多机串行通信.docx_第1页
第1页 / 共24页
软件仿真多机串行通信.docx_第2页
第2页 / 共24页
软件仿真多机串行通信.docx_第3页
第3页 / 共24页
软件仿真多机串行通信.docx_第4页
第4页 / 共24页
软件仿真多机串行通信.docx_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《软件仿真多机串行通信.docx》由会员分享,可在线阅读,更多相关《软件仿真多机串行通信.docx(24页珍藏版)》请在三一文库上搜索。

1、软件仿真多机串行通信信息科学与技术学院微机原理与接口技术课程设计报告题目名称:软件仿真多机串行通信学生姓名:廖树婷学号:2009082205专业年级:计算机科学与技术专业指导教师:周涛老师时间:2012 年1月12日目录一、 题目要求12.1 要求:二、总体设计三、 电路图的设计及分析四、程序设计与分析22.2 可编程串行接 口芯片 8251A 简介 22.3 详细设计4五、调试过程4六、系统评价4七、心得体会4微机原理与接口技术课程设计第5页共21页一、题目要求1.1题目:软件仿真多机串行通信2.1 要求:1 . 实现多机通信(至少4个PC机);2 .实现主机与指定PC机通信3 .实现通信信

2、息的显示扩展功能:能制定一定的通信协议二、总体设计仿真电路图采用1个8086芯片、4个8251芯片、2个74HC373 1个74L138译 码器、1个8253A计数器、4个显示终端构成,通过对 8086编程,对8251的设置实 现8251的传送和接收。三、电路图的设计及分析C,工 *a+ F EPI口口口本电路中用到8086、2个74HC373 1个74L138译码器构成简单的8086系统, 用于对4个8251和8253A计数器进行控制。首先要对8251进行初始化,设置输出为 20KHz的信号,控制串口通讯的节奏。 接下来对8251的初始化,并向各个不同的8251端口发送数据。8251接收到数

3、据, 并由终端显示出接受到的数据。四、程序设计与分析4.1可编程串行接口芯片8251A简介8251A内部构造8251A和CPU之间的连接信号程序流程图置方式字(异步)*输出命令指令8251初始化4.2详细设计首先要对8253进行初始化,用计数器0,只写计算值低8位,方式3,二进制的 方式计数,时钟为1MHZ,计数时间=1us*50 =50 us 输出频率20KHz的信号,以控 制串口通讯接收、发送的速度。接下来对8251的初始化,设置方式选择控制字为1停止位,无校验,8数据位,命 令控制字为异步传输,清出错标志。将要发送的字符串用LEA命令放入内存,设置状态字为清出错,允许发送接收,从数据端口

4、中接收到发送来的字,并循环接收。直到 循环结束。发送接收按顺序进行,对 4个8251A依次发送、接收,没有设置优先级以 及中断。五、调试过程六、系统评价本实验构造简单,仅模拟了一台主机与4个8251A串行接口的通讯,4台PC 机并没法模拟出来。通讯协议制定的也相当简单,顺序执行,没有用中断。但是 完成了课程设计的基本要求。七、心得体会本次课程设计,面对的是不熟悉的 protues ISIS仿真软件,所有的元件都不会 使用,仿真8086的最小模式完全就不懂。但是通过几天的摸索和努力,在老师的 指点下,终于明白了 8086的译码器怎么使用。通过网络的帮助,查询到很多元件,微机原理与接口技术课程设计

5、在软件中也试出这些元件的用法。 前期光是找元件、 画电路图就花费了大量精力,以至于后期对串口的通讯设计就变得十分简陋。只是能够简单的发送接收。原本想着可以用到计算机网络的知识,将接收到的数据进行分析,查询出要发送的地址,并发送给制定的PC机(8251A端口)。而且还想用8259A中断控制器,对指定的 PC 机发送消息,但是在protues 软件中, 8251 不能使用,所以只能放弃了。虽然这次课程设计时间很仓促,但是在其中也掌握了仿真软件的一些小小的功能,并且了解了很多单片机相关的知识,对8086 系统的搭建也有了新的认识。八、 附:源程序CS8251R equ 08080h; 串行 1 通信

6、控制器复位地址CS8251D equ 08000h; 串行 1 通信控制器数据口地址CS8251C equ 08002h; 串行 1 通信控制器控制口地址2 通信控2 通信控2 通信控CS8251R2 equ 09080h 制器复位地址CS8251D2equ 09000h制器数据口地址CS8251C2equ 09002h制器控制口地址CS8251R3 equ 0A080h 制器复位地址CS8251D3equ 0A000h制器数据口地址CS8251C3equ 0A002h制器控制口地址CS8251R4 equ 0B080h 制器复位地址CS8251D4equ 0B000h制器数据口地址CS825

7、1C4equ 0B002h制器控制口地址3 通信控3 通信控3 通信控4 通信控4 通信控4 通信控TCONTRO EQU 0C006HTCON0 EQU 0C000HSTRNUM1 equ 8STRNUM2 equ 14STRNUM3 equ 8STRNUM4 equ 12第7页 共 21页微机原理与接口技术课程设计CODE SEGMENT ;H8253.ASMASSUME DS:DATA,CS:CODESTART:MOV AX,DATAMOV DS,AXMOV DX,TCONTRO ;8253 初始化MOV AL,16H;计数器 0 , 只写计算值低 8 位,方式 3 ,二进制计数OUT

8、DX,ALMOV DX,TCON0MOV AX,52; 时钟为 1MHZ ,计数时间 =1us*50 =50 us 输出频率 20KHZOUT DX,ALNOPNOPNOP; 8251 初始化 1mov dx, CS8251RIN AL,DXNOP mov dx, CS8251RIN AL,DXNOPmovdx, CS8251Cmoval, 01001101b; 1 停止位,无校验,8 数据位, x1out dx, almov al, 00010101b; 清出错标志 , 允许发送接收out dx, al;Start1: 发送START1:MOV CX,STRNUM1LEA DI,STR1Se

9、nd:; 串口发送 STR1movdx, CS8251Cmoval, 00010101b; 清出错 ,允许发送接收out dx, al第11页 共 21页WaitTXD:NOPNOPin al, dxtest al, 1为空jz WaitTXDmov al, DI字;mov al,3fhmov dx, CS8251Dout dx, alpush cxmov cx,8fhloop $pop cxINC DILOOP Send; 8251 初始化 2mov dx, CS8251R2发送缓冲是否发送取要发送的微机原理与接口技术课程设计IN AL,DXNOPmov dx, CS8251R2IN AL,

10、DXNOPmovdx, CS8251C2moval, 01001101b; 1 停止位 ,无校验 ,8 数据位, x1out dx, almoval, 00010101b; 清出错标志 , 允许发送接收out dx, al;Start2: 发送START2:MOV CX,STRNUM2LEA DI,STR2Send2:; 串口发送 STR2movdx, CS8251C2moval, 00010101b; 清出错 ,允许发送接收out dx, alWaitTXD2:NOPNOPin al, dxtest al, 1为空jz WaitTXD2mov al, DI 字;mov al,3fhmov d

11、x, CS8251D2out dx, alpush cxmov cx,8fhloop $pop cxINC DILOOP Send2; JMP START2; 8251 初始化 3发送缓冲是否; 取要发送的发送movdx, CS8251R3IN AL,DXNOPmov dx, CS8251R3IN AL,DXNOPmovdx, CS8251C3moval, 01001101b; 1 停止位,无校验,8 数据位, x1out dx, almov al, 00010101b; 清出错标志 , 允许发送接收out dx, al;Start3: 发送START3:MOV CX,STRNUM3LEA D

12、I,STR3Send3:; 串口发送 SRT3movdx, CS8251C3moval, 00010101b; 清出错 ,允许发送接收out dx, alWaitTXD3:NOP第15页 共 21页微机原理与接口技术课程设计NOPin al, dx test al, 1 为空jz WaitTXD3 mov al, DI 字;mov al,3fhmov dx, CS8251D3 out dx, al push cx mov cx,8fh loop $ pop cx INC DILOOP Send3; 8251 初始化 4mov dx, CS8251R4 IN AL,DXNOP发送缓冲是否; 取要

13、发送的发送mov dx, CS8251R4IN AL,DXNOPmovdx, CS8251C4moval, 01001101b; 1 停止位 ,无校验 ,8 数据位, x1out dx, almoval, 00010101b; 清出错标志 , 允许发送接收out dx, al;Start4: 发送START4:MOV CX,STRNUM4LEA DI,STR4Send4:; 串口发送 SRT4movdx, CS8251C4moval, 00010101b; 清出错 ,允许发送接收out dx, alWaitTXD4:NOPinNOPal, dxtest al, 1; 发送缓冲是否为空jz WaitTXD4mov al, DI; 取要发送的字;mov al,3fhmov dx, CS8251D4out dx, al; 发送push cxmov cx,8fhloop $pop cxINC DILOOP Send4;JMP STARTCODE ENDSDATASEGMENTSTR1 db 1 helloSTR2 db 2 liaoshutingSTR3 db 3 nihaoSTR4 db 4 xuchengheDATA ENDSEND START第19页 共 21页

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1