欢迎来到天天文库
浏览记录
ID:26012318
大小:1.01 MB
页数:30页
时间:2018-11-24
《微机接口课程设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、微机接口课程设计实验报告微机接口课程设计之双机间的串行通信第29页微机接口课程设计实验报告一、课程设计目的:通过本次课程设计实践,熟悉和掌握微机系统的软件、硬件设计方法、设计步骤,提高综合应用所学知识及动手和分析问题、解决问题的能力;同时还应达到以下目的:1.了解串行通信的一般工作原理和工作过程;2.熟悉8259A中断控制器的工作原理和应用编程;3.熟悉RS—232C串行接口标准及和TTL电路的连接方法;4.熟悉8251A芯片的工作原理,掌握用8251A进行异步串行通信时的编程方法;5.熟悉8253A计数器/定时器的工作方式及应用编程。二、课程设计任务:
2、设有两台PC机——甲机和乙机,利用两台试验箱上的8251A芯片、TTL和RS—232C电平转换芯片(MC1488和MC1489)、8254A芯片等,实现甲乙两机之间的全双工近距离异步串行通信;具体要求如下:1.甲机和乙机通过各自的键盘输入控制键(ESC)和要发送的字符,检查是否按下ESC键,若按下,则退出程序,返回DOS;否则将输入的字符发送到对方,每输入一个字符发送一次;同时双方又可接收对方发来的字符。2.发送的字符和接收的字符均在甲机和乙机各自的显示器上显示;双方的发送均采用查询方式,接收均采用中断方式。3.异步串行通信的字符数据格式为起止式:1位停
3、止位,8位数据位,无校验,波特率因子为16;传输速率,即波特率自定。提示:1.由于是近距离通信,故双机接口间可采用零MODEM方式的简单连接。2.由8254A产生方波时钟信号作为8251A的发送和接收时钟,8254A计数通道的CLK输入可采用1MHZ的方波信号。3.中断采用PC机内部可屏蔽中断控制器(8259A)的IRQ7。8251A的端口地址:数据口—210H,命令/状态口—211H;8254A的端口地址:计数器0—230H,计数器1—231H,计数器2—232H,控制口—233H;8259A的端口地址:20H和21H。三、所用设备:IBM-PC机两台
4、(串行通信接口8251A两片,串行发送器MC1488和串行接收器MC1489各两片,定时器/计数器8253,终端控制器8259等),串口线一根串行直连电缆用于两台台电脑通过串行口直接相连,电缆两端的插头都是9针的母插头:第29页微机接口课程设计实验报告四、硬件设计:1.设计思想:计算机传输数据有并行和串行两种模式。在并行数据传输方式中,使用8条或更多的导线来传送数据,虽然并行传送方式的速度很快,但由于信号的衰减或失真等原因,并行传输的距离不能太长,在串行通信方式中,通信接口每次由CPU得到8位的数据,然后串行的通过一条线路,每次发送一位将该数据放送出去。
5、串行通信采用两种方式:同步方式和异步方式。同步传输数据时,一次传送一个字节,而异步传输数据是一次传送一个数据块。串口是计算机上一种非常通用设备串行通信的协议。大多数计算机包含两个基于RS232的串口。串口按位(bit)发送和接收字节。尽管比按字节(byte)的并行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。典型地,串口用于ASCII码字符的传输。通信使用3根线完成:(1)地线,(2)发送,(3)接收。由于串口通信是异步的,端口能够在一根线上发送数据同时在另一根线上接收数据。其他线用于握手,但是不是必须的。串口通信最重要的参数是波特率
6、、数据位、停止位和奇偶校验。对于两个进行通行的端口,这些参数必须匹配:RS-232(ANSI/EIA-232标准)是IBM-PC及其兼容机上的串行连接标准。可用于许多用途,比如连接鼠标、打印机或者Modem,同时也可以接工业仪器仪表。用于驱动和连线的改进,RS-232只限于PC串口和设备间点对点的通信。IBMPC及其兼容机提供了一种有较强的硬件依赖性,但却比较灵活的串行口I/O的方法,即通过INT14调用ROMBIOS串行通信口的例行程序。该例行程序。该例行程序包括将串行口初始化为指定的字节结构和传输速率,检查控制器的状态,读写字符等功能。14号中断的功
7、能总结如下:串行口服务(SerialPortService——INT14H)00H—初始化通信口03H—读取通信口状态01H—向通信口输出字符04H—扩充初始化通信口02H—从通信口读入字符(1)、功能00H:初始化通信口第29页微机接口课程设计实验报告入口参数:AH=00HDX=初始化通信口号(0=COM1,1=COM2,……)AL=初始化参数,参数的说明如下:波特率奇偶位停止位字的位数76543210000=110X0=None0=1bit10=7bits001=15001=Odd1=2bits11=8bits010=30011=Even011=60
8、0100=1200101=2400110=4800111=9600(2)、功能0
此文档下载收益归作者所有