武汉理工大学《微机原理与接口技术》课程设计说明书
率为 1200,波特率因子选择 16,因此,OUT
0
输出的方波信号频率为
f=1200×16=19.2(kHz)
所以计数常数为 N=1000/19.2=52
③ 在 8251A 硬件连接中应注意 RXD 和 TXD 应连在一起使 8251A 工作于自
发自收方式。另外,CTS#必须接低电平,以保证 8251A 准许向外发送信号。题
目要求主机发送和接收数据均采用查询方式,利用查询方式进行串口通讯的基
本思路是:CPU 循环检从 8253A 的控制口读取状态字,根据状态字的有关位来
判定是否接收或发送。
④ 为了使信息被可靠的写入 8251A 的控制端口或数据端口,在使用 OUT
指令向 8251A 写入信息时,要有一定的时间延迟。在对 8251A 被初始化编程以
前,首先应使 8251A 复位。
5 在此讨论一下 8251A 的初始化操作。对 8251A 进行初始化编程,必
须在系统复位之后(因为,RESET 会使收发管脚处于空闲状态,各寄存器均处
于复位状态)。编程过程如下:先使用方式选择控制字,如果定义 8251A 工作
在异步方式下,那么必须紧跟操作命令字进行定义,然后才可以开始传输数据。
在数据传输过程中,可以使用操作命令字重新定义,或使用状态控制字读入
8251A 的状态。如果要设定新的工作方式,必须用操作命令控制字将 IR 位置
1,使其返回到方式选择控制字,接收新的方式选择命令,从而改变工作方式。
根据本题的要求,8251A 的方式选择控制字为 01001110B(4EH),表示异
步方式,波特率因子为 16,字符长度为 8 位,不带奇偶校验,1 位停止位。操
作命令控制字用了两个,一是 8251A 复位,即控制字为 0001000B(40H),使
全部错误标志复位;二是启动 8251A 接收和发送,其控制字为
00010101B(45H)。
⑥ 虽然在 8251A 上电时,RESET 信号可以使 8251A 进入复位状态,但在
实际使用时,为了使 8251A 可靠复位,我们常在初始化程序前用软件再次让
8251A 进行复位操作。具体实现过程是先向 8251A 的控制口连续写入 3 个 0,
然后再写入复位控制字 40H。由于 8251A 内部操作需要一定的时间,所以写入
操作后还要有一定的延迟。
7 8253 的控制字选择为 10110110B,即是说,8253 选择通道 2,
读写方式为读写 16 位,选择工作方式 3,二进制技术制。另外,还需给 8253
赋计数初值为 52。
⑧ 了解 DOS 功能调用。DOS 功能调用号送到 AH 寄存器;如果需要,按
要求给定输入参数;写入中断指令“INT 21H”。
8251A 的 3 个控制字,即方式选择控制字,操作命令控制字,状态控制字的
格式分别如图 1,图 2,图 3。初始化的编程流程图见图 4 所示。