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