- 1、本文档共124页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
8.3 异步通信接口 IBM-PC机系统可配有同步和异步通信接口,一般系统只配置了异步通信接口,系统提供有两个通信端口:COM1和COM2。 PC/XT异步通信适配器提供RS-232C标准的EIA电压接口和20mA电流环接口两种操作方式。 8.3.1 异步通信适配器的组成 8.3.2 INS 8250的结构和外部特性 8.3.3 INS8250内部寄存器及其编程方法 8.3.4 INS 8250应用实例 8.3.1 异步通信适配器的组成 1.电平转换 INS 8250芯片处理电平为TTL电平,要与25芯连接器相连接,必须经过电平转换。 前图中,INS 8250和连接器的信号线是分别通过了电平转换器SN75150和SN75154才送到对方的。 2.地址译码电路 系统地址总线低10位(A0~A9)用于端口地址译码,其中高位地址(A3~A9)经译码器U2产生选片信号,送到8250的CS2端;低位地址(A0~A2)直接送到8250的(A0~A2)端,作为芯片内部寄存器的选择线。 I/O地址译码部分是由8输入端与非门U2及反相器U3组成的。 口地址有两个,由跳接开关U15的J10和J12端子进行切换。 中断请求由跳线开关U15控制连接IRQ3/IRQ4 。 8.3.2 INS 8250的结构和外部特性 INS 8250的外部引脚及内部结构图 片选信号CS0=1,CS1=1,CS2=0时,选中INS 8250芯片,并由A0~A2选择访问哪个内部寄存器。 DISTR或DISTR和DOSTR或DOSTR,读写控制信号两对。 DDIS,(数据总线)驱动器禁止信号引脚,在CPU从8250读取数据时为低电平,其它时间为高电平,禁止外部收发器对系统总线的驱动,PC/XT异步适配器未使用此信号。 中断请求引脚INTRPT,OUT1和OUT2两个输出引脚用来控制INTRPT的输出。 XTAL1 XTAL2 ,输入外部晶体振荡电路产生的1.8432MHz信号,作为8250的基准工作时钟。 BAUDOUT,输出外部输入的基准时钟经内部波特率发生器(分频器)分频后产生的发送时钟。 RCLK可接收由外部提供的接收时钟信号。 MR,主复位端,接系统RESET信号。 8.3.3 INS8250内部寄存器及其编程方法 8250芯片只有3根地址选择线A0~A2,而内部有10个可访问的寄存器,所以有些寄存器的端口地址必须重复 8250内部寄存器地址 1.波特率因子寄存器(DLL/DLH) 8250芯片串行数据传输的速率是由波特率因子寄存器DLL/DLH控制,在初始化时将选用的波特率因子值的高、低字节分别写入DLH和DLL。 外接1.8432MHz基准时钟,通过除以波特率因子寄存器给定的分频值,在8250内部产生不同的波特率,通过BAUDOUT引脚输出接到RCLK端,控制收发数据的传输速率。 即分频值的计算公式是: 波特率因子=1843200÷(16*波特率) 波特率因子与波特率对照表 若设定通信波特率为1200BPS,则波特率因子值为00H(高8位)和60H(低8位),其装入程序段为: MOV DX,3FBH ;置LCR口地址,DLAB=1 MOV AL,80H OUT DX,AL MOV DX,3F8H ;DLL的口地址 MOV AL,60H ;波特率因子低字节 MOV DX,3F9H ;DLH的口地址 MOV AL,00H ;波特率因子高字节 OUT DX,AL 例:设置INS8250波特率因子寄存器 2.通信线路控制寄存器(LCR) 主要用来指定异步通信数据格式,即字符长度、停止位位数、奇偶校验。 LCR的最高位DLAB用来指定允许访问波特率因子寄存器。 内容不仅可以写入而且可以读出。 D0D1位:字长选择,用来设置数据有效位数。 WLS1WLS0=00,为5位;WLS1WLS0=01,为6位;WLS1WLS0=10,为7位;WLS1WLS0=11,为8位。 D2位:停止位选择,用来设置停止位位数。 STB=0,为1位;STB=1,为1?位(字符长为5位时);或STB=1,为2位(字符长度为6,7或8位时)。 D3位:奇偶校验允许位,用来设置是否要奇偶校验。 PEN=0,不要校验;PEN=1,要校验。 D4位:偶校验选择,用来设置偶校验或奇校验 EPS=0,要奇校验;EPS=1,要偶校验。 D5位:附加奇偶标志位选择。 SP=0,不附加;SP=1,附加1位。 D6位:中止设定。指定发正常信号还是连续发空号(逻辑0)。 SB=0,正常;SB=1,中止。 D7位:波特率因子寄存器访问允许控制位
文档评论(0)