第八章 串行输入输出接口 微机原理与接口技术 彭虎.ppt
上传人:qw****27 上传时间:2024-09-12 格式:PPT 页数:74 大小:1.8MB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

第八章 串行输入输出接口 微机原理与接口技术 彭虎.ppt

第八章串行输入输出接口微机原理与接口技术彭虎.ppt

预览

免费试读已结束,剩余 64 页请下载文档后查看

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第八章串行输入/输出接口8.1概述现在的台式PC机一般至少有两个RS-232串行口COM1和COM2,通常COM1使用的是9针D形连接器,而COM2使用的是老式的DB25针连接器。二、串行通信的实现2、串行通信的硬件条件在硬件上,串行通信系统的核心部件是移位寄存器,其中在发端要有一个并入串出移位寄存器,在收端要有一个串入并出移位寄存器。0011000003、串行通信的同步为了可靠的串行通信,同步信号起到至关重要的作用。在理想情况下,同步信号应该在数据信号线上出现有效数据期间的中心点有效,因为这时数据线上的数据是最稳定的。但在典型的串行通信系统中,是不存在同步信号线的!如何实现串行通信的中数据传送的同步呢?系统从软件和硬件两方面采取了如下三个措施:(1)设置波特率波特率是指单位时间内传送的位数,单位是比特/秒。(2)设置数据的传送格式,一般地串行通信在传送数据时,并不是单纯地传送数据位信息。为了使数据传送可靠,还设定了其他一些辅助位。(3)设置波特率因子在异步通信方式进行通信时,发送端需要用时钟来决定每1位对应的时间长度,接收端也需要用一个时钟来测定每1位的时间长度,前一个时钟叫发送时钟,后一个时钟叫接收时钟。这两个时钟的频率可以是波特率的数倍,一般取16倍、32倍或64倍。这个倍数就称为波特率因子。波特率8.2串行通信的基本技术二、串行通讯中的数据传送方向1、半双工每次只能有一个站发送。2、完全双工两个站都能同时发送称完全双工。三、异步接收/发送器(UART)串行接口的基本结构主要是异步接收/发送器(UART),它不仅包括并行数据和串行数据之间的相互转换,还有检测串行通信在传送过程中可能发生错误的逻辑部件。a.奇偶错误如上所述,在接收时,UART检查接收到的每一个字符的“1”的个数这个标志,发出奇偶校验出错信息。四、信号的调制和解调由于模拟信号的传输比数字信号传输更为有效,因而可将数字信号调制成模拟信号进行传输,用解调器把接收的模拟信号再转换成数字信号。8.3可编程串行通讯接口芯片8251A简介一、主要基本性能1.可用于同步和异步传送2.波特率,DC-19.2K(异步);DC-64K(同步)。3.完全双工,双缓冲发送和接收4.与8080/8085CPU完全兼容二、内部结构1.发送器a.数据输出线TxDb.发送时钟TxCc.发送器准备好TxRDYd.发送器空信号TxEMPY过程TxRDY有效CPU写数据到82518251发数据发送完毕,TxEMPY有效2.接收器a.数据输入线RxDb.接收时钟RxCc.接收器准备好RxRDY过程8251接数据RxRDY有效CPU读82513.调制解调控制电路/DTR——数据终端准备好信号。是由825IA送往外设的,表示CPU当前已经准备就绪。/DSR——数据设备准备好。是外设送往825lA的,表示当前外设已经准备好数据。/RTS——请求发送信号。是8251A送往外设的,表示CPU已经准备好发送。/CTS——清除请求发送信号。由外设送往825lA的,当为低电平时,允许825lA执行发送操作。4.读/写控制电路三、8251编程三、8251编程RxCTxC2.控制寄存器的格式(操作命令控制字)3.状态寄存器的格式(状态控制字(读))四、举例RxCTxC解:1、8253工作方式及计数初值工作方式mode38253输出频率:fout=9600*16=153600=153.6Kfclk=1MN=1000/153.6=~6.51(不能用!)fclk=1.8432MN=122、8251工作方式方式选择控制字操作命令控制字……MOVAL,00H;复位8251OUT92H,ALCALLDELAYOUT92H,ALCALLDELAYOUT92H,ALCALLDELAYMOVAL,40HOUT92H,ALCALLDELAY;等待8251复位MOVAL,4EH;置工作方式OUT92H,ALMOVAL,37H;操作命令OUT92H,AL……发送:SENDDATPROC;DL:要发送的数据CHKTXR:INAL,92H;输入状态字ANDAL,01H;查TXRDYJZCHKTXRMOVAL,DLOUT90H,AL;发送RETSENDDATENDP接收:RECIDATPROC;AL:接收的数据CHKRXD:INAL,92H;输入状态字ANDAL02H;查RXRDY?JZCHKRXD