可编程接口芯片及应用课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《可编程接口芯片及应用课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 可编程 接口 芯片 应用 课件
- 资源描述:
-
1、第第9 9章章 可编程接口芯片及应用可编程接口芯片及应用第9章 可编程接口芯片及应用9.1 可编程接口芯片概述9.2 可编程计数/定时器82539.3 可编程并行接口芯片8255A第第9 9章章 可编程接口芯片及应用可编程接口芯片及应用 CPU要与外设交换信息,必须通过接口电路,在接口电路中一般具有如下电路单元:输入输出数据缓冲器和锁存器,以实现数据的I/O。控制命令和状态寄存器,用以存放对外设的控制命令,以及外设的状态信息。地址译码器,用来选择接口电路中的不同端口(寄存器)。读写控制逻辑。中断控制逻辑。9.1 可编程接口芯片概述第第9 9章章 可编程接口芯片及应用可编程接口芯片及应用9.2
2、可编程计数器定时器8253计数/定时的工作原理计数计数:对外部事件发生次数进行计数对外部事件发生次数进行计数 定时和计数本质上是相同的,它们都是定时和计数本质上是相同的,它们都是对一个输入脉冲进行计数,如果输入脉冲的对一个输入脉冲进行计数,如果输入脉冲的频率一定,那么记录脉冲的个数与所需的时频率一定,那么记录脉冲的个数与所需的时间是一一对应的关系。间是一一对应的关系。例如例如:输入脉冲频率为输入脉冲频率为2MHz,那么计数,那么计数2 106 定时定时1秒秒因此,使用同一个芯片,既能计数,又能定时因此,使用同一个芯片,既能计数,又能定时定时器定时器/计数器计数器第第9 9章章 可编程接口芯片及
3、应用可编程接口芯片及应用。9.2.1 8253功能及结构 Intel 8253具有3个独立的16位计数器,使用单一5V电源,采用NMOS工艺,24脚双排直插式封装的大规模集成电路1 182538253主要功能主要功能 每片有3个独立的16位计数通道。每个计数器可按二进制或十进制来计数,时钟脉冲下降沿使计数器进行减1操作。每个计数器最高计数速率可达2.6MHZ。每个计数器可编程设定6种工作方式之一。所有输入、输出均与TTL电平兼容,便于与外围接口电路相连。第第9 9章章 可编程接口芯片及应用可编程接口芯片及应用2.82532.8253的内部结构和引脚特性的内部结构和引脚特性第第9 9章章 可编程
4、接口芯片及应用可编程接口芯片及应用9.2.2 8253控制字18253控制字格式 SC1SC2RW1RW2M2M1M0BCD00:计数器001:计数器110:计数器211:无意义00:锁存计数值01:只读写低8位10:只读写高8位11:先读写低8位 后读写高8位000:方式0001:方式1X10:方式2X11:方式3100:方式4101:方式50:二进制计数1:十进制计数D7D6D5D4D3D2D1D0第第9 9章章 可编程接口芯片及应用可编程接口芯片及应用28253端口地址 A1A0=00-计数器0 01-计数器1 10-计数器2 11-控制口3.编程步骤 先写控制字(到控制口)再写计数器初
5、值(到相应的通道端口)第第9 9章章 可编程接口芯片及应用可编程接口芯片及应用9.2.3 8253工作方式与工作时序 1方式0(单脉冲发生器)计数器只计一遍。控制字写入后,OUT端为低;当计数初值写入后,在下一个CLK脉冲的下降沿将计数初值寄存器内容装入减1计数寄存器,然后计数器开始减1计数,在计数期间,当减1计数器回0之前,输出端OUT维持低电平。当计数值回0时,OUT输出端变为高电平,并保持到重新写入新的控制字或新的计数值为止。可作为中断请求信号。在计数过程中,若GATE信号变为低电平,则在低电平期间暂停计数,减1计数寄存器值保持不变。在计数过程中,若重新写入新的计数初值,则在下一个CLK
6、脉冲的下降沿,减1计数寄存器以新的计数初值重新开始计数过程。第第9 9章章 可编程接口芯片及应用可编程接口芯片及应用8253方式0三种情况时序波形:CLKGATEOUT43210WRCLKGATEOUT43321CWN=40WRCLKGATEOUT43232CWN=4N=310WRCWN=4第第9 9章章 可编程接口芯片及应用可编程接口芯片及应用2方式1(可重触发单稳态方式)输出单个负脉冲信号,脉冲的宽度可通过编程来设定。当写入控制字后,输出端OUT变为高电平,并保持高电平状态。然后写入计数初值,只有在GATE信号的上升沿之后的下一个CLK脉冲的下降沿,才将计数初值寄存器内容装入减1计数寄存器
7、,同时OUT端变为低电平。然后计数器开始减1计数,当计数值减到0时,OUT端变为高电平。在OUT端输出低电平期间,又来一个门控信号上升沿触发,则在下一个CLK脉冲的下降沿,重新将计数初值寄存器内容装入减1计数寄存器,并开始计数,OUT端保持低电平,直至计数值减到0时,OUT端变为高电平。在计数期间CPU又送来新的计数初值,不影响当前计数过程。一直等到下一次GATE信号的触发,才会将新的计数初值装入,并以新的计数初值开始计数过程。第第9 9章章 可编程接口芯片及应用可编程接口芯片及应用8253方式1三种情况时序波形:WRCLKGATEOUT3210CWN=3CLKGATEOUT210032WRC
8、LKGATEOUT3232CWN=310WRCWN=2N=3第第9 9章章 可编程接口芯片及应用可编程接口芯片及应用3方式2(周期脉冲发生器)可产生周期性的负脉冲信号,负脉冲宽度为一个时钟周期。写入控制字后,OUT端变为高电平,若GATE为高电平,当写入计数初值后,在下一个CLK的下降沿将计数初值寄存器内容装入减1计数寄存器,并开始减1计数。当减1计数寄存器的值为1时,OUT端输出低电平;减1计数寄存器回0时OUT端输出高电平,并开始一个新的计数过程。在减1计数寄存器未减到1时,GATE信号由高变低,则停止计数。但当GATE由低变高时,则重新将计数初值寄存器内容装入减1计数寄存器,并重新开始计
9、数。GATE信号保持高电平,但在计数过程中重新写入计数初值,则当正在计数的一轮结束并输出一个CLK周期的负脉冲后,将以新的初值进行计数。第第9 9章章 可编程接口芯片及应用可编程接口芯片及应用8253方式2三种情况时序波形:WRCLKGATEOUT32132CWN=31WRCLKGATEOUT32232CWN=31WRCLKGATEOUT32154CWN=33N=53第第9 9章章 可编程接口芯片及应用可编程接口芯片及应用4方式3(方波发生器)当控制字写入后,OUT输出高电平。写入计数初值后,下一个CLK的下降沿将计数初值装入减1计数器,并开始减1计数,当计数到一半时,OUT端变为低电平。减1
10、计数寄存器继续作减1计数,计数到0时,OUT端变为高电平。之后,周而复始地自动进行计数过程。当计数初值为偶数时,OUT输出对称方波;当计数初值为奇数时,OUT输出不对称方波。在计数过程中,若GATE变为低电平,则停止计数;当GATE由低变高时,则重新启动计数过程。如果在输出为低电平时,门控信号GATE变为低电平,减1计数器停止,而OUT输出立即变为高电平。在GATE又变成高电平后,下一个时钟脉冲的下降沿,减1计数器重新得到计数初值,又开始新的减1计数。在计数过程中,如果写入新的计数值,那么,将不影响当前输出周期。但是,如果在写入新的计数值后,又受到门控上升沿的触发,那么,就会结束当前输出周期,
11、而在下一个时钟脉冲的下降沿,减计数器重新得到计数初值,又开始新的减1计数。第第9 9章章 可编程接口芯片及应用可编程接口芯片及应用8253方式3三种情况时序波形:WRCLKGATEOUT43214CWN=432WRCLKGATEOUT54321CWN=55413WRCLKGATEOUT43222CWN=4432第第9 9章章 可编程接口芯片及应用可编程接口芯片及应用5方式4(软件触发的选通信号发生器)采用方式4,可产生单个负脉冲信号,负脉冲宽度为一个时钟周期。写入控制字后,OUT端变为高电平,若GATE为高电平,当写入计数初值后,在下一个CLK的下降沿将计数初值寄存器内容装入减1计数寄存器,并
12、开始减1计数,当减1计数寄存器的值为0时,OUT端输出低电平,经过一个CLK时钟周期,OUT端输出高电平。如果在计数时,又写入新的计数值,则在下一个CLK的下降沿此计数初值被写入减1计数寄存器,并以新的计数值作减1计数。第第9 9章章 可编程接口芯片及应用可编程接口芯片及应用8253方式4三种情况时序波形:WRCLKGATEOUT43210CWN=4WRCLKGATEOUT44321CWN=40CLKGATEOUT432321WRN=4N=3CW0第第9 9章章 可编程接口芯片及应用可编程接口芯片及应用6方式5(硬件触发的选通信号发生器)方式5的计数过程由GATE的上升沿触发。当控制字写入后,
13、OUT端输出高电平,并保持高电平状态。然后写入计数初值,只有在GATE信号的上升沿之后的下一个CLK脉冲的下降沿,才将计数初值寄存器内容装入减1计数寄存器,并开始减1计数,当计数值减到0时,OUT端变为低电平,并持续一个CLK周期,然后自动变为高电平。在计数过程中,若GATE端又来一个上升沿触发,则在下一个CLK脉冲的下降沿,减1计数寄存器将重新获得计数初值,并按新的初值作减1计数,直至减为0为止。在计数过程中,若写入新的计数值,但没有触发脉冲,则当前输出周期不受影响。当前周期结束后,在再触发的情况下,将按新的计数初值开始计数。若在计数过程中,写入新的计数值,并在当前周期结束前又受到触发,则在
14、下一个CLK脉冲的下降沿,减1计数寄存器将获得新的计数初值,并按此值作减1计数操作。第第9 9章章 可编程接口芯片及应用可编程接口芯片及应用8253方式5三种情况时序波形:WRCLKOUT3210CWN=3GATEWRCLKOUT3232CWN=3GATE10CLKOUT3210GATE04WRN=3N=4CW3第第9 9章章 可编程接口芯片及应用可编程接口芯片及应用9.2.4 8253的初始化编程1 1写入控制字写入控制字 以便选择计数器和规定计数器的工作方式,任一计数通道的控制字都要从8253的控制端口写入。2 2写入计数初值写入计数初值 计数初值(TC)的计算公式为:t=TC/f,其中t
15、为定时时间,TC为计数初值,f为输入时钟频率。注意:如果在方式控制字中的BCD位为1,则写入的计数初值应为十六进制数。例如:计数初值为50,采用BCD码计数,则指令中的50必须写为50H。第第9 9章章 可编程接口芯片及应用可编程接口芯片及应用3 3读计数值读计数值 在计数过程中,若要读取当前的计数值,则需采用以下方法:先写入一个方式控制字,该方式控制字的SC1SC0指明要读取的计数通道,RW1RW0设为00即锁定计数值;然后再按照初始化该计数器时的读写方法读取计数值。第第9 9章章 可编程接口芯片及应用可编程接口芯片及应用9.2.5 8253应用 【例1】8253在IBM PC机中的应用。I
16、BM PC机系统板上8253的接口电路如图9.9所示,3个计数器的时钟输入频率为1.1932MHZ。系统分配给8253的端口地址为40H43H。第第9 9章章 可编程接口芯片及应用可编程接口芯片及应用CSWRRDD7D0A0CLK0GATE0OUT0A1CLK1GATE1OUT1GATE2OUT2CLK2地址译码QDCP Q+5V(8255)PB0(8284)PCLKDBIORIOW(8259)IR0DCP Q+5V(8237)DREQ0&8255PB1放大器扬声器ABIBM-PC机系统板上机系统板上8253接口电路接口电路 F=1.1932MHZ 第第9 9章章 可编程接口芯片及应用可编程接
17、口芯片及应用 计数器0为方式3,先写低字节,后写高字节,二进制计数,计数初值为0。输出端OUT0接至中断控制器8259A的IR0,OUT0输出的脉冲周期约为55ms(655361193200),即计数器0每隔55ms产生一次中断请求。计数器1为方式2,只写低字节,二进制计数,计数初值为18。输出端OUT1接至DMA控制器8237A通道0的DMA请求DREQ0,作为定时(15.08s)刷新动态存储器的启动信号。第第9 9章章 可编程接口芯片及应用可编程接口芯片及应用IBM-PC机机BIOSBIOS对对CNT0CNT0的初始化程序:的初始化程序:MOV ALMOV AL,00110110B0011
18、0110BOUT 43HOUT 43H,ALALMOV ALMOV AL,0 0OUT 40HOUT 40H,ALALOUT 40HOUT 40H,ALALIBM-PC机机BIOSBIOS对对CNT1CNT1的初始化程序:的初始化程序:MOV ALMOV AL,01010100B01010100BOUT 43HOUT 43H,ALALMOV ALMOV AL,12H12HOUT 41HOUT 41H,ALAL第第9 9章章 可编程接口芯片及应用可编程接口芯片及应用 BIOS中BEEP子程序,功能为使CNT2输出方波到扬声器。计数器2为方式3,先写低字节,后写高字节,二进制计数,计数初值为053
19、3H。GATE2由8255A的PB0控制,当GATE2为高电平时,OUT2输出频率为896HZ的方波,经功率放大器和滤波后驱动扬声器发声。MOV ALMOV AL,10110110B10110110BOUT 43HOUT 43H,ALALMOV AXMOV AX,0533H0533HOUT 42HOUT 42H,ALALMOV ALMOV AL,AHAHOUT 42HOUT 42H,ALALIN 61HIN 61H,ALALMOV AHMOV AH,ALALOR ALOR AL,03H03H OUT 61H OUT 61H,ALAL MOV BX MOV BX,100 100 ;延时;延时 M
20、OV CXMOV CX,0 0 G7G7:LOOP G7LOOP G7 DEC BX DEC BX JNZ G7 JNZ G7 MOV AL MOV AL,AHAH OUT 61H OUT 61H,ALAL RET RET第第9 9章章 可编程接口芯片及应用可编程接口芯片及应用【例2】利用8253的通道0和通道1,设计并产生周期为1HZ的方波。设通道0的输入时钟频率为 2MHz,8253所占端口地址为80H83H。方案:8253通道0工作于方式2(周期脉冲发生器),输出脉冲周期为10ms,则通道0的计数值为20000。周期为10ms的脉冲作为通道1的输入,要求输出端OUT1的波形为方波且周期为
21、1s,则通道1工作于方式3,计数值为100。第第9 9章章 可编程接口芯片及应用可编程接口芯片及应用电路图:CSWRRDD7D0A0CLK0GATE0OUT0A1CLK1GATE1OUT1地址译码+5VDBIORIOWAB2MHZ1HZ第第9 9章章 可编程接口芯片及应用可编程接口芯片及应用8253初始化程序如下:MOV AL,34H ;通道0控制字OUT 83H,ALMOV AX,20000 ;通道0时间常数OUT 80H,ALMOV AL,AHOUT 80H,ALMOV AL,56H ;通道1控制字OUT 83H,ALMOV AL,100 ;通道1时间常数OUT 81H,AL第第9 9章章
22、 可编程接口芯片及应用可编程接口芯片及应用【例3】8253应用(键盘演奏音乐程序)第第9 9章章 可编程接口芯片及应用可编程接口芯片及应用初值之间的关系:(fin=1.1932MHz=1193200 Hz)(fin=1193200=1234F0H)给定fout 在DI寄存器中,DX和AX存放1.1932MHz的十六进制值1234F0H,则产生 fout输出的计数初值的程序段:(初值存于AX中)MOV DX,12HMOV AX,34F0H ;DX和AX存放 finDIV DI ;DI存放fout 结果在AX中foutfin初值1234567262294330349392440494频率表频率表(
23、输出频率fout)第第9 9章章 可编程接口芯片及应用可编程接口芯片及应用10ms秒软件延时程序:MOV CX,2801DELAY:LOOP DELAY如产生1秒的程序:MOV BX,100 WAIT:MOV CX,2801 DELAY:LOOP DELAY DEC BX JNZ WAIT第第9 9章章 可编程接口芯片及应用可编程接口芯片及应用data segment freq dw 262,294,330,349,392,440,494data endscode segment assume ds:data,cs:codemain proc far start:push dsmov ax,0
24、push axmov ax,datamov ds,axmov al,0b6h out 43h,alin al,61h or al,03hout 61h,al again:mov ah,1 int 21h cmp al,1bh ;jz exitlea si,freqand ax,0fh shl ax,1sub ax,2add si,ax mov di,simov dx,12hmov ax,34f0hdiv di ;out 42h,almov al,ahout 42h,al jmp againexit:in al,61h and al,0fch out 61h,al ret main endp c
25、ode ends end start第第9 9章章 可编程接口芯片及应用可编程接口芯片及应用【例4】现有一个高精密晶体振荡电路,输出信号是脉冲波,频现有一个高精密晶体振荡电路,输出信号是脉冲波,频率为率为1MHz1MHz。要求将。要求将1MHz1MHz信号做输入信号,利用信号做输入信号,利用82538253做一个秒信做一个秒信号发生器,其输出接一发光二极管,以号发生器,其输出接一发光二极管,以0.50.5秒点亮,秒点亮,0.50.5秒熄灭秒熄灭的方式闪烁指示。设的方式闪烁指示。设82538253的通道地址为的通道地址为80H80H86H86H(偶地址)(偶地址)解:解:1 1、时间常数计算、时
展开阅读全文