资源预览内容
第1页 / 共107页
第2页 / 共107页
第3页 / 共107页
第4页 / 共107页
第5页 / 共107页
第6页 / 共107页
第7页 / 共107页
第8页 / 共107页
第9页 / 共107页
第10页 / 共107页
亲,该文档总共107页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第第7章章 微机接口技术微机接口技术7.1 概述概述7.2 可编程定时可编程定时/计数器计数器82537.3 可编程并行通信接口可编程并行通信接口82557.4 可编程串行通信接口芯片可编程串行通信接口芯片7.5 模拟通道接口模拟通道接口2024/7/271j.g.mao263.net 7.1 概述概述一、 并行通信与并行接口二、 串行通信与串行接口三、 串行通信方式及异步通信协议四、 串行异步通信标准接口2024/7/272j.g.mao263.net一、并行通信与并行接口一、并行通信与并行接口1. 并行通信并行通信l含义:并行通信是指将一个字节或一个字的各位同时含义:并行通信是指将一个字节或一个字的各位同时 进行传输的一种通信方式。进行传输的一种通信方式。 l要点:传输的各位同时传输(输入或输出)。要点:传输的各位同时传输(输入或输出)。l特点:(特点:(1)传输速度快)传输速度快 (2)传输的信息率高)传输的信息率高 (3)需要较多通信信号线)需要较多通信信号线l用途:用于数据传输距离短、传输速度高的场合。用途:用于数据传输距离短、传输速度高的场合。2024/7/273j.g.mao263.net 含义:实现并行通信的接口称为并行通信接口含义:实现并行通信的接口称为并行通信接口2.2.并行接口并行接口2024/7/274j.g.mao263.net二、串行通信与串行接口二、串行通信与串行接口1. 串行通信串行通信l含义:串行通信是把传输的数据一位一位地含义:串行通信是把传输的数据一位一位地 顺序传送的一种通信方式。顺序传送的一种通信方式。 l要点:按位传输要点:按位传输l特点:(特点:(1)通信线少)通信线少 (2)成本低)成本低 (3)通信速度低)通信速度低l用途:适用于长距离数据传输用途:适用于长距离数据传输2024/7/275j.g.mao263.netl完成串行通信任务的接口称为串行通信接口,完成串行通信任务的接口称为串行通信接口,简称串行接口。简称串行接口。l功能:功能:(1)输入时,完成串行到并行格式转换;)输入时,完成串行到并行格式转换;(2)输出时,完成并行到串行格式转换。)输出时,完成并行到串行格式转换。2.串行接口串行接口2024/7/276j.g.mao263.net3.单工方式单工方式2024/7/277j.g.mao263.net4.半双工方式半双工方式2024/7/278j.g.mao263.net5.全双工方式全双工方式2024/7/279j.g.mao263.net三、串行通信方式三、串行通信方式1. 异步通信异步通信异步通信异步通信:指字符与字符之间的传送是完全异步的,指字符与字符之间的传送是完全异步的,随机的,但一个字符的位与位之间是同步的。随机的,但一个字符的位与位之间是同步的。2. 异步通信特点异步通信特点 字符的发送是随机的。字符的发送是随机的。 每一个字符传输总以一个起始位为准,然后接收每一个字符传输总以一个起始位为准,然后接收方与发送方保持同步(格式的统一),最后是停止位。方与发送方保持同步(格式的统一),最后是停止位。 通信双方可随时改变通信协议,即改变数据位、通信双方可随时改变通信协议,即改变数据位、奇偶校验位和停止位长度或数据传输率。奇偶校验位和停止位长度或数据传输率。2024/7/2710j.g.mao263.net3异步通信协议异步通信协议l异步通信协议包括:异步通信协议包括: 一是字符的传送格式的规定,二是数据传送速率的要求。一是字符的传送格式的规定,二是数据传送速率的要求。l 异步通信格式协议,即改变数据位、奇偶校验位和停止位异步通信格式协议,即改变数据位、奇偶校验位和停止位长度或数据传输率。长度或数据传输率。2024/7/2711j.g.mao263.net4.波特率波特率l波特率波特率(Baud Rate):指单位时间传送二进制数的位数,指单位时间传送二进制数的位数,一般以秒为单位。一般以秒为单位。l微机中常见的波特率有微机中常见的波特率有110、300、600、1200、2400、4800、9600、19200等。微机最高波特率由硬件决定。等。微机最高波特率由硬件决定。l例:例:已知字符格式中数据为已知字符格式中数据为8位,无校验,位,无校验,1位停止位,在位停止位,在1分钟内连续不断传送了分钟内连续不断传送了 69120个字符,求波特率。个字符,求波特率。解解:一个字符:一个字符=1+8+0+1=10位位 每秒传送的字符个数每秒传送的字符个数=69120/60=1152个个 波特率波特率=位位/秒秒=1152*10=11520 bits/S2024/7/2712j.g.mao263.net 5.同步通信同步通信在数据块开始处设置12个同步字符来进行的数据通信。空闲时,发送专用 “空闲”字符或同步字符。2024/7/2713j.g.mao263.net四、串行异步通信标准接口四、串行异步通信标准接口l串行异步通信的标准接口有串行异步通信的标准接口有RS-232C、RS-449、RS-422/485以及以及20mA电流环等接口。电流环等接口。lRS-232C接口接口1. 重要引脚重要引脚:RXD、TXD、GND25针:针:2(TXD),),3(RXD),),7(GND)9针:针: 2(RXD),),3(TXD),),5(GND)2. 接口逻辑:负逻辑传送接口逻辑:负逻辑传送1:-15V-3V0:+3V+15Vl3. 双机连接方法:双机连接方法:RXD-TXD,GND-GND2024/7/2714j.g.mao263.netRS232连接示意图连接示意图2024/7/2715j.g.mao263.net其它标准串行接口其它标准串行接口lRS232C缺点:受共模干拢影响,通信距离不长。仅缺点:受共模干拢影响,通信距离不长。仅20米以内。米以内。lRS422:通过差分放大器波波有效抑制共模干扰。全通过差分放大器波波有效抑制共模干扰。全双工需要四条线。双工需要四条线。lRS485:对对422改进,通信线少,仅三根,且可同时改进,通信线少,仅三根,且可同时连接多个接收器和发送器。(连接多个接收器和发送器。(32256个),通信距个),通信距离可达几千米。离可达几千米。l20mA电流环:电流型传送,抗干扰强,传送距离远。电流环:电流型传送,抗干扰强,传送距离远。2024/7/2716j.g.mao263.net7.2 7.2 可编程定时可编程定时/ /计数器计数器8253(8253(8254)8254)三种定时方法三种定时方法:软件定时、硬件定时、可编程硬件定时:软件定时、硬件定时、可编程硬件定时主要内容:主要内容: 一、一、8253/8254的内部结构及引脚信号的内部结构及引脚信号 二、二、8253 /8254的工作方式的工作方式 三、三、8253/8254的编程的编程注:注: 8253最高工作频率最高工作频率2.0MHz8254最高工作频率最高工作频率为为10MHz,功能功能REG2024/7/2717j.g.mao263.net一、一、8253/82548253/8254内部结构及引脚信号内部结构及引脚信号2024/7/2718j.g.mao263.net82538253端口及其操作端口及其操作2024/7/2719j.g.mao263.net二、二、82538253(8254)(8254)的工作方式的工作方式方式方式0 中断信号发生器中断信号发生器方式方式1 单稳脉冲信号发生器单稳脉冲信号发生器方式方式2 速率信号发生器速率信号发生器方式方式3 方波信号发生器方波信号发生器方式方式4 软件触发的选通信号发生器软件触发的选通信号发生器方式方式5 硬件触发的选通信号发生器硬件触发的选通信号发生器2024/7/2720j.g.mao263.net方式方式0 中断信号发生器中断信号发生器2024/7/2721j.g.mao263.net方式方式1 单稳脉冲信号发生器单稳脉冲信号发生器2024/7/2722j.g.mao263.net方式方式2速率信号发生器速率信号发生器2024/7/2723j.g.mao263.net方式方式3方波信号发生器(偶数初值)方波信号发生器(偶数初值)2024/7/2724j.g.mao263.net方式方式3 方波信号发生器(奇数初值)方波信号发生器(奇数初值)2024/7/2725j.g.mao263.net方式方式4软件触发的选通信号发生器软件触发的选通信号发生器2024/7/2726j.g.mao263.net方式方式5硬件触发的选通信号发生器硬件触发的选通信号发生器2024/7/2727j.g.mao263.net各方式比较:各方式比较: 方式方式启动启动输出输出01写入初值写入初值GATE上升沿上升沿 相同:计数时低电平;相同:计数时低电平; 到零时为高电平。到零时为高电平。23相同:相同:写入初值写入初值到到1时为一个周期低电平;时为一个周期低电平;方波方波45写入初值写入初值GATE上升沿上升沿相同:计数时高电平,到相同:计数时高电平,到0 时为一个周期低电平时为一个周期低电平*方式0、2、3、4计数时,GATE必须为高电平2024/7/2728j.g.mao263.net三、三、8253/8254的编程应用的编程应用0=二进制计数1=BCD码计数方式选择0 0 0=方式00 0 1=方式1x 1 0=方式2x 1 1=方式31 0 0=方式41 0 1=方式5操作类型0 0=计数器锁存0 1=读/写低字节1 0=读/写高字节1 1=读/写16位(字) 先低字节 后高字节通道选择0 0=计数器00 1=计数器11 0=计数器21 1=8253非法 8254读回命令SC1 SC2RL1RL0M2M1M0BCDD7D6D5D4D3D2D1D01 1、8253/82548253/8254控制字控制字2024/7/2729j.g.mao263.net 2、8253/8254计数范围计数范围l二进制计数二进制计数:0000HFFFFH,即即0-65535lBCD码计数码计数:00009999l最小和最大计数值最小和最大计数值:最小计数值为最小计数值为1 (方式(方式3除外,方式除外,方式3为为2) 最大计数为最大计数为0,即模,即模216或或104 。 *不是不是FFFFH或或9999。2024/7/2730j.g.mao263.net3、8253/8254初始值计算初始值计算l假假设设已已知知8253相相应应通通道道的的CLK端端接接入入的的时时钟钟频频率率为为fCLK,周周期期为为tCLK=1/fCLK,要要求求产产生生的的周周期期性性信信号号频频率率为为F(周周期期为为T)或或定定时时时时间间为为T(F=1/T),则所需计数初值则所需计数初值n为:为:l在计算时注意时间和频率的单位一致性。在计算时注意时间和频率的单位一致性。2024/7/2731j.g.mao263.net4、8253/8254编程示例编程示例l已知已知8253各定时通道时钟各定时通道时钟CLK接接0.5MHz的脉冲信号,端口地址为的脉冲信号,端口地址为2E0H2E3H,要求在要求在OUT0产生产生 周周期为期为500us的的方波,方波,OUT1产生产生0.2KHz的连续脉冲,的连续脉冲, OUT2产生产生 一个最大的负脉冲。一个最大的负脉冲。2024/7/2732j.g.mao263.net分析:分析:OUT0:初值初值=500us* 0. 5MHz= 250 , 方式方式3 CW0=00010110B=16HOUT1:初值初值= 0. 5MHz/0.2KHz=2500 ,方式方式2CW1=01110100B=74HOUT2:初值初值=0 ,方式方式1CW2=10110010B=B2H2024/7/2733j.g.mao263.net示例程序片段示例程序片段;T0初始化初始化 MOV DX,2E3H;控制端口地址控制端口地址 MOV AL,00010110B;T0控制字控制字(16H) OUT DX,AL ; CW0 CW MOV DX,2E0H;T0端口地址端口地址 MOV AL,250;初值初值D T0 OUT DX,AL 2024/7/2734j.g.mao263.net;T1初始化初始化MOV DX,2E3H;控制端口地址控制端口地址MOV AL,01110100B;T1控制字控制字(74H)OUT DX,AL ; CW1 CWMOV DX,2E1H;T1口地址口地址MOV AX,2500 ;T1初值初值OUT DX,AL;先写低字节先写低字节MOV AL,AH;取高字节取高字节OUT DX,AL;后写高字节后写高字节2024/7/2735j.g.mao263.net;T2初始化初始化MOV DX,2E3H;控制端口地址控制端口地址MOV AL,10110010B;T2控制字控制字(B2H)OUT DX,AL ; CW2 CWMOV DX,2E2H;CTC2口地址口地址MOV AL,0;T2初值初值OUT DX,AL;先写低字节先写低字节OUT DX,AL;后写高字节后写高字节2024/7/2736j.g.mao263.net5、8253应用应用l利用利用8253定时定时/计数器产生计数器产生4.096ms的定时中断。的定时中断。 端口地址端口地址280H283H,T0,CLK0=2Mhz,解:解:D= 2*106* 4.096*10- 3=8192 CW=00110101 mov dx, 283h mov al, 92h mov al, 35h out dx, al out dx, al mov al, 81h mov dx, 280h out dx, al2024/7/2737j.g.mao263.net5、8253应用应用22024/7/2738j.g.mao263.net应用程序片段应用程序片段l;CTC0初值初值=55*1.19=65450lMOV AL,00110110B;T0控制字控制字lOUT 43H,AL;写入控制端口写入控制端口lMOV AX,65450;T0初值初值lOUT 40H,AL;先写低字节先写低字节lMOV AL, AHlOUT 40H,AL;后写高字节后写高字节2024/7/2739j.g.mao263.net;应用程序应用程序CTC1l;初值初值=15*1.19=17.85 取取 18=12HlMOV AL,01010100B;T1控制字控制字lOUT 43H,AL;写入控制端口写入控制端口lMOV AL,12H;T1初值初值lOUT 41H,AL;写初值至写初值至T12024/7/2740j.g.mao263.net;应用程序应用程序CTC2l;CTC2初值初值=1.19M/1K=1190lMOV AL,10110110B ;T2控制字控制字lOUT 43H,AL;写入控制口写入控制口lMOV AX,1190;T2初值初值lOUT 42H,AL;先写低字节先写低字节lMOV AL, AH;取高字节取高字节lOUT 42H,AL;后写高字节后写高字节lIN AL, 61H;读读8255A的的B口的值口的值lMOV AH, AL;暂存暂存AH中中lOR AL, 00000011BlOUT 61H, AL;输出使扬声器发声输出使扬声器发声2024/7/2741j.g.mao263.net7.3 7.3 可编程并行接口芯片可编程并行接口芯片82558255一、一、8255的内部结构及引脚信号的内部结构及引脚信号二、二、8255的工作方式的工作方式三、三、8255的编程的编程2024/7/2742j.g.mao263.net一、一、 8255的内部结构及引脚信号的内部结构及引脚信号2024/7/2743j.g.mao263.net引脚信号引脚信号l(1) 与与 外外 设设 接接 口口 信信 号号 引引 脚脚PA7PA0 A口口的的8个个I/O引引脚脚。 PB7PB0 B口口的的8个个I/O引引脚脚。PC7PC0 C口的口的8个个I/O引脚。引脚。l (2) 与与系系统统总总线线接接口口信信号号引引脚脚D7D0 数数据据线线RD,WR,CSRESET 高高电电平平有有效效,有有效效时时8255内内部部寄寄存存器器清清除除,同同时时三三个个数数据据端端口口被被自自动动设设为为输输入入端端口口。2024/7/2744j.g.mao263.net8255A的端口操作的端口操作2024/7/2745j.g.mao263.net二、二、8255的工作方式的工作方式基本输入输出方式基本输入输出方式-方式方式0选通输入输出方式选通输入输出方式-方式方式1双向输入输出方式双向输入输出方式-方式方式22024/7/2746j.g.mao263.net1、基本输入输出方式、基本输入输出方式-方式方式0l方式方式0没有固定用于应答的联络信号线。没有固定用于应答的联络信号线。l在在此此方方式式下下,三三个个数数据据端端口口A、B和和C中中的的任任何何一一个个端口都可由程序设定为端口都可由程序设定为8位的输入口或输出口。位的输入口或输出口。lC端端口口的的两两个个半半口口(高高4位位和和低低4位位)可可独独立立设设为为输输入入或输出端口。或输出端口。l端口输入具有缓冲功能;输出具有锁存功能。端口输入具有缓冲功能;输出具有锁存功能。l方式方式0下的各端口输入或输出有下的各端口输入或输出有24=16种不同的组合。种不同的组合。2024/7/2747j.g.mao263.net2、选通输入输出方式、选通输入输出方式-方式方式1l方式方式1规定了固定用于应答的联络信号线;规定了固定用于应答的联络信号线;lA口口和和B口口可可作作为为输输入入或或输输出出端端口口使使用用,而而此此时时C口口的某些位与它们配合,作为控制或通信联络信号;的某些位与它们配合,作为控制或通信联络信号;l没有使用的没有使用的C口某些位还可单独立定义为口某些位还可单独立定义为I/O口用;口用;lA和和B端端口口的的输输入入和和输输出出具具有有不不同同的的组组态态,内内部部逻逻辑不同。辑不同。2024/7/2748j.g.mao263.net方式方式1下的输入组态下的输入组态A口输入B口输入2024/7/2749j.g.mao263.net方式方式1下的输入工作波形下的输入工作波形2024/7/2750j.g.mao263.net方式方式1下的输出组态下的输出组态A口输出B口输出2024/7/2751j.g.mao263.net方式方式1下的输出工作波形下的输出工作波形2024/7/2752j.g.mao263.net3、双向输入输出方式、双向输入输出方式-方式方式2l方方式式2是是双双向向的的数数据据传传输输方方式式,仅仅限限于于A口口,这这时时C端口配合其工作。端口配合其工作。2024/7/2753j.g.mao263.net三、三、8255编程编程l对对8255编编程程首首先先要要写写入入方方式式选选择择控控制制字字,然然后后再行输入输出操作。再行输入输出操作。l操操 作作 是是 可可 对对 端端 口口 C进进 行行 置置 /复复 位位 操操 作作 。因此:因此:8255有两个控制字是编程的关键所在。有两个控制字是编程的关键所在。l 方式选择控制字方式选择控制字l 端口端口C置置/复位控制字复位控制字2024/7/2754j.g.mao263.net1、方式选择控制字、方式选择控制字2024/7/2755j.g.mao263.net2、端口、端口C置置/复位控制字复位控制字2024/7/2756j.g.mao263.net3、举例应用如果设定8255 工作在方式0,A口输出,B口输入,C上为输入,C下为输出,将现场的开关状态送到B口,并通过A口的LED(发光二极管)来显示。请写出控制字CW、初始化程序及相关程序段。 2024/7/2757j.g.mao263.net82558255作为打印机接口实例作为打印机接口实例2024/7/2758j.g.mao263.net打印机接口的时序要求打印机接口的时序要求2024/7/2759j.g.mao263.net打印程序打印程序 MOV AL, 0A8H;方式选择字方式选择字(C上半口输入上半口输入PC4) MOV DX, 343H ;控制端口控制端口 OUT DX, AL;方式选择控制字写入控制口方式选择控制字写入控制口 MOV CX, Counter;打印字符个数装入计数器打印字符个数装入计数器 MOV BX, OFFSET PstringsLP1:MOVAL,BX MOVDX,340H OUTDX,AL;送一个字符到送一个字符到8255的的A口口 MOVDX,342HLP2:IN AL,DX;读取C口状态(准备检查BUSY状态) ANDAL,00010000B ;屏蔽无关位屏蔽无关位, 取取BUSY JZLP2;等待接收新数据等待接收新数据LP3:IN AL,DX;读取C口状态 ANDAL,00010000B ;屏蔽无关位屏蔽无关位, 取取BUSY对应的对应的PC4 JNZLP3;BUSY=1等待,直到不忙等待,直到不忙 INCBX LOOPLP12024/7/2760j.g.mao263.net键盘与显示器应用键盘与显示器应用l 2024/7/2761j.g.mao263.net7.4 可编程串行通信接口芯片可编程串行通信接口芯片 16550与与8250l一、一、1655016550及及82508250功能功能l(1) 具有全双工、双缓冲器发送器和接收器。具有全双工、双缓冲器发送器和接收器。l(2) 是串行异步通信接口(是串行异步通信接口(UART)。l(3) 波特率波特率:8250=509600波特波特;16550=50115200波特。波特。l(4) 异步通信格式,可通过编程选择。异步通信格式,可通过编程选择。l(5) 具有自动奇偶校验、溢出和帧出错等检测标志。具有自动奇偶校验、溢出和帧出错等检测标志。l(6) 片内具有优先级中断控制逻辑。片内具有优先级中断控制逻辑。l(7) 单一单一+5V,40个引脚的个引脚的DIP封装形式。封装形式。2024/7/2762j.g.mao263.net二、内部结构及工作原理二、内部结构及工作原理2024/7/2763j.g.mao263.net1.接收部分接收部分l接接收收移移位位寄寄存存器器将将SIN脚脚的的串串行行数数据据进进行行移移位位输输入入。(1) 检检测测起起始始位位:SIN变变低低后后,连连续续测测试试8个个RCLK时时钟钟周周 期期,如如果果都都是是低低电电平平,为为起起始始位位,否否则则为为干干扰扰信信号号。(2) 采采样样数数据据位位:每每隔隔16个个RCLK脉脉冲冲对对SIN输输入入的的数数据据位位进进 行行一一次次采采样样。直直到到停停止止位位,完完成成一一个个字字符符的的接接收收。(3) 去去除除无无关关位位:接接收收同同步步控控制制电电路路自自动动去去除除起起始始位位、奇奇 偶偶校校验验位位和和停停止止位位。(4) 串串到到并并转转换换:同同步步控控制制电电路路控控制制接接收收移移位位寄寄存存器器将将串串 行行数数据据转转换换成成并并行行数数据据送送入入接接收收数数据据缓缓冲冲器器(THR)中中。(5) 检检查查正正确确性性:接接收收同同步步控控制制电电路路对对数数据据的的正正确确性性进进行行检检查查。 如如果果在在检检测测字字符符格格式式时时有有错错误误,则则通通过过线线路路状状态态寄寄存存器器 设置相应的出错标志。设置相应的出错标志。2024/7/2764j.g.mao263.net2.发送部分发送部分l发发送送部部分分负负责责接接收收CPU送送来来的的并并行行数数据据,并并通通过过移移位位的的方方法法将将其其变变换换成成串串行行信信号号,最最后后通通过过发发送送端端SOUT发发送送出出去去。(1) CPU的的并并行行数数据据存存入入发发送送保保持持寄寄存存器器中中,由由 发发送送同同步步控控制制电电路路控控制制将将该该数数据据经经过过发发送送移移 位位寄寄存存器器处处理理,按按照照事事先先规规定定的的格格式式加加上上起起 始始位位、奇奇偶偶校校验验位位和和停停止止位位,变变换换成成串串行行数数 据帧后由据帧后由SOUT端输出串行数据信号。端输出串行数据信号。l(2) 当当数数据据进进入入发发送送移移位位寄寄存存器器后后,发发送送保保持持 寄存器自动变空,寄存器自动变空,CPU即可再次写入数据。即可再次写入数据。2024/7/2765j.g.mao263.net3. 通信线路控制寄存器通信线路控制寄存器l线线路路控控制制寄寄存存器器(LCR)接接收收CPU用用OUT指指令令写写入入的的控控制制命命令令。控控制制寄寄存存器器的的内内容容可可以以通通过过IN指指令令读读出。线路控制寄存器的格式:出。线路控制寄存器的格式:2024/7/2766j.g.mao263.net4.通信线路状态寄存器通信线路状态寄存器l线线路路状状态态寄寄存存器器LSR记记录录串串行行数数据据发发送送和和接接收收的的状状态,以供态,以供CPU查询。线路状态寄存器的格式:查询。线路状态寄存器的格式:2024/7/2767j.g.mao263.net5. Modem控制寄存器控制寄存器lModem控控制制寄寄存存器器MCR用用于于设设置置16550/8250与与通通信设备之间联络应答的输出信号,其格式如所示。信设备之间联络应答的输出信号,其格式如所示。2024/7/2768j.g.mao263.net6. Modem状态寄存器状态寄存器lModem状状态态寄寄存存器器MSR反反映映8250与与通通信信设设备备之之间间应应答答联联络络输输入入信信号号的的当当前前状状态态以以及及这这些些信信号号的的情情况况,各位的含义如图所示。各位的含义如图所示。2024/7/2769j.g.mao263.net7.中断允许寄存器中断允许寄存器IERl反反映映了了接接收收器器和和发发送送器器以以及及Modem是是否否允允许许中中断断的的情情况况,通通过过设设置置可可以以指指定定其其中中的的某某些些部部件件允允许许中中断断。它是一个可读可写的寄存器。它是一个可读可写的寄存器。2024/7/2770j.g.mao263.net8.中断识别寄存器中断识别寄存器IIRl中中断断识识别别寄寄存存器器IIR,可可以以识识别别4个个中中断断源源引引起起的的中中断断。接接收收器器线线路路状状态态中中断断、接接收收数数据据准准备备好好中中断断、发送保持寄存器空中断和调制解调器状态中断。发送保持寄存器空中断和调制解调器状态中断。2024/7/2771j.g.mao263.net9. 波特率发生器和除数寄存器波特率发生器和除数寄存器l16550及及8250使使用用1.8432MHz的的基基准准输输入入时时钟钟,分分频频后后产产生生所所需需的的内内部部基基准准脉脉冲冲,作作为为接接收收器器和和发发送送器器的的同同步步脉脉冲冲,以以控控制制接接收收移移位位寄寄存存器器和和发发送送移移位位寄存器的移位操作。寄存器的移位操作。l发发送送或或接接收收串串行行数数据据时时使使用用的的时时钟钟频频率率是是数数据据传传送送波特率的波特率的16倍倍l除数值与波特率的关系:除数值与波特率的关系:除数除数1843200(波特率(波特率16)2024/7/2772j.g.mao263.net三、三、16550/8250引脚信号引脚信号l几个最重要的信号lRCLK 接收时钟lSIN 串行输入引脚lSOUT 串行数据输出。lA2,A1,A0 内部寄存器选择输入信号。2024/7/2773j.g.mao263.net四、串行接口的编程及应用四、串行接口的编程及应用l1.1.串行接口的端口地址分配串行接口的端口地址分配2024/7/2774j.g.mao263.net2.串行接口初始化串行接口初始化l串行接口初始化的任务:串行接口初始化的任务:l(1)设置波特率)设置波特率l(2)确定通信的具体格式)确定通信的具体格式l(3)设置操作方式)设置操作方式l(4)设定是否使用中断、是否自测试操作等等。)设定是否使用中断、是否自测试操作等等。2024/7/2775j.g.mao263.net设置波特率方法设置波特率方法l计算除数值计算除数值除数除数1843200(波特率(波特率16)l写线路控制寄存器,使写线路控制寄存器,使DLAB=1以访问除数寄存器以访问除数寄存器l先将除数低字节写入低字节寄存器端口先将除数低字节写入低字节寄存器端口l再将除数高字节写入高字节寄存器端口再将除数高字节写入高字节寄存器端口l注注意意:线线路路控控制制寄寄存存器器地地址址:3FBH(COM1),2FBH(COM2)除除数数低低字字节节寄寄存存器器: 3F8H(COM1),2F8H(COM2)除数高字节寄存器:除数高字节寄存器: 3F9H(COM1),),2F9H(COM2)2024/7/2776j.g.mao263.net设置波特率程序段设置波特率程序段l假设设置波特率为假设设置波特率为11520,则初始化程序片段如下,则初始化程序片段如下:MOVAL,10000000B;DLAB=1MOVDX,3FBH;指向线路控制寄存器端口指向线路控制寄存器端口OUTDX,AL;写入线路控制寄存器写入线路控制寄存器MOVAL,0AH;置产生置产生11520波特率的除数低字节波特率的除数低字节MOVDX,3F8H;除数低字节寄存器口地址除数低字节寄存器口地址OUTDX,AL;写入除数低字节写入除数低字节MOVAL,00;除数高字节除数高字节INCDX;指向除数高字节寄存器口地址指向除数高字节寄存器口地址OUTDX,AL;写入除数高字节写入除数高字节2024/7/2777j.g.mao263.net设置通信数据格式方法设置通信数据格式方法l根据要求确定格式根据要求确定格式l将格式字写入线路控制寄存器,并使将格式字写入线路控制寄存器,并使DLAB=0以正常以正常工作工作l例子:假设一帧数据含有例子:假设一帧数据含有8位数据、位数据、1位停止位、奇校位停止位、奇校验,则有关程序如下:验,则有关程序如下:MOVAL,00001011B;通信控制寄存器控制字通信控制寄存器控制字MOVDX, 3FBH;线路控制寄存器口地址线路控制寄存器口地址OUTDX, AL;写入线路控制寄存器写入线路控制寄存器2024/7/2778j.g.mao263.net设置操作方式设置操作方式禁止中断输出禁止中断输出允许中断输出允许中断输出自测工作方式自测工作方式向向Modem控制寄存控制寄存器写入相器写入相应控制字应控制字2024/7/2779j.g.mao263.net禁止中断输出禁止中断输出lMOVAL,00000011B;禁止中断输出禁止中断输出lMOVDX, 3FCH;Modem控控制制寄寄存存器器地地址址OUTDX, AL;写入线路控制寄存器写入线路控制寄存器2024/7/2780j.g.mao263.net允许中断输出允许中断输出lMOVAL,00001111B;禁止中断输出禁止中断输出lMOVDX, 3FCH;Modem控控制制寄寄存存器器地地址址OUTDX, AL;写入线路控制寄存器写入线路控制寄存器2024/7/2781j.g.mao263.net自测工作(自发自收)自测工作(自发自收)lMOVAL,00010011B;禁止中断输出禁止中断输出lMOVDX, 3FCH;Modem控控制制寄寄存存器器地地址址OUTDX, AL;写入线路控制寄存器写入线路控制寄存器2024/7/2782j.g.mao263.net设置中断允许寄存器设置中断允许寄存器l仅仅 允允 许许 接接 收收 中中 断断 和和 发发 送送 中中 断断 : ( COM1)MOVAL, 00000011; 仅仅 允允 许许 收收 、 发发 中中 断断MOVDX, 3F9HOUTDX, AL;写入中断允许寄存器写入中断允许寄存器2024/7/2783j.g.mao263.net3.串行通信的串行通信的BIOS功能调用功能调用初始化串行端口初始化串行端口取串行端口状态取串行端口状态读串行端口数据读串行端口数据写串行端口数据写串行端口数据 利用BIOS的INT 14H中断调用中的不同功能,对串行口进行不同操作。2024/7/2784j.g.mao263.net初始化通信端口初始化通信端口l入入口口:AH=00,AL=初初始始化化参参数数,DX=端端口口标标识识(COM1=0,COM2=1)l出口:出口:AH=线路状态字节,线路状态字节,AL=Modem状态字节。状态字节。2024/7/2785j.g.mao263.net读通信端口状态读通信端口状态l入入 口口 : AH=03H, DX=通通 信信 端端 口口 ( COM1=0,COM2=1)。)。l出口:出口:AH=线路状态字节,线路状态字节,AL=Modem状态字节状态字节2024/7/2786j.g.mao263.net读通信端口数据读通信端口数据l入入 口口 : AH=02H, DX=通通 信信 端端 口口 ( COM1=0,COM2=1),),AL=要写入的字符。要写入的字符。l出口:出口:AL=接收的字符接收的字符l例子:接例子:接COM1一个字符一个字符lMOVAH,02HMOVDX,0INT 14H2024/7/2787j.g.mao263.net写通信端口数据写通信端口数据l入入 口口 : AH=01H, DX=通通 信信 端端 口口 ( COM1=0,COM2=1),),AL=要写入的字符。要写入的字符。l例子:向例子:向COM2写入写入MlMOVAH,01HMOVDX,1MOVAL,MINT 14H2024/7/2788j.g.mao263.net串行通信实例串行通信实例l两两台台微微机机利利用用COM1(串串行行口口1)进进行行查查询询通通信信,只只用用三根连接线。三根连接线。l双双机机通通信信的的要要求求如如下下:数数据据为为7位位、1位位停停止止位位、奇奇校校验验、波波特特率率为为1200;双双机机同同时时运运行行该该程程序序,一一方方键键入入的的字字符符在在另另一一方方屏屏幕幕上上显显示示,当当按按下下小小写写字字母母q时时,结结束通信回到束通信回到DOS。l程序见教材程序见教材P.291(自己阅读)自己阅读)2024/7/2789j.g.mao263.net7.5 A/D和和D/A转换接口转换接口计算机系统计算机系统被控对象被控对象2024/7/2790j.g.mao263.net7.5.1 D/A转换器转换器l一、一、D/AD/A转换器的工作原理转换器的工作原理l1 1权权电电阻阻式式D/AD/A转转换换器器U。=(Rf /R)Vref2-(i-1)Dn-i 2024/7/2791j.g.mao263.net2T型电阻网络式型电阻网络式D/A转换器转换器lU U。= =(RfRf/2R/2R)VrefVref2-(i-1)2-(i-1)DnDn-i-i 2024/7/2792j.g.mao263.net二、二、D/A转换器主要指标转换器主要指标l1 1转换精度转换精度lD/AD/A转转换换精精度度可可分分为为绝绝对对精精度度和和相相对对精精度度两两种种衡量标准。衡量标准。l绝绝对对精精度度是是指指对对应应于于给给定定的的满满度度数数字字量量,D/AD/A转换器实际输出值与理论值之间的误差。转换器实际输出值与理论值之间的误差。l相相对对精精度度也也称称非非线线性性度度,指指在在满满度度已已校校正正的的标标准准情情况况下下,在在整整个个刻刻度度范范围围内内,对对应应于于任任一一数数码的模拟量输出与它的理论值之差。码的模拟量输出与它的理论值之差。2024/7/2793j.g.mao263.net2 2分辨率分辨率l分分辨辨率率指指D/AD/A转转换换器器所所能能分分辨辨最最小小量量化化信信号号的的能能力力,这这是是对对微微小小输输入入量量变变化化的的敏敏感感程程度度的的描描述。述。l位数越多,分辨率位数越多,分辨率ln n位二进制位二进制D/AD/A转换器的分辨率一般用来表示转换器的分辨率一般用来表示2024/7/2794j.g.mao263.net三、典型三、典型D/AD/A转换器转换器l1 1 8 8位位DAC0832DAC08322024/7/2795j.g.mao263.net2. 12位位DAC12102024/7/2796j.g.mao263.net四、四、DAC应用应用l带锁存器带锁存器D/AD/A应用应用2024/7/2797j.g.mao263.net例例1.用用0832产生三角波产生三角波l要要求求三三角角波波电电压压范范围围从从1 1V V到到3 3V V变变化化,08320832口口地地址为址为9898F0HF0H。1V3V0V2024/7/2798j.g.mao263.net例例1解解方法:方法:算出最低和最高电压对应数字量算出最低和最高电压对应数字量Dmin和和Dmax,然后从低电压数字量开始送然后从低电压数字量开始送D/A,以后数字以后数字量加量加1到最高值,再回到最低值,循环进行即可。到最高值,再回到最低值,循环进行即可。由由 可知:可知:Dl=(Vl/Vref)*255=(1/5)*255=51=33HDm=(3/5)*255=153=99H2024/7/2799j.g.mao263.net例例1程序片段程序片段MinD EQU 33HMaxD EQU 99HMOV DX,98F0H ;0832端口地址端口地址LP1:MOV AL,DMin-1 ;取最小值取最小值-1LP2:INCAL;数字量增数字量增1OUTDX, AL;送送0832输出输出 CALL DELAY;调延时程序调延时程序TEST AL,MaxD ;测试是否到最大值;测试是否到最大值JNZ LP2 ;未达最大继续加;未达最大继续加1输出输出JMPLP1 ;到最大回到最小输出到最大回到最小输出2024/7/27100j.g.mao263.net7.5.2 A/D转换器转换器l一、一、A/DA/D转换器主要指标转换器主要指标l1转换精度转换精度l转转换换精精度度反反映映了了A/D转转换换器器的的实实际际输输出出接接近近理理想想输输出出的的精精确程度。确程度。lA/D转转换换器器的的精精度度通通常常采采用用数数字字量量的的最最低低有有效效位位LSB来来表表示。示。l2分辨率分辨率l分分辨辨率率表表示示了了A/D转转换换器器能能够够分分辨辨最最小小量量化化信信号号的的能能力力,与与数数据据位位数数有有关关,位位数数越越多多,分分辨辨率率越越高高。对对于于n位位二二进进制制的的A/D转转换换器器来来说说,其其能能分分辨辨最最小小量量化化的的信信号号的的能能力力为为2n位,因此,其分辨率为位,因此,其分辨率为2n。2024/7/27101j.g.mao263.net二、二、A/D转换器的模数关系转换器的模数关系D=其中:其中:D D为数字量,为数字量,VinVin为输入模拟电压,为输入模拟电压,VrefVref为参考电压为参考电压2024/7/27102j.g.mao263.net三、三、ADC分类及特点分类及特点l1计数器式计数器式ADC特点:简单、便宜,但是速度比较慢。(原理性)特点:简单、便宜,但是速度比较慢。(原理性)l2双积分式双积分式ADC特点:转换精度高,抗干扰能力强(特别是抗工频干特点:转换精度高,抗干扰能力强(特别是抗工频干扰能力强,是其它扰能力强,是其它A/转换器所不及的),适合于速度转换器所不及的),适合于速度不很高的场合。不很高的场合。l3逐次逼近式逐次逼近式ADC特点:转换速度快、精度高。特点:转换速度快、精度高。常用常用l4并行高速并行高速ADC特点:速度高。内部结构复杂,成本较高,一般用于特点:速度高。内部结构复杂,成本较高,一般用于速度要求很高的场合。速度要求很高的场合。2024/7/27103j.g.mao263.net四、典型四、典型A/DA/D转换器转换器ADC0809ADC08092024/7/27104j.g.mao263.net五、五、A/D转换器应用转换器应用在一个采用8086为核心的数据采集处理系统如图所示,其中R1=10K,R2为20K的电位器。1.写出启动通道IN5A/D转换的程序片段2.如果得到的数字量为3FH,则R2的值被调至多少K?2024/7/27105j.g.mao263.net1.A/D应用程序清单应用程序清单l; ;IN5IN5地址:启动地址地址:启动地址F651HF651H,查询查询EOCEOC地址地址F650HF650H lSTART:MOV DX,0F651H;指向指向IN5端口端口lOUTDX,AL; 选通选通IN5并启动并启动A/D转换转换lMOV DX,0F650H;指向指向EOC对应端口对应端口lTWAIT:INAL,DX;查询查询EOClTEST AL,01HlJZTWAITlMOV DX,0F651H;指向指向IN5数据端口数据端口lINAL,DXlHLT2024/7/27106j.g.mao263.net2.当数字量为当数字量为3FH时,由于时,由于所以所以Vin=Vref*(D/FFH) =5*(3FH/FFH)=1.235294118=1.235VD=2024/7/27107j.g.mao263.net
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号