实验三串行通信_第1页
实验三串行通信_第2页
实验三串行通信_第3页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Ueijing iHsfimfe 吋本科实验报告实验名称:串行通信课程名称:计算机原理与应用实验时间:2014/5/27任课教师:马永锋实验地点:10-102实验教师:京霞实验类型:原理验证综合设计自主创新学生:晨学号/班级:1120110334/05111103组号:学院:信息与电子学院同组搭档:专业:信息工程成绩:信息与电子学院9CM0& C* iMFQNAUTIW UIO ILICTKWIC4一、实验目的1了解串行通信的基本原理。2掌握串行接口芯片 8251的工作原理和编程方法。3掌握串行接口芯片 8250的工作原理和编程方法。4掌握对串行接口芯片的初始化编程;学会串行半双工和全

2、双工的编程技巧。、实验容及步骤1. 利用PC机系统的串行通信接口实现与实验系统的双机通信,PC机的串行通信接口的端口地址为3F8H,并画出三线连接,七线连接通信接口的连线图,接口为标准RS 232(25芯)插座。2. 按图1连接好电路,其中8254计数器用于产生8251的发送和接收时钟,TXD和RXD 连在九针接口处。CLK0/8254接1M时钟CLK/8251接1M时钟(系统已经连接,不用学生连接)GATE0/8254接+5VOUTO /8254接TX/RXCLK/8251CS/8254接Y0/IO地址CS/8251接Y7/I0地址RXD/8251接TXD/九针接口TXD/8251接RXD/

3、九针接口3连线:OU TPG fl TCOC U K 0 ;UScs汕 2BinSim2ea287kDsK 0 12 3 47 -SDR ZE L DDDDDPDD -cpucp c串行通讯电路4. 8254计数器的计数初值=时钟频率/ (波特率X波特率因子),这里的时钟频率接1MHz,波特率若选1200,波特因子若选16,则计数器初值为 52。5. 设串行通信的波特率为1200、偶校验、数据位为 7位、1位停止位,利用查询方式实现单工通信。要求发送方将任一文件传送到收方,收方收到后将源程序写入磁盘。分别编写收方和发 方的通信程序。6. 上述参数不变,用中断方式实现半双工通信,编写程序。7.

4、PC机寄存器的端口地址如下表所示:PC机寄存眾的端LJ址牙1心瑞口IN'OUI'3F8*OUT发燧保持奇存器3F8*INCL7T淮倚車因子(LSBJ3FV*OUT波峙率因子(MSB)m册OCT中跚允许诗岸體3FBCUT线玮控冊寄存器3FAIN中斷标志奇17胳3 FCOIJTMODFM控删寄而醤3FDIN3FEINMODEM线路控制寄存器第七位DLAB=Om *.单氓HZE?(fi渡特車 单垃HZMSBLSBMSBLSB5009DOlego00-IG75Ob002000003A110(M1724000D3Q503!WJWOO0020150鸽M001&01TOO0010oO

5、O00CD9oOO00ocnw00dd三、编程提示1、可以首先采用查询方式, 实现单工PC机系统与实验系统的双机通信,之后再实现双工方式通信;2、再尝试实现利用中断方式,实现单工PC机系统与实验系统的双机通信,之后再实现双工方式通信;3、要求能实现字符和文件的传输;4、程序流程图如图所示:-_a a = 14rJ = J亠u盘醫撼吃宇£二AH 士 : 1* K蜃1逋过easutiHs 口a宇擦一 *|»电主 l.r ?%找盍宇%述上6卜I -二四、实验程序1. 发送端程序:;TRANSLATE FILESstack segment para stack'stack&

6、#39; db 256 dup(0)stack endsdatasegmentname0 db 64hdb 64h dup(?)buff dw 64h dup(?)data endscode segment para public 'code'startproc assume push mov push mov mov mov mov outmov mov out inc mov outmovmov位数据outfarcs: code,ds:data,es:datadsax,0axax,datads,axdx,3fbh;3fb ctrl registeral,80h;dx,al;

7、给线路控制寄存器 DLAB 位置 1dx,3f8hal,60h;写除数因子低位dx,aldx;写除数因子高位al,00dx,al;写除数因子寄存器 ,1200bauddx,3fbhal,00011011bdx,al;0 寻址识别位, 0禁止间断, * ,11 偶校验, 1位停止位, 8incdx; 设置调制解调器控制寄存器 MCRmoval,00001111b;正常工作状态,引脚低电平outdx,almov dx,3fdh;线路状态寄存器in al,dxtest al,20h;判断是否显示好,发出数据jz fatr:mov ah,01hint 21hmov dx,3f8hout dx,alpu

8、sh bxint 10hpop bxpush cxmov cx,0fhgg:nop nopnoploop gg;循环延迟pop cxjmp trstartendpcode endsend start2. 接收端程序:;TRANSLATE FILES stack segment para stack'stack' db 256 dup(0)stack endsdatasegment name0 db 64hdb 64h dup(?)buff dw 64h dup(?) dataends code segment para public 'code'startpro

9、c farassume cs: code,ds:data,es:datapushdsmovax,0pushaxmovax,datamovds,axmovdx,3fbh;3fb ctrl registermoval,80houtdx,al;给线路控制寄存器 DLAB 位置 1movdx,3f8hmoval,60h;写除数因子低位outdx,alincdx;写除数因子高位moval,00outdx,al;写除数因子寄存器 ,1200baudmovdx,3fbhmov位数据al,00011011b;0 寻址识别位, 0禁止间断, * ,11 偶校验, 1位停止位, 8outdx,almoval,00001111b;正常工作状态,引脚低电平outdx,alshoufa:movdx,3fdh;读高位寄存器,判断是否接收好inal,dxtestal,01hjzshoufarecv:movdx,3f8h ;读数据inal,dxpush bxmovbx,0mov ah,14 ;显示int 10hpop bxmov cx,0fhgg:nopnop noploop gg;循环延迟pop cxjmp shoufastart endpcode endsend start五、实验结果将两台电脑通过九针接口相连, 一端运行收端代码一端运行发端代码, 发端发送的字符

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论