串行通信微机原理课程设计Word格式.docx
- 文档编号:16649858
- 上传时间:2022-11-25
- 格式:DOCX
- 页数:11
- 大小:211.11KB
串行通信微机原理课程设计Word格式.docx
《串行通信微机原理课程设计Word格式.docx》由会员分享,可在线阅读,更多相关《串行通信微机原理课程设计Word格式.docx(11页珍藏版)》请在冰豆网上搜索。
2013年1月3日
一、课程设计的目的与要求。
1.1设计的目的。
(1)掌握串行通信的一般原理。
(2)掌握双机通迅的方法。
(3)掌握8250A的的工作原理。
(4)能够应用8250A实现双机串行通信。
(5)巩固所学知识,培养分析和解决问题的能力。
1.2设计的要求。
设计双机文件互传程序,即每台计算机均有文件发送和接受功能。
要求采用尽可能高的波特率,操作方式尽可能灵活、实用。
1.3设计的意义。
在微机原理及应用课程中学过了微机各个基本组成模块的原理和编程技术,在实验室现有的设备情况下,设计一个具有一定功能的应用系统,达到对知识的深入理解和融会贯通,培养动手能力、实践能力以及团队合作的精神。
二、设计正文。
2.1设计的基本原理。
2.1.1串行异步通信规程。
串行异步通信规程是把一个字符看作一个信息单元,每一个字符中的各位以固定的时间传送。
因此,这种传送方式在同一字符内部是同步的,而字符间是异步的。
在异步通信中,收发双方取得同步的方法是:
采用在字符格式中设置起始位和停止位的办法。
在一个有效字符正式发送之前,先发送一个起始位,而在字符结束时发送一至两个停止位。
当接收到起始位时,便能知道接着是有效的字符位,于是开始接收字符,检测到停止位时,就将接收到的有效字符装载到接收缓冲器中。
2.1.28250部分引脚。
(1)D0-D7:
双向数据线,用于传送和接收数据。
(2)A2-A0:
地址信号,实现片内各寄存器的选择。
(3)
,片选信号。
(4)
:
数据设备准备就绪信号,低电平表示
数据设备可与8250进行数据传输。
(5)
请求发送信号,低电平时通知数据设备,8250已准
备好发送数据。
(6)
清除发送信号,每当Modem状态寄存器的CTS位改
变状态时,若允许Modem状态中断,就会产生一次中断。
(7)SOUT和SIN:
串行数据输出、输入端。
(8)XTAL:
外部时钟输入端。
(9)INTRPT:
中断请求输出,高电平有效,此时中断允许寄存器IER相应位必须为1。
(10)
用户指定的输出信号,分别受控于Modem控制寄存器的D2和D3位。
如果编程将D2和D3设定为1,则均为有效的低电平。
8250复位后输出高电平。
2.1.2地址译码电路
2.1.38250内部寄存器编址
在接收数据时:
(1)接收移位寄存器将SIN引脚的串行数据进行移位输入。
(2)检测到SIN输入信号变低后,连续测试8个接收时钟周期。
(3)如果采样到的都是低电平,则确认为起始位,否则为干扰信号。
(4)找到起始位后,每隔16个接收时钟脉冲对SIN输入的数据进行一次采样,直到完整的字符帧结束。
(5)接收移位寄存器将接收到的数据转化为并行数据送入到接收数据缓冲器RBR。
在发送数据时:
(1)CPU送来的并行数据存放在发送保持寄存器中。
(2)数据经过发送移位寄存器进行并串转换。
(3)按规定格式加上起始位、奇偶校验位和停止位,构成完整的串行数据帧。
(4)数据由SOUT发出。
2.1.48250A内部结构。
2.2设计方案。
2.2.1总体方案。
(见附录)
2.2.2硬件原理图。
2.2.38250A初始化流程。
2.3程序设计。
2.3.1发送程序(查询方式):
DATASEGMENT
MSG1DB13,10,'
Pleaseinputachar:
'
13,10,13,10,'
$'
MSG2DB'
transmissionstart:
'
;
回车换行
DATAENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA
START:
MOVAX,DATA
MOVDS,AX
MOVDX,3FBH;
通信线路控制寄存器地址
MOVAL,80H;
允许访问波特率因子寄存器
OUTDX,AL
MOVDX,3F8H;
置波特率因子寄存器
MOVAL,12H;
波特率因子低字节
MOVDX,3F9H
MOVAL,0;
波特率因子高字节
OUTDX,AL;
波特率设置为最大值9600
;
----------------------------------------------------------------------------
置线路控制寄存器
MOVAL,0BH;
数据位8位、停止位1位、奇校验
OUTDX,AL
MOVDX,3FCH;
置MODEM控制寄存器
MOVAL,03H;
禁止中断,发送接收双向就绪
MOVDX,3F9H;
置中断允许寄存器
屏蔽所有中断
MOVDX,OFFSETMSG2;
显示发送提示信息
MOVAH,9
INT21H;
显示以$结尾的字符串
-----------------------------------------------------------------------------
MOVDX,OFFSETMSG1;
LOP:
MOVAH,1;
读取按键字符,存入AL中,并显示
INT21H
发送数据保持寄存器地址,准备发送该字符
CMPAL,0DH;
判断按下字符是否是回车?
JZOVER;
是,则结束
JMPLOP;
不是,继续循环
OVER:
MOVAH,4CH;
返回DOS
CODEENDS
ENDSTART
2.3.2接收程序(查询方式):
RBUFDB30DUP(0)
DISPDB'
RECEIVESTART:
ERRORDB'
RECEIVEERROR!
ASSUMECS:
LEASI,RBUF;
置接收缓冲区地址指针
MOVDX,3FBH;
通信线路控制寄存器地址,置DLAB=1
MOVAL,80H
MOVDX,3F8H;
MOVAL,12H;
MOVAL,0;
OUTDX,AL;
置通信线路控制寄存器
MOVAL,0AH;
数据位8位、停止位1位、奇校验
MOVDX,3FCH;
MOVAL,03;
MOVDX,3F9H;
OUTDX,AL
MOVDX,OFFSETDISP
INT21H;
显示接收提示信息
MOVDX,3F8H
INAL,DX;
读接收缓冲器内容,不处理
MOVDX,3FDH;
读线路状态寄存器
INAL,DX
TESTAL,1EH;
测试。
该寄存器除最低位只要有一位是1就算出现错误
JNZER;
有错误,转错误显示
TESTAL,01H;
无错误,则测试最低位接收数据准备好?
JZLOP;
未准备好则循环测试
准备好则接收字符
ANDAL,7FH
CMPAL,13H;
判断接收结束吗?
JZOVER;
结束转OVER
MOV[SI],AL;
未结束则存入缓冲区
INCSI
MOVDL,AL;
显示该字符
MOVAH,02
JMPLOP
ER:
MOVDX,2F8H;
清标志位,接收数据缓冲器的内容一旦读过后,8250有错误位自动复位
MOVDX,OFFSETERROR;
显示错误信息
MOVDL,AL
MOVAH,2
MOVAH,4CH;
三、课程设计的总结和结论。
3.1设计结论。
双机串行通信,在一台PC机键入字串符,从8250A的发送端发送给另一台PC机,另一台PC机的8250A的接收端接收,然后在屏幕上显示出来。
3.2设计总结。
通过这一周时间的微机课程设计,我体会很多,由于之前从未接触过课程设计,这也是我进入大学的第一个课程设计,感到新鲜的同时不乏焦虑。
现在终于将它完成了,感到受益颇多。
首先,这是一份考验我们自觉性、动手能力与协作意识的任务。
在长达一个周的时间里,我们不断发现自身不足也不断自我完善。
其次,未知并不可怕,可怕的是因未知而止步。
通过本次课程设计,我发现我在课堂上所学的知识是非常有限的,这次的课程设计就是一个很好的考验。
实践中我遇到很多问题,有些函数的运用我们还没掌握牢固,甚至初次接触,一些简单的循环语句都可能出错,所以我深刻感受到只有实践,才能知道自己真正掌握了多少,也感悟到了理论结合实际的重要性。
最后,团结就是力量一点都不假,三个臭皮匠顶一个诸葛亮。
在团组合作时我们更便于互相取长补短,相互讨论,效果很好。
四、参考文献。
【1】李继灿,《新编16/32位微型计算机原理及应用(第四版)》,清华大学出版社,2008年
【2】陈庆军,《微机接口——双机通迅》,中南大学,2011-7-9
【3】《可编程接口芯片8250》,
【4】《8250串行接口实验》,
【5】周佩玲,彭虎,傅忠谦编.微机原理与接口技术学习指导(基于16位机).北京:
电子工业出版社,2005.4
附录:
总体方案
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 串行 通信 微机 原理 课程设计