常用接口芯片及应用(4)

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

8250的引脚分成连接CPU的部分和连接外设的部分注意:8250不是Intel公司的产品(Intel8251),所以该芯片引脚名称与前面学习的8253、8255等Intel产品有所不同,但是引脚功能却是类似的与处理器接口串行接口(RS-232)1231045967158121314112832278250362633253722382139193418312330243540162017D0D1D2D3D4D5D6D7CS0CS1CS2A0A1A2ADSDISTRDISTRDOSTRDOSTRDDISCSOUTMRXTAL1XTAL2SINRCLKBAUDOUTSOUTRTSCTSDTRDSRRLSDRIOUT1OUT2INTR+5VGND时钟信号时钟输入引脚XTAL1:8250的基准工作时钟时钟输出引脚XTAL2:基准时钟信号的输出端波特率输出引脚BAUDOUT*:基准时钟经8250内部波特率发生器分频后产生发送时钟接收时钟引脚RCLK:接收外部提供的接收时钟信号;若采用发送时钟作为接收时钟,则只要将RCLK引脚和BAUDOUT*引脚直接相连8250的内部结构8250实现了起止式串行异步通信协议,全双工通信通信字符可选择数据位为5~8位停止位1、1.5或2位可进行奇偶校验具有奇偶、帧和溢出错误检测电路起始位校验位停止位空闲位数据位低位高位字符0/10/10/10/110111…内部寄存器8250内部有9种可访问的寄存器,除数寄存器是16位的,占用两个连续的8位端口内部寄存器用引脚A0~A2来寻址;同时还要利用通信线路控制寄存器的最高位,即除数寄存器访问位DLAB,来区别共用两个端口地址的不同寄存器本次课内容可编程串行接口82501.8250的内部结构2.8250的引脚3.内部寄存器4.8250的编程5.异步通信适配器键盘接口矩阵键盘结构键盘接口硬件电路键盘编程键盘接口设计实例本次课内容4.可编程串行接口8250编程举例例:设数据传输速率1200波特,通信格式为7位/字符,2位停止位,奇校验,数据传输不采用中断方式,则其初始化程序段为:MOVDX,2FBH;LCR的口地址MOVAL,80H;将DLAB位置1OUTDX,ALMOVDX,2FBH;DLL的口地址MOVAL,60H;写入1200波特的DLL值,通过查表可知1200对应的DLHDLL值分别为0060HOUTDX,ALMOVDX,2F9H;DLH口地址MOVAX,0OUTDX,AX;写入12000波特的DLH值MOVDX,2FBH;设定LCR的口地址MOVAL,0EH;7位字符,2位停止位,奇校验OUTDX,AL;写入LCR控制字MOVDX,2FCH;设定MCR口地址MOVAL,03H;置MCR控制字OUTDX,ALMOVDX,2F9H;设定IER口地址MOVAL,0;禁止一切中断OUTDX,AL;置IER控制字5.异步通信适配器IBMPC机的串行异步通信适配器完成发送时的并转串和接收时的串转并以及相应的控制工作以8250为核心,构成RS-232配置了TTL电平与EIA电平转换电路等图.8250的连接RCLKBAUDOUTIRQ4IRQ3RESET+5VA8AENA3~A7A9IORIOWA0~A2MRXTAL1OUT1OUT2INTRPTDISTRDOSTRA0~A2CS28250LS245D0~D7D0~D7J9J10J11J12DIR1.8432MHzCS0CS1ADSDISTRDOSTR+5V异步通信适配器的接口电路(书224页图5.35)(1)和CPU接口部分异步通信适配器的接口电路(书224页图5.35)(2)串行异步接口(RS-232)部分8250数据装置准备好DSR*数据终端准备好DTR*发送数据SOUT(TXD)接收数据SIN(RXD)请求发送RTS*允许发送CTS*信号地GND载波检测RLSD*(CD)振铃指示RI*对应RS-232TXDRXDRTSCTSDSRDTRGNGCDRITXCRXC波特率输出BAUDOUT*接收时钟引脚RCLKMAX2328250教学要求1.掌握起止式通信协议、RS-232C引脚定义和连接2.了解8250的引脚和内部寄存器功能3.掌握8250的初始化编程5.5键盘接口简单键盘接口---可用三态门(231页图5.39)8255作为键盘接口(上次实验)矩阵键盘结构(231页图5.40)键盘编程---键盘扫描查表法去抖动硬健去抖软件延时被按键的识别和键码的产生查表法确定按下的键键盘接口设计实例8255与小键盘接口实验8255端口地址为318H~31BH,请编程实现在PC上显示所按键硬件电路分析软件分析---键盘扫描查表法键值表的产生高8位(列值)低8位(行值)取反8255的初始化编程流程图去抖动(软件延时)被按键的识别和键码的产生查表法确定按下的键PA0~PA7PB0~PB18255行矩阵列矩阵键盘CPU键值表的产生高8位(列值)低8位(行值)取反TABLEDW101H,0102H,0104H,0108H,0110H,0120H,0140H,0180HDW201H,0202H,0204H,0208H,0210H,0220H,0240H,0280HDW0401H,0402H,0404H,0408H作业预习8253基本工作方式实验8253端口地址为300H~303H,观察计数器0工作在方式0时out0的波形及其受GATE信号的影响要求在分析参考程序(方式0)基础上编出程序(选做)8253计数器0工作在方式2OUT0GATA0CLK08253示波器地8253D7~D0计数器0控制字寄存器计数器1计数器2内部数据总线数据总线缓冲器读写控制逻辑RDWRA0A1CSCLK0GATE0OUT0CLK1GATE1OUT1CLK2GATE2OUT2与处理器接口计数器•3个独立的16位计数器通道•每个计数器有6种工作方式•按二进制或十进制(BCD码)计数计数器预置寄存器GATECLKOUT减1计数器输出锁存器CLK时钟输入信号在计数过程中,此引脚上每输入一个时钟信号(下降沿),计数器的计数值减1GATE门控输入信号控制计数器工作,可分成电平控制和上升沿控制两种类型OUT计数器输出信号当一次计数过程结束(计数值减为0),OUT引脚上将产生一个输出信号8253的工作方式8253有6种工作方式,由方式控制字确定熟悉每种工作方式的特点才能根据实际应用问题,选择正确的工作方式每种工作方式的过程类似:⑴设定工作方式⑵设定计数初值〔⑶硬件启动〕⑷计数初值进入减1计数器⑸每输入一个时钟计数器减1的计数过程⑹计数过程结束方式0:计数结束产生中断①②⑤④⑥GATEOUTCLK031244方式0WR①设定工作方式②设定计数初值④计数值送入计数器⑤计数过程⑥计数结束8253的编程8253加电后的工作方式不确定8253必须初始化编程,才能正常工作每个计数器须初始化写入方式控制字写入计数初值D7D6D5D4D3D2D1D08253/8254的I/O地址写入方式控制字计数器读写格式工作方式数制D7D6D5D4D3D2D1D000计数器001计数器110计数器211非法00计数器锁存命令01只读写低字节10只读写高字节11先读写低字节后读写高字节000方式0001方式1010方式2011方式3100方式4101方式50二进制1十进制控制字写入控制字I/O地址(A1A0=11)写入计数值选择二进制时计数值范围:0000H~FFFFH0000H是最大值,代表65536选择十进制(BCD码)计数值范围:0000~99990000代表最大值10000计数值写入计数器各自的I/O地址示例串行通信总线(串行接口标准)RS-232C美国电子工业协会EIA制定的通用标准串行接口设计目的是用于连接调制解调器现已成为数据终端设备DTE(例如计算机)与数据通信设备DCE(例如调制解调器)的标准接口RS-232C接口标准使用一个25针连接器,绝大多数设备只使用其中9个信号,所以就有了9针连接器TxD:发送数据串行数据的发送端RxD:接收数据串行数据的接收端TxC:发送器时钟控制数据终端发送串行数据的时钟信号RxC:接收器时钟控制数据终端接收串行数据的时钟信号GND:信号地为所有的信号提供一个公共的参考电平RS-232C的电气特性232C接口采用EIA电平高电平为+3V~+15V低电平为-3V~-15V实际常用±12V或±15V标准TTL电平高电平:+2.4V~+5V低电平:0V~0.4V相互转换起止式异步通信协议起始位——每个字符开始传送的标志,起始位采用逻辑0电平数据位——数据位紧跟着起始位传送。由5~8个二进制位组成,低位先传送校验位——用于校验是否传送正确;可选择奇检验、偶校验或不传送校验位停止位——表示该字符传送结束。停止位采用逻辑1电平,可选择1、1.5或2位空闲位——传送字符之间的逻辑1电平,表示没有进行传送起始位校验位停止位空闲位数据位低位高位字符0/10/10/10/110111…2.RS-232C的连接方法1:微机利用232C接口连接调制解调器,用于实现通过电话线路的远距离通信方法2:微机利用232C接口直接连接进行短距离通信。不使用调制解调器。分频次数锁存器DLH和DLL(除数锁存器)分频系数=基准时钟频率÷(16×比特率)传输线控制寄存器LCR(通信控制寄存器)指定串行异步通信的字符格式D7D6D5D4D3D2D1D0字符长00=5位01=6位10=7位11=8位停止位的位数0=1位停止位1=当字符长为5位时,1.5位停止位;当字符长为6~8位时,2位停止位。有无奇偶校验0=无奇偶校验1=有奇偶校验附加奇偶标志位0=不附加1=附加1位(D4=1,D3=1,偶校验,奇偶校验位为0;D4=0,D3=1,奇校验,奇偶校验位为1)。除数选择位(DLAB)0=寻址RBR,TBR,IER1=选除数锁存器设置间断0=禁止间断1=强迫SOUT引脚连续输出空白状态0奇偶校验的类型0=奇校验1=偶校验DR=1接收数据准备好BI=1,检测到间断OE=1,重叠错TBRE=1,发送缓冲器空PE=1,奇偶错FE=1,帧错TSRE=1,发送移位寄存器空恒为0D7D6D5D4D3D2D1D0传输线状态寄存器LSR(通信状态寄存器)提供串行异步通信的当前状态供CPU读取和处理为1使DTR*引脚为低否则为高MODEM控制寄存器MCR设置8250与数据通信设备之间联络应答的输出信号000LOOPOUT2OUT1RTSDTR为1使RTS*引脚为低否则为高为1使OUT1*引脚为低否则为高为1使OUT2*引脚为低否则为高为1使8250为循环工作方式否则为正常工作方式△CTS位1=CTS引脚电平发生变化△DSR位1=DSR引脚电平发生变化△RI位1=RI引脚电平发生变化△RLSD位1=RLSD引脚电平发生变化0=CTS引脚为高电平1=CTS引脚为低电平0=DSR引脚为高电平1=DSR引脚为低电平0=RI引脚为高电平1=RI引脚为低电平0=RLSD引脚为高电平1=RLSD引脚为低电平D7D6D5D4D3D2D1D0MODEM状态寄存器MSR反映4个控制输入信号的当前状态及其变化MSR高4位中某位为1,说明相应输入信号当前为低有效,否则为高电平MSR低4位中某位为1,则说明从上次CPU读取该状态字后,相应输入信号已发生改变,从高变低或反之中断允许寄存器IER8250设计有2个中断寄存器(IER、IIR)和4级中断4级中断的优先权,是按照串行通信过程中事件的紧迫程度安排的、是固定不变的用户可利用IER中断允许或禁止进行控制中断允许寄存器的低4位控制8250这4级中断是否被允许某位为1,则对应的中断被允许否则,被禁止接收数据错误中断D2接收数据寄存器满(准备好)中断D0发送数据寄存器空中断D1调制解调器状态发生变化中断D3优先

1 / 41
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功