微机原理第8章-1_第1页
微机原理第8章-1_第2页
微机原理第8章-1_第3页
微机原理第8章-1_第4页
微机原理第8章-1_第5页
已阅读5页,还剩63页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、可编程定时/计数器接口芯片8253可编程并行接口芯片8255A串行输入输出接口数/模与模/数转换接口8253定时器基本概念、控制字、赋初值值、地址分配、6种工作方式8255并行接口基本概念、控制字、地址分配、3种工作方式串行通信基本概念、同步、异步串行通信格式、RS232标准引脚与连线定时方法定时方法软件定时硬件定时:不可编程硬件定时与课编程硬件定时作用作用定时:提供恒定的时间基准延时:等待指定的时间计数:对外部脉冲计数控制:输出指定宽度的脉冲(PWM);按照一定的频率输出脉冲可编程定时器可编程定时器/计数器芯片计数器芯片8253/8254每片具有3个独立的16位计数通道(计数器0、1、2)。

2、每通道最大可以实现65536脉冲计数,8253计数速率达2.6MHz,8254可达10MHz每个计数器可以单独作为计数或定时使用,都可以按照二进制(1到65536)或BCD码(1到10000)计数(减1计数)所有输入、输出电平与TTL电平兼容可以对系统内部脉冲和外部脉冲进行计数每个通道可以提供6种不同的工作方式。工具工作方式不同,计数触发条件和计数结束方式不同采取减1计数:先赋初值,接收到一个脉冲,计数值减1数据总线和地址线(片选CS与A0A1)时钟输入(CLK)门控输入(GATE)输出(OUT)读写控制控制寄存器初值寄存器当前计数值寄存器一片占用四个端口地址(由A0A1 确定)控制字:基地址

3、3写计数初值:基地址0,1,2读取当前计数值:基地址0,1,2由片选信号CS确定基地址工作方式计数方式一般不去读当前计数值而是在计数时产生相应信号如通道1采用方式1,BCD码计数,计数初值为100H则控制字:01110011计数初值大于255读取时需要先锁存其余8位自动为0MOV DX,303HMOV AL,00010100B ; 通道0读写低8位、方式2,二进制计数OUT DX,ALMOV DX,300HMOV AL,100 ;通道0的计数初值100OUT AL,DXMOV DX,303HMOV AL,01100111B ;通道1读写高8位,方式3,BCD计数MOV DX,301HMOV A

4、L,10HOUT DX,AL 基地址300H。通道0采用二进制计数,初值为100,工作方式2;通道1采用BCD计数,初值为1000,工作方式3写入初始值写入初始值MOV AX,1000OUT DX,ALMOV AL,AHOUT DX,ALMOV DX,Base+3MOV AL,01010100BOUT DX,AL如通道1,方式2,二进制计数,计数初值255,先写低字节再写高字节初值为0,即为计数65536次(写两次0)初值1000BCD计数初值23H,表示计数23次方式0:计数结束中断方式方式1:单稳态触发器(可编程单脉冲发生器)方式2:分频器(速率发生器)方式3:方波发生器方式4:软件触发的

5、选通信号发生器方式5:硬件触发的选通信号发生器当写入控制字后, OUT输出低电平;写入计数初值后,开始进行减1计数计数值变成0时,OUT成高电平,可作为中断触发条件GATE1时允许减1计数;0时停止,恢复1又继续初值一次有效,不会自动重新开始计数计数过程中可改变初值,重新开始计数用作普通的计数或定时计数结束中断方式装入初值后,OUT输出高电平,但不计数GATE由低到高跳变后,开始减1计数,且OUT变成低电平计数值到0,OUT恢复成高电平,形成一个负单脉冲计数过程中,再次遇到GATE上升沿,重新开始计数初值不需要重新输入,再次遇到GATE上升沿又会自动重新开始计数。初值改变后,下一次GATE上升

6、沿有效用作产生单脉冲或等宽度脉冲(由GATE控制)单脉冲发生器进入该方式后,OUT输出高电平写入计数初值后,开始减1计数,OUT输出不变计数到“1”,OUT输出低电平计数到“0”时,自动重新装入初值,实现循环计数计数过程中,GATE变为0,则暂停减“1”计数;变成1后重新开始计数可用于输出PWM;定时速率发生器(分频器)进入该方式,OUT输出高电平写入初值,如果GATE有效,则开始减1计数,OUT保持高电平当计数值达到一半时,OUT由高变低,继续计数计数到0时,自动装入初值,重新计数,OUT又变高计数过程中,若GATE无效,停止计数,恢复后从初值开始用于产生占空比接近1的方波方波发生器方波频率

7、:时钟频率/计数初值通道2产生600Hz的方波(基地址40H)CLK频率为1193180Hz计数初值为1193180/600=1988(07C4H)初始化MOV AL,10110110BOUT 43H,ALMOV AL,0C4HOUT 42H,ALMOV AL,07HOUT 42H,AL先写低字节,再写高字节由于8253是16位计数器,其计数初值最大为0(计数65536个脉冲),如输入脉冲频率与输出脉冲频率之比超过65536,则必须利用8253的多个通道实现。输入时钟CLK的频率为2MHz,希望产生2Hz的方波,2MHz与2Hz的比值为1000000,超过了一个计数器的计数能力,可以利用825

8、3的两个通道实现:输入的2MHz脉冲接入CLK0,OUT0再连接到CLK1,作为通道1的输入,计数器0和计数器1的初值都是1000,则OUT1输出的就是2Hz的方波。输出脉冲频率输入脉冲频率输入脉冲周期所需要的定时间隔计数初值进入该方式,OUT输出高电平装入初值,如果GATE为高电平,则立即开始减1计数计数到0,OUT输出一个宽度为一个时钟周期的负脉冲初值一次有效,需要重新装入初值计数过程中,如果GATE变低,则停止计数,恢复后重新从初值开始计数用作普通计数或定时,与方式0类似软件触发方式进入该方式,OUT输出高电平装入初值后,等待GATE的上升沿,开始计数计数到0时,输出一个宽度为一个时钟周

9、期的负脉冲计数结束自动装入初值,但要等待下一个GATE的上升沿用作计数或定时硬件触发方式方式2和3可以实现自动重复计数工作方式GATE门控条件计数过程中GATE再次有效计数过程中改初值自动重复计数OUT波形0高电平继续计数立即有效否计数结束时上升沿1上升沿重新计数下次有效否指定宽度负脉冲2高电平重新计数下次有效是占空比可变脉冲3高电平重新计数下半周期有效是方波4高电平继续计数立即有效否一个CLK宽度负脉冲5上升沿重新计数下次有效否一个CLK宽度负脉冲一片8253,其输入时钟频率为1193180Hz(固定),端口地址40H到43H方式3,二进制计数,作为微机系统本身的定时器,计数初值为0(控制字

10、为00110110B,36H) 产生定时中断08H,定时间隔约55毫秒改变这个初值,则定时间隔变化,如初值为1193,则间隔1毫秒MOV AL,36H ;方式3,二进制计数,先读写低8位再读写高8位OUT 43H,ALMOV AL,0OUT 40H,AL ;将计数初值分两次写入通道0的初值寄存器OUT 40H,AL方式 2,二进制计数,计数初值为 18(控制字为01010100B,54H) 产生15.0857s的定时间隔 完成对动态内存的刷新 MOV AL,54H ;工作方式2,二进制计数,只读写低8位OUT 43H,ALMOV AL,18OUT 41H,AL ;将计数初值写入通道1的初值寄存

11、器方式3下,二进制计数,微机启动时由BIOS将其计数初值设置为 533H (1331) 扬声器发声 门控信号GATE2由8255A芯片的PB0控制。输出OUT2与8255A芯片的PB1通过与门连接到功放再连接到扬声器MOV AL,0B6H ;方式3,二进制计数,先读写低8位再读写高8位OUT 43H,ALMOV AL,33HOUT 42H,AL ;将计数初值写入通道1的初值寄存器MOV AL,5HOUT 42H,ALGENSOUND PROC MOV AL,0B6H OUT 43H,AL MOV DX,12H MOV AX,34DCH DIV DI OUT 42H,AL MOV AL,AH O

12、UT 42H,AL IN AL,61H MOV AH,AL OR AL,3 OUT 61H,ALWAITL: MOV CX,5801DELAY: LOOP DELAY DEC BX JNZ WAITL MOV AL,AH OUT 61H,AL .RET GENSOUND ENDP 并行通信是以多根数据线在CPU与外设之间传输数据,传输往往以字节(8位)或字(16位)为单位,传输速度快,计算机系统中的数据总线就是采用的并行方式。CPU与并行打印机、开关量或数字量输入输出设备等的数据传输,均通过并行方式实现。 适合于短距离数据传输(几m或几十m)和传输速度要求高的场合 并行数据输入输出三个相互独立

13、的输入三个相互独立的输入/输出通道输出通道PAPBPC三个通道分成两组控制三个通道分成两组控制A组(PA+PC高4位)B组(PB+PC低4位)工作方式工作方式0到方式到方式2:PA可以采用任意的可以采用任意的3种工作方式,种工作方式,端口端口PB可以采用方式可以采用方式0和和1,端口,端口PC只能采用方式只能采用方式0 独立的8位I/O口输入/输出数据的锁存独立的8位I/O口输出数据的锁存1个独立的8位I/O口,或2个独立的4位I/O口输出数据的锁存基本输入/输出PA/PB的控制信号选通信号,确定芯片的基地址选择芯片内部的某个寄存器寄存器的地址确定寄存器的地址确定由由A2A15(A9)选择某个

14、选择某个8255A芯片(接芯片(接CS引脚)引脚)l确定基地址确定基地址BASE由由A0A1选择芯片内部的某个寄存器选择芯片内部的某个寄存器lBASE+0BASE+3寄存器类型寄存器类型PA口的数据寄存器(口的数据寄存器(BASE+0)PB口的数据寄存器(口的数据寄存器(BASE+1)PC口的数据寄存器(口的数据寄存器(BASE+2)芯片的控制寄存器(芯片的控制寄存器(BASE+3)对端口对端口C进行置位进行置位/复位操作复位操作D0:置位或复位(1置位)D3、D2、D1:选择C端口的某一位00:方式001:方式11x:方式2000:PC0001:PC1111:PC7最高位(D7)为1最高位(

15、D7)为0控制工作方式控制工作方式D0:端口C低4位输入或输出(0输出)D1:端口B输入或输出(0输出)D2:端口B工作方式(1方式1;0方式0)D3:端口C高4位输入或输出D4:端口A输入或输出D6、D5:端口A工作方式方式0:基本输入/出方式方式1:选通输入/出方式方式2:双向传送方式PA/PB/PCPA/PBPA特点特点PA、PB、PC均作为基本的输入输出口PA、PB、PC只能进行单向传送用IN/OUT指令对PA、PB、PC端口进行操作用途用途无条件传送方式。没有任何握手控制信号查询方式。其中任一位作为查询信号某片8255A基地址为200H,PA输出,PC输入,均工作于方式0,其控制字为

16、10001001B(89H)。初始化指令:MOV DX,203HOUT DX,89H设8255A端口地址端口A 218H端口B 219H端口C 21AH控制端口 21BH MOV DX, 21BH OUT DX,10000010B MOV DX,219H IN AL,DX MOV DX,21AH OUT DX,AL端口B接8个开关端口C接8位LED适用于PA和PB端口,可作为输入输出端口PC某些位作为控制信号,其余位可进行基本输入输出控制PA需要3个控制信号控制PB需要3个控制信号PA、PB、PC只能进行单向传送PA/PB端口写用IN/OUT指令操作, PC端口用置位/复位PA、PB可同时工作

17、在方式1,也可单独工作在方式1PC3到到PC5PC0到到PC2PC3/PC6/PC7STB:选通信号,由外设提供。有效表示外设已经将数据送入缓冲器。PC4/PC2IBF:输入缓冲器满,送外设。有效表示数据已经送到输入锁存器,由STB置位。PC5/PC1INTR:中断请求信号,送CPU。PC3/PC0INTE:中断使能(内部),由PC4/PC2置位当外设的数据已经送到8255A的端口数据线上时,用STB把数据锁入8255A的输入锁存器选通信号经过一段时间后,IBF变高,通知外设,阻止其继续输入数据IBF变高后,INTR变高,8255A向CPU请求中断CPU响应中断,读入数据,使IBF变低,通知外

18、设可以继续输入数据OBF:输出缓冲器满,送外设,表示数据已经输出到指定端口等待外设接收。PC7/PC1ACK:外设应答信号。有效表示外设已经接收8255A的输出数据。PC6/PC2 INTR:中断请求信号,ACK有效后向CPU请求中断。PC3/PC0INTE:同输入。由PC6/PC2置位CPU输出数据,发出WR信号使OBF有效,通知外设接收数据外设接收数据后,发出ACK信号,使OBF无效,并使INTR有效,以继续输出数据 MOV DX,203HMOV AL,10110100B OUT DX,AL ;写控制字MOV AL,00001001BOUT DX,AL ;PC4置1,使得PA输入中断允许I

19、NTE为1MOV DX,200H IN AL,DX ;读取PA端口输入数据MOV DX,201HOUT DX,AL ;从PB端口发送数据MOV DX,203HMOV AL,00001101B OUT DX,AL ;利用PC置位复位控制字从PC6输出高电平8255A的基地址为200H,PA端口工作于方式1,用于输入,PB端口工作于方式1,用于输出,PC6用于输出,要求允许PA输入中断 MOV DX,202HL1: IN AL,DX ;读取PC端口内容 TEST AL, 00010000B ;判断PC4是否为1 JZ L1 MOV DX,200H IN AL,DX8255A的基地址为200H,PA

20、端口用于方式1的输入,采用查询方式读取PA端口数据 ,PB端口用于方式1的输出,采用查询方式从PB端口输出数据 MOV DX,202HL1: IN AL,DX ;读取PC端口内容 TEST AL, 00000010B ;判断PC1是否为1 JNZ L1 MOV DX,200H IN AL,DX仅适用于PA端口端口,可进行双向8位数据传送PC提供5位控制信号(PC3PC7) ,其余位可进行基本输入输出用IN/OUT指令对PA端口进行读写操作,端口PC用置位/复位PB可以工作在方式0或1下方式0:PC0到PC2作为输入输出口方式1:PC0到PC2作为PB方式1下的控制信号STB(PC4) 、 IB

21、F(PC5)OBF(PC7) 、 ACK(PC6)INTR(PC3)INTE1(PC6)、INTE2(PC4) MOV DX,203H MOV AL,11000110B OUT DX,AL8255A芯片的基地址为200H,PA端口用于方式2,PB端口用于方式1输入 某计算机系统采用8255A芯片检测8个开关的状态,并根据开关状态控制8个发光二极管 MOV DX,IO8255K MOV AL,8BH OUT DX,AlL1: MOV DX,IO8255C ;PC输入 IN AL,DX MOV DX,IO8255A ;PA输出 OUT DX,AL 1.掌握串行通信的基本概念掌握串行通信的基本概念2

22、.了解了解RS232C异步串行通信标准和异步串行通信标准和8250串行接口芯片串行接口芯片定义定义利用一条传输线将数据一位位地顺序传送线路简单,成本低适用于远距离通信传输速度慢异步:15米以内,最长25米差动可达1200米以上连接方式连接方式单工半双工全双工作用作用长距离传输避免信号畸变数据压缩提供纠错功能Modem的传输率的传输率波特率 每个调制信号传送比特数(4/6/9)形式形式外置Modem:采用PC的串口内置Modem:自带串口ASK:调幅法,以幅值大小表示0和1 FSK:频移法,采用两个固定的频率代表数字0和1 PSK:相移法,以相位差表示0和1 PAM:相位幅值调制如何识别某一位:

23、由波特率确定发送方与接收方的格式必须一致以一个字符为传输单位以一个字符为传输单位两个字符间时间间隔不固定的同一字符中的相邻位间时间间隔固定数据传输格式数据传输格式起始位(1)数据位(5到8)校验位(0到1)停止位停止位(1,1.5,2)传输速率较慢传输速率较慢(19.2KBPS)(19.2KBPS)RS2329600/(1+8+0+1)=960字符/秒每秒钟传送的二进制位数每秒钟传送的二进制位数是衡量数据传送速率的指标,也叫传输率110/300/600/1200/2400/4800/9600/192001位起始位,8位数据位,无校验位,1位停止位9600波特率硬件握手硬件握手软件握手软件握手X

24、onXoff控制发送自定义字符专门信号表示双方就绪确保通信双方处于就绪状态确保通信双方处于就绪状态Xon暂停发送Chr(17)Xoff恢复发送Chr(19)以帧为传输单位,每帧包含多个字符以帧为传输单位,每帧包含多个字符两个字符间时间间隔相等同一字符中的相邻位间时间间隔也相等每帧数据前后均有若干同步字符每帧数据前后均有若干同步字符发送方与接收方需要统一的时钟信号发送方与接收方需要统一的时钟信号CRC校验信息和校验字段可任意选定比异步快比异步快( (可达可达800KBPS)800KBPS)专用时钟信号线硬件提取同步信号SSI接口RS232,RS422,RS485 异步SSI 同步USB 异步,同

25、步1CD载波检测2RXD接收数据3TXD发送数据4DTR数据终端就绪 接收方发5GND地6DSR数据就绪发送方检7RTS请求发送接送方发8CTS清除发送发送方检9RI振铃指示电气标准电气标准引脚引脚(9针针)“1”: -3-25V“0”: +3+25V硬件握手信号串口1串口2其它扩充串口(多串口卡)USB-RS232RS232-RS422/485、RS422/485-RS232全双工、双缓冲器发送和接收器波特率50到19200;数据位5到8;停止位1、1.5、2可以产生终止符可进行奇偶校验可以检测奇偶错、溢出错、帧校验错具有优先级中断控制逻辑异步,具有DTR/DSR和RTS/CTS硬件握手新芯

26、片16550,兼容8250,带16字节输入/出缓冲区通信线控制寄存器通信线控制寄存器(3FB/2FBH)0、1位:数据位数(00到11对应5到8)2位:停止位(01位;11.5或2位)3-5位:校验方式6位:中止位(0:正常通信 1:中止通信)7位:固定为0除数寄存器(除数寄存器(3F9/2F9和和3F8/2F8H 115200)波特率DLMDLL3000180120000602400003036000020480000109600000CDLM/DLLLCRModem控制寄存器控制寄存器(3FC/2FCH)0位:DTR信号有效(用于硬件握手)1位:RTS信号有效(用于硬件握手)2位:OUT1

27、引脚输出为03位:使用中断时OUT2为14位:正常通信为0,自检为1Modem状态寄存器状态寄存器(3FE/2FEH)0位:CTS引起电平变化1位:DSR引起电平变化2位:RI引起电平变化3位:RLSD引起电平变化4位:CTS有效(用于硬件握手)5位:DSR有效(用于硬件握手)6位:RI有效7位:RLSD有效MCRMSR通信线状态寄存器通信线状态寄存器(3FD/2FDH)0位:接收数据就绪1位:溢出错2位:奇偶错3位:帧格式错4位:检测到终止字符5位:发送寄存器空6位:发送移位寄存器空7位:为0LSR中断允许寄存器中断允许寄存器(3F9/2F9H)0位:接收数据就绪中断允许1位:发送寄存器空中

28、断允许2位:接收错误中断允许3位:Modem状态变化中断允许中断识别寄存器中断识别寄存器(3FA/2FAH)0位:有无中断(0无;1有)位1、2v00:Modem状态变化v01:发送寄存器空v10:接收数据就绪v11:接收数据错误IERIRR查询方式查询方式接收方:检测LSR的第0位,为1则有数据,可接收发送方:检测LSR的第5位,为1则可发送新数据中断方式中断方式接收方发送方设置波特率(DHM/DLL)设置数据位、停止位和校验(LCR) 发送握手信号(MCR) (0BH)设置中断允许寄存器(IER) (01H)处理中断设置波特率(DHL/DLL)设置数据位、停止位和校验(LCR)检测握手信号(MSR) (10H/20H/30H)设置中断允许寄存器(IER) (02H)处理中断模/数转换(A/D转换,Analog to Digit)就是将模拟量转换数字量;而数/模转换(D/A转换,Digit To Analog)则是把数字量转换成模拟量 模/数转换的主要方法包括:逐次逼近式和积分式,采用的主要芯片有美国AD公司的AD0809(8位)和AD574(12位) 数/

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论