ImageVerifierCode 换一换
格式:DOCX , 页数:17 ,大小:26.68KB ,
资源ID:23794078      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/23794078.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(微机原理毕业课程设计报告双机通讯.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

微机原理毕业课程设计报告双机通讯.docx

1、微机原理毕业课程设计报告双机通讯(此文档为word格式,下载后您可任意编辑修改!)目录一、设计的目的和意义 3二、设计环境 3三、设计内容和要求 3四、设计的原理 3(一)8251A的基本性能 3(二)8251A的内部结构 4(三)8251A的引脚功能 6(四)8251A的编程 8五、设计方案 10六、源文件代码分析 11中断接收源程序 11PC机双机串行通信源程序 15七、调试过程 18八、运行结果 18九、心得体会 19十、参考文献 20一、设计的目的和意义设计的目的:(1) 了解串行通信的一般原理和8251A的工作原理。 (2) 掌握双机通信的原理和方法。 (3) 掌握8251A异步串行

2、时的编程应用。 (4) 了解8253的初始化。(5) 巩固和加深在微机原理课程中所学的理论知识。(6) 学会查阅相关手册与资料,培养独立分析与解决问题能力。(7) 为以后的毕业搭建一个微机系统应用平台。设计的意义:在信息飞速发展的时代,计算机的应用越来越广泛。而微机原理是机械工业控制设备的理论基础,学好了就能在找到一份好一点的工作。理论课程学习是让学生学习基本理论知识,对课程内容和原理有比较深刻的理解,只要从理论上理解,不用考虑实际的可行性。通过本次课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程,不仅需要在理

3、论上能实现而且还要考虑实际的可行性,不能纸上谈兵。二、设计环境PC机两台,串行通信接口8251A两片,串行发送器MC1488和串行接收器MC1489各两片等。三、设计内容和要求设计的内容:在异步方式下,通过串行接口实现两台计算计之间通信。设计的要求:在一台PC机键入字符,从8251A的发送端发送给另一台PC机,另一台PC机的 8251A的接收端接收,然后在屏幕上显示出来。四、设计的原理(一)8251A的基本性能8251A是可编程的串行通信接口芯片,基本性能:1两种工作方式:同步方式,异步方式。同步方式下,波特率为064K,异步方式下,波特率为019.2K。2同步方式下的格式每个字符可以用5、6

4、、7或8位来表示,并且内部能自动检测同步字符,从而实现同步。除此之外,8251A也允许同步方式下增加奇偶校验位进行校验。3异步方式下的格式每个字符也可以用5、6、7或8位来表示,时钟频率为传输波特率的1、16或64倍,用1位作为奇偶校验。1个启动位。并能根据编程为每个数据增加1个、15个或2个停止位。可以检查假启动位,自动检测和处理终止字符。4全双工的工作方式其内部提供具有双缓冲器的发送器和接收器。5提供出错检测具有奇偶、溢出和帧错误三种校验电路。(二)8251A的内部结构1、发送器发送器由发送缓冲器和发送控制电路两部分组成。采用异步方式,则由发送控制电路在其首尾加上起始位和停止位,然后从起始

5、位开始,经移位寄存器从数据输出线TXD逐位串行输出。8251A内部结构图采用同步方式,则在发送数据之前,发送器将自动送出1个或2个同步字符,然后才逐位串行输出数据。如果CPU与8251A之间采用中断方式交换信息,那么TXRDY可作为向CPU发出的中断请求信号。当发送器中的8位数据串行发送完毕时,由发送控制电路向CPU发出TXE有效信号,表示发送器中移位寄存器已空。2接收器接收器由接收缓冲器和接收控制电路两部分组成。接收移位寄存器从RXD引腿上接收串行数据转换成并行数据后存入接收缓冲器。异步方式:在RXD线上检测低电平,将检测到的低电平作为起始位, 8251A开始进行采样,完成字符装配,并进行奇

6、偶校验和去掉停止位,变成了并行数据后,送到数据输入寄存器,同时发出RXRDY信号送CPU,表示已经收到一个可用的数据。同步方式:首先搜索同步字符。8251A监测RXD线,每当RXD线上出现一个数据位时,接收下来并送入移位寄存器移位,与同步字符寄存器的内容进行比较,如果两者不相等,则接收下一位数据,并且重复上述比较过程。当两个寄存器的内容比较相等时,8251A的SYNDET升为高电平,表示同步字符已经找到,同步已经实现。采用双同步方式,就要在测得输入移位寄存器的内容与第一个同步字符寄存器的内容相同后,再继续检测此后输入移位寄存器的内容是否与第二个同步字符寄存器的内容相同。如果相同,则认为同步已经

7、实现。在外同步情况下,同步输入端SYNDET加一个高电位来实现同步的。实现同步之后,接收器和发送器间就开始进行数据的同步传输。这时,接收器利用时钟信号对RXD线进行采样,并把收到的数据位送到移位寄存器中。在RXRDY引脚上发出一个信号,表示收到了一个字符。3数据总线缓冲器数据总线缓冲器是CPU与8251A之间的数据接口。包含3个8位的缓冲寄存器:两个寄存器分别用来存放CPU向8251A读取的数据或状态信息。一个寄存器用来存放CPU向8251A写入的数据或控制。4读写控制电路读写控制电路用来配合数据总线缓冲器的工作。功能如下:(1) 接收写信号,并将来自数据总线的数据和控制字写入8251A;(2

8、) 接收读信号,并将数据或状态字从8251A送往数据总线; (3) 接收控制数据信号C,高电平时为控制字或状态字;低电平时为数据。 (4) 接收时钟信号CLK完成8251A的内部定时; (5) 接收复位信号RESET,使8251A处于空闲状态。5调制解调控制电路调制解调控制电路用来简化8251A和调制解调器的连接。(三)8251A的引脚功能1、8251A和CPU之间的连接信号8251A和CPU之间的连接信号可以分为四类: a)片选信号 :片选信号,它由CPU的地址信号通过译码后得到。b)数据信号D0-D7:8位,三态,双向数据线,与系统的数据总线相连。传输CPU对8251的编程命令字和8251

9、A送往CPU的状态信息及数据。c)读写控制信号:读信号,低电平时, CPU当前正在从8251A读取数据或者状态信息。:写信号,低电乎时, CPU当前正在往8251A写入数据或者控制信息。 C:控制数据信号,用来区分当前读写的是数据还是控制信息或状态信息。该信号也可看作是8251A数据口控制口的选择信号。由此可知,、C这3个信号的组合,决定了8251A的具体操作,它们的关系如表7-3所示:注:数据输入端口和数据输出端口合用同一个偶地址,而状态端口和控制端口合用同一个奇地址。c)收发联络信号 TXRDY:发送器准备好信号,用来通知CPU,8251A已准备好发送一个字符。 TXE:发送器空信号,TX

10、E为高电平时有效,用来表示此时8251A发送器中并行到串行转换器空,说明一个发送动作已完成。 RXRDY:接收器准备好信号,用来表示当前8251A已经从外部设备或调制解调器接收到一个字符,等待CPU来取走。因此,在中断方式时,RXRDY可用来作为中断请求信号;在查询方式时,RXRDY可用来作为查询信号。 SYNDET:同步检测信号,只用于同步方式。28251A与外部设备之间的连接信号8251A与外部设备之间的连接信号分为两类:a) 收发联络信号 :数据终端准备好信号,通知外部设备,CPU当前已经准备就绪。 :数据设备准备好信号,表示当前外设已经准备好。:请求发送信号,表示CPU已经准备好发送。

11、 :允许发送信号,是对的响应,由外设送往8251A。实际使用时,这4个信号中通常只有必须为低电平,其它3个信号可以悬空。b) 数据信号 TXD:发送器数据输出信号。当CPU送往8251A的并行数据被转变为串行数据后,通过TXD送往外设。 RXD:接收器数据输入信号。用来接收外设送来的串行数据,数据进入8251A后被转变为并行方式。3. 时钟、电源和地8251A除了与CPU及外设的连接信号外,还有电源端、地端和3个时钟端。 CLK:时钟输入,用来产生8251A器件的内部时序。同步方式下,大于接收数据或发送数据的波特率的30倍,异步方式下,则要大于数据波特率的4.5倍。 TXD:发送器时钟输入,用

12、来控制发送字符的速度。同步方式下,TXC的频率等于字符传输的波特率,异步方式下,TXC的频率可以为字符传输波特率的1倍、16倍或者64倍。 RXD:接收器时钟输入,用来控制接收字符的速度,和TXC一样。在实际使用时,RXC和TXC往往连在一起,由同一个外部时钟来提供,CLK则由另一个频率较高的外部时钟来提供。 VCC:电源输入 GND:地(四)8251A的编程编程的内容包括两大方面:一是由CPU发出的控制字,即方式选择控制字和操作命令控制字;二是由8251A向CPU送出的状态字。1方式选择控制字(模式字)方式选择控制字的格式如图所示。2操作命令控制字(控制字)操作命令控制字的格式如下:3、状态

13、字状态字的格式如下: 48251A的初始化 a)芯片复位以后,第一次用奇地址端口写入的值作为模式字进入模式寄存器。b)如果模式字中规定了8251A工作在同步模式,c)由CPU用奇地址端口写入的值将作为控制字送到控制寄存器,而用偶地址端口写入的值将作为数据送到数据输出缓冲寄存器。五、设计方案硬件原理图如图5-1所示图5-1 硬件原理图8086最小系统原理图(附录一)双机通信原理图(附录二)程序流程图如图5-2所示图5-2 收到中断服务程序流程图主程序流程图如图5-3所示图5-3 主程序流程图六、源文件代码分析中断接收源程序D51 EQU 208H ;8251A数据端口地址C51 EQU 209H

14、 ;8251A控制端口地址T2 EQU 202H ;8253定时器2端口地址TC EQU 203H ;8253控制端口地址BPS EQU 1200 ;波特率1200FAC EQU 16 ;波特率因子16DATA SEGMENTMESS DB LOAD A DATA,0AH,0DH,$DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATASTART:CALL INIT53 CALL INIT51 MOV AX,DATA ;显示提示信息 MOV DS,AX LEA DX,MESS MOV AH,9 INT 21H MOV DX,SEG INTER ;设置0AH类型

15、中断向量 MOV DS,DX MOV DX,OFFSET INTER MOV AH,25H MOV AL,0AH INT 21H CLI IN AL,21H ;取消IRQ2的屏蔽位 AND AL,0FBH OUT 21H,AL STIWAIT1:JMP WAIT1 ;等中断INTER:MOV DX,D51 ;中断处理 IN AL,DX ;读入接受的字符 PUSH AX MOV DL,AL MOV AH,2 ;在屏幕上显示接受的字符 INT 21H MOV AL,20H OUT 20H,AL POP AX CMP AL,! ;是结束符吗 JNZ NEXT ;不是,转NEXT IN AL,21H

16、;是结束符,则屏蔽IRQ2 OR AL,4 OUT 21H,AL POP AX POP AX POP AX STI MOV AX,4C00H ;返回DOS INT 21HNEXT: IRET ;中断返回INIT51 PROC NEAR ;8251A初始化 MOV DX,C51 XOR AX,AX MOV CX,3L1: CALL COUT LOOP L1 MOV AL,40H CALL COUT MOV AL,4EH ;设置模式字,异步模式,8个数据位,一个停止位,波特率因子16 CALL COUT MOV AL,24H ;设置控制字,启动接收器 CALL COUT RETINIT51 END

17、PCOUT PROC NEAR OUT DX,AL PUSH CX MOV CX,2GG: LOOP GG POP CX RETCOUT ENDPINTI53 PROC NEAR ;初始化8253 MOV DX,0 MOV AX,250 MOV BX,1000 MUL BX MOV BX,BPS DIV BX ;计算定时器2计数初值 MOV BX,FAC DIV BX MOV BX,AX MOV DX,TC MOV AL,96H ;设置8253控制字,工作在方式3,二进制计数 OUT DX,AL MOV DX,T2 ;写定时器2的计数初值 MOV AX,BX OUT DX,AL RETINIT

18、53 ENDPCODE ENDS END STARTPC机双机串行通信源程序D51 EQU 208H ;8251A数据端口地址C51 EQU 209H ;8251A控制端口地址T2 EQU 202H ;8253定时器2端口地址TC EQU 203H ;8253控制端口地址BSP EQU 1200 ;波特率1200FAC EQU 16 ;波特率因子 16DATA SEGMENT MESS DB SEND & LOAD A DATA,0AH,0DH,$DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATASTART: CALL INIT53 CALL INIT51

19、 MOV AX,DATA ;显示提示信息 MOV DS,AX LEA DX,MESS MOV AH,9 INT 21HM0: MOV AH,1 ;接收键入字符 INT 21H MOV BL,AL MOV DX,C51M1: IN AL,DX ;测试状态位TXRDY是否为1 TEST AL,1 JZ M1 ;不为1,继续测试 MOV DX,D51 ;为1,则从8251A数据口输出数据 MOV AL,BL OUT DX,AL CLI IN AL,21H ;取消IRQ2的屏蔽位 AND AL,0FBH OUT 21H,AL STIWAI: JMP WAI ;等中断 MOV AX,SI CMP DL,

20、! ;判断是否是结束符 JNZ M0 ;不是,转M0 IN AL,21H ;是结束符,则屏蔽IRQ2 OR AL,4 OUT 21H,AL MOV AX,4C00H INT 21H INIT51 PROC NEAR ;8251A初始化 MOV DX,C51 XOR AX,AX MOV CX,3L1: CALL COUT LOOP L1 MOV AL,40H CALL COUT MOV AL,4EH ;设置模式字,异步方式,8个数据位,一个停止位,波特率因子16 CALL COUT MOV AL,27H ;设置控制字,启动发送器和接收器 CALL COUT RETINIT51 ENDPCOUT

21、PROC NEAR OUT DX,AL PUSH CX MOV CX,2GG: LOOP GG POP CX RETCOUT ENDPINIT53 PROC NEAR ;初始化8253 MOV DX,0 MOV AX,250 MOV BX,1000 MUL BX MOV BX,BPS DIV BX ;计算定时器2计数初值 MOV BX,FAC DIV BX MOV BX,AX MOV DX,TC MOV AL,0B6H ;设置8253控制字,工作在方式3,二进制计数 OUT DX,AL MOV DX,T2 ;写定时器2的计数初值 MOV AX,BX OUT DX,AL RET INIT53 E

22、NDPCODE ENDS END START 七、调试过程1.对设计原理图进行电气检查。主要针对电路连接中的电气连接进行检查,并生成对应电路的网表。特别是对电路节点的连接检查。 2.对设计的程序进行语法检查。检查程序中存在的语法错误。编译连接并下载到芯片中。 3.对设计进行综合调试。对下载到芯片中的程序进行功能检查。直到完成设计要求的功能。八、运行结果双机串行通信,在一台PC机键入字符,从8251A的发送端发送给另一台PC机,另一台PC机的 8251A的接收端接收,然后在屏幕上显示出来。九、心得体会学生学习完理论后就要进行课程设计,因为理论课程学习是让学生学习基本理论知识,对课程内容和原理有比

23、较深刻的理解,只要从理论上理解,不用考虑实际的可行性,而课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程,不仅需要在理论上能实现而且还要考虑实际的可行性,不能纸上谈兵。随着科学技术发展的日新日异,微型计算机已经成为当今计算机应用中空前活跃的领域, 在生活中可以说得是无处不在。因此作为二十一世纪的大学来说掌握微型计算机的开发技术是十分重要的。尤其是在现在这个金融危机的时刻,找工作越来越难,只有加强自身的能力才能有一席立足之地。回顾起此次微机原理课程设计,至今我仍感慨颇多,的确,从选题到定稿,从理论到实践,在整整一

24、星期的日子里,可以说得是苦多于甜,但是可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,比如说8251A芯片的使用,PRETOL软件的应用技巧,对汇编语言掌握得不好通过这次课程设计之后,一定把以前所学过的知识重新温故。十、参考文献1 杨立.微机计算机原理与汇编语言程序设计.第1版.北京:中国水利水电出版社,20032 周明德.微型计算机系统原理与应用.第5版.清华大学出版社,20083 仇玉章.32位微型计算机原理与接口技术.清华大学出版社,2003附录一附录二

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1