常用的可编程接口芯片介绍PPT讲稿.ppt
《常用的可编程接口芯片介绍PPT讲稿.ppt》由会员分享,可在线阅读,更多相关《常用的可编程接口芯片介绍PPT讲稿.ppt(172页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、常用的可编程接口芯片介绍第1页,共172页,编辑于2022年,星期日 定时信号可用三种方法:n软件延时n不可编程的硬件定时n可编程的硬件定时第2页,共172页,编辑于2022年,星期日第一节第一节 定时定时/计数器及其应用计数器及其应用 一、一、Intel 8254Intel 8254的内部结构的内部结构 数据总线 缓冲器 读/写 逻辑电路 控制 寄存器内内部部总总线线0#计数器1#计数器2#计数器CLK0 GATE0 OUT0 CLK1 GATE1 OUT1 CLK2 GATE2 OUT2 RD WR A0 A1 CSD0-D7CRCEOL第3页,共172页,编辑于2022年,星期日 二、二
2、、8254与系统的连接:与系统的连接:CLKGATEOUTD0D7WRRDA1A0CSDBWRRDA1A0译码器译码器高高位位地地址址外设外设Intel 8254第4页,共172页,编辑于2022年,星期日三、Intel 8254端口操作表 第5页,共172页,编辑于2022年,星期日四、四、Intel 8254Intel 8254控制字控制字/状态字状态字 1.1.方式控制字方式控制字 D7D6D5D4D3D2D1D0SC1SC2RW1RW0M2M1M0BCDSC1SC1,SC0SC00000;选择;选择0#0#计数器计数器.SC1SC1,SC0SC00101;选择;选择1#1#计数器计数器
3、.SC1SC1,SC0SC01010;选择;选择2#2#计数器计数器.SC1SC1,SC0SC01111;读出命令;读出命令(8253(8253为非法操作为非法操作).).RW1RW1,RW0RW00000;锁存命令;锁存命令.RW1RW1,RW0RW00101;只访问低;只访问低8 8位位.RW1RW1,RW0RW01010;只访问高;只访问高8 8位位.RW1RW1,RW0RW01111;先访问低;先访问低8 8位,后访问高位,后访问高8 8位位.第6页,共172页,编辑于2022年,星期日 方式控制字方式控制字(续续)M2M1M0M2M1M0000000方式方式0 0M2M1M0M2M1
4、M0001001方式方式1 1M2M1M0M2M1M0 x10 x10方式方式2 2M2M1M0M2M1M0 x11x11方式方式3 3M2M1M0M2M1M0100100方式方式4 4M2M1M0M2M1M0101101方式方式5 5D0D00,0,按二进制减按二进制减1 1计数计数,初值范围初值范围0000HFFFFH0000HFFFFHD0D01,1,按十进制减按十进制减1 1计数计数,初值范围初值范围0000H9999H0000H9999H第7页,共172页,编辑于2022年,星期日 2.读出控制字读出控制字D7D6D5D4D3D2D1D011锁存当前计数值锁存当前计数值 锁存计数器状
5、态锁存计数器状态 计数器计数器2 计数器计数器1计数器计数器00nD7=1D7=1、D6=1D6=1和和D0=0D0=0是标识位是标识位nD5=0D5=0表示锁存计数值,以便表示锁存计数值,以便CPUCPU读取;读取;nD4=0D4=0是将计数器的状态锁存到状态寄存器;是将计数器的状态锁存到状态寄存器;nD3D1D3D1是选择计数器,是选择计数器,D3D31 1选中选中2#2#计数器;计数器;D2D21 1选中选中1#1#计数器;计数器;D1D11 1选中选中0#0#计数器。计数器。第8页,共172页,编辑于2022年,星期日3.状态字状态字D7D6D5D4D3D2D1D0输出电平输出电平计数
6、值是否有效计数值是否有效 RW1RW0M2M1M0BCDnD5D0D5D0位位与控制字对应位的意义相同与控制字对应位的意义相同.nD7OUTD7OUT状态状态,1,1表示高电平表示高电平,0,0表示输出低表示输出低电平电平.nD6D6计数初值是否已装入计数器中计数初值是否已装入计数器中,1,1表示无表示无效计数效计数,0,0表示已将计数初值装入计数器中,可表示已将计数初值装入计数器中,可以读计数器的值。以读计数器的值。第9页,共172页,编辑于2022年,星期日五、五、Intel 8254Intel 8254的编程命令的编程命令1 1写入命令(先写控制字,再写计数初值)写入命令(先写控制字,再
7、写计数初值)任何一个计数器都有任何一个计数器都有3个写入命令:个写入命令:n设置控制字命令设置控制字命令用来选择计数器、写入计用来选择计数器、写入计数初值的规则、设定工作方式和计数格式数初值的规则、设定工作方式和计数格式.n设置计数初值命令设置计数初值命令写入计数初值寄存器写入计数初值寄存器.n输出锁存器的锁存命令输出锁存器的锁存命令锁存命令与读出命锁存命令与读出命令一起使用令一起使用,当前计数值在输出锁存器中锁定当前计数值在输出锁存器中锁定后才读出后才读出.第10页,共172页,编辑于2022年,星期日 2 2读出命令(先锁存,再读操作)读出命令(先锁存,再读操作)n在读操作之前先将计数锁存
8、命令送入要在读操作之前先将计数锁存命令送入要读的计数器的控制端口中读的计数器的控制端口中.n读出命令的目的是读出命令的目的是CPUCPU读计数器中的读计数器中的计数值计数值,读操作由方式控制字中的读操作由方式控制字中的RW1RW1,RW0RW0的状态组合来控制的状态组合来控制.第11页,共172页,编辑于2022年,星期日例:读取例:读取0#0#计数器当前的计数值计数器当前的计数值,程序段程序段如下:(设如下:(设82548254的片选地址范围是的片选地址范围是0E0H0E3H0E0H0E3H)MOV ALMOV AL,00H 00H ;0#0#计数器的锁存命令计数器的锁存命令OUT 0E3H
9、OUT 0E3H,AL AL ;锁存命令写到控制口;锁存命令写到控制口IN IN AL AL,0E0H 0E0H;读锁存器的低字节;读锁存器的低字节MOV BLMOV BL,AL AL ;低字节送;低字节送BLBLININ AL AL,0E0H 0E0H;读锁存器的高字节;读锁存器的高字节MOV BHMOV BH,AL AL ;高字节送;高字节送BHBH则则BXBX的内容就是的内容就是0#0#计数器当前的计数值。计数器当前的计数值。第12页,共172页,编辑于2022年,星期日六、六、Intel 8254的工作方式的工作方式n按功能分按功能分n1 1、计数器方式:当计数器被赋予初值时,在门、计
10、数器方式:当计数器被赋予初值时,在门控信号控信号GATEGATE开启状态下,由输入的开启状态下,由输入的CLKCLK时钟对计数器时钟对计数器进行减进行减1 1计数。在计数。在CLKCLK连续脉冲作用下,计数器减到连续脉冲作用下,计数器减到0 0时,由时,由OUTOUT端输出信号。端输出信号。n作为对外部事件计数的作为对外部事件计数的CLKCLK可以是均匀的、连续可以是均匀的、连续的,也可以是非均匀连续的,它只是脉冲数量问的,也可以是非均匀连续的,它只是脉冲数量问题,不是脉冲的时间问题。题,不是脉冲的时间问题。第13页,共172页,编辑于2022年,星期日n2 2、定时器方式:当定时器被赋予初值
11、时,在、定时器方式:当定时器被赋予初值时,在GATEGATE开启状态下,由开启状态下,由CLKCLK时钟脉冲触发定时器开始工时钟脉冲触发定时器开始工作,定时器在作,定时器在OUTOUT端不间断地产生端不间断地产生CLKCLK时钟整数倍的定时钟整数倍的定时时间间隔。时时间间隔。nCLKCLK必须是连续的、均匀的、周期精确的时间脉冲,并必须是连续的、均匀的、周期精确的时间脉冲,并且最终结果还与且最终结果还与CLKCLK脉冲周期有关,即计时时间等于脉冲周期有关,即计时时间等于计数值乘计数值乘CLKCLK脉冲周期。脉冲周期。第14页,共172页,编辑于2022年,星期日每个计数器都有6种工作方式n共同
12、特点:共同特点:n1 1、控制字写入计数器的控制寄存器时,输出端、控制字写入计数器的控制寄存器时,输出端OUTOUT进进入初始状态。设置成方式入初始状态。设置成方式0 0时,时,OUTOUT端的初始状态为端的初始状态为低电平;设置成其他方式时,低电平;设置成其他方式时,OUTOUT端的初始状态为端的初始状态为高电平。高电平。n2 2、初始值被写入、初始值被写入82548254相应计数器的初值寄存器相应计数器的初值寄存器CRCR以后,要用一个时钟脉冲的上升沿和下降沿将初值送以后,要用一个时钟脉冲的上升沿和下降沿将初值送入计数执行部件(减计数器),减计数器从下一个时入计数执行部件(减计数器),减计
13、数器从下一个时钟开始进行计数。钟开始进行计数。第15页,共172页,编辑于2022年,星期日n3 3、用时钟脉冲的上升沿对门控信号、用时钟脉冲的上升沿对门控信号GATEGATE进行采进行采样。如果计数器工作在方式样。如果计数器工作在方式0 0或方式或方式4 4,则门控信,则门控信号为电平触发;工作在方式号为电平触发;工作在方式1 1或方式或方式5 5时,则门控信时,则门控信号为上升沿触发;工作在方式号为上升沿触发;工作在方式2 2或方式或方式3 3时,门控信号时,门控信号可以用上升沿触发,也可用下降沿触发。可以用上升沿触发,也可用下降沿触发。n4 4、在时钟脉冲的下降沿,计数器作减、在时钟脉冲
14、的下降沿,计数器作减1 1计数。计数。n5 5、0000H0000H是计数器的最大初始值。二进制计数时该初是计数器的最大初始值。二进制计数时该初值相当于值相当于6553665536,BCDBCD码计数时相当于码计数时相当于10000.10000.第16页,共172页,编辑于2022年,星期日n计数器在不同的工作方式下,主要区别:计数器在不同的工作方式下,主要区别:n1 1、OUTOUT引脚的输出波形不同。引脚的输出波形不同。n2 2、启动计数器计数的触发方式不同。、启动计数器计数的触发方式不同。n3 3、门控信号、门控信号GATEGATE对计数器的影响不同。对计数器的影响不同。n4 4、有的工
15、作方式具备、有的工作方式具备“初值自动重装初值自动重装”的功能。的功能。第17页,共172页,编辑于2022年,星期日六、六、Intel 8254的工作方式的工作方式 1.方式方式0计数结束输出正跳变信号计数结束输出正跳变信号 第18页,共172页,编辑于2022年,星期日第19页,共172页,编辑于2022年,星期日第20页,共172页,编辑于2022年,星期日2.方式方式1硬件可重复触发的单稳硬件可重复触发的单稳第21页,共172页,编辑于2022年,星期日第22页,共172页,编辑于2022年,星期日第23页,共172页,编辑于2022年,星期日 3.方式方式2分频器分频器第24页,共1
16、72页,编辑于2022年,星期日第25页,共172页,编辑于2022年,星期日第26页,共172页,编辑于2022年,星期日4.方式方式3方波发生器方波发生器第27页,共172页,编辑于2022年,星期日第28页,共172页,编辑于2022年,星期日第29页,共172页,编辑于2022年,星期日5.方式方式4软件触发的选通信号发软件触发的选通信号发生器生器第30页,共172页,编辑于2022年,星期日第31页,共172页,编辑于2022年,星期日第32页,共172页,编辑于2022年,星期日6.方式方式5硬件触发的选通硬件触发的选通信号发生器信号发生器第33页,共172页,编辑于2022年,星
17、期日第34页,共172页,编辑于2022年,星期日第35页,共172页,编辑于2022年,星期日七、七、Intel 8254的初始化的初始化程序流程程序流程写控制字写控制字写计数值低写计数值低8位位写计数值高写计数值高8位位 写入顺序:写入顺序:以计数器为单位以计数器为单位初始化,也可以初始化,也可以先写所有计数器先写所有计数器控制字,再写入控制字,再写入初值初值第36页,共172页,编辑于2022年,星期日Intel 8254的初始化编程的初始化编程n1 1、计数初值已知、计数初值已知 初值初值FFHFFH 初值初值 FFHFFHn2 2、计数初值未知、计数初值未知 或或 n3 3、读当前计
18、数值:先锁存再读、读当前计数值:先锁存再读n4 4、级联:计数时间超出一个、级联:计数时间超出一个1616位计数器位计数器 范围范围第37页,共172页,编辑于2022年,星期日例:例:82548254的的1#1#计数器工作在方式计数器工作在方式0,0,二进二进制计数制计数,计数初值为计数初值为4.4.设端口地址为设端口地址为E0HE0H,E2HE2H,E4HE4H和和E6H.E6H.初始化程序段初始化程序段:MOV AL,50H ;MOV AL,50H ;设置设置1#1#计数器的控制字计数器的控制字OUTOUT 0E6H,AL;0E6H,AL;写控制字写控制字MOV AL,4 ;MOV AL
19、,4 ;设置计数初值设置计数初值OUT 0E2,AL ;OUT 0E2,AL ;初值写入初值写入1#1#计数器计数器1、计数初值已知:初值FFH第38页,共172页,编辑于2022年,星期日例:设例:设82548254的的0#0#计数器工作于方式计数器工作于方式1,1,计计数初值为数初值为3,3,按二进制计数按二进制计数.初始化程序段为:初始化程序段为:MOV AL,12H;MOV AL,12H;设置设置0#0#计数器控制字计数器控制字OUT 0E6HOUT 0E6H,ALALMOV AL,3 MOV AL,3;设置计数初值设置计数初值OUT 0E0HOUT 0E0H,ALAL第39页,共17
20、2页,编辑于2022年,星期日例:设例:设82548254的的2#2#计数器工作在方式计数器工作在方式2,2,按按二进制计数二进制计数,计数初值为计数初值为3.3.初始化程序段如下:初始化程序段如下:MOV ALMOV AL,94H ;94H ;设控制字设控制字OUT 0E6HOUT 0E6H,ALALMOV ALMOV AL,3 ;3 ;设置计数初值设置计数初值OUT 0E4HOUT 0E4H,ALAL第40页,共172页,编辑于2022年,星期日例:设例:设82548254的的2#2#计数器工作在方式计数器工作在方式3,3,按二进制计数按二进制计数,计数初值为计数初值为4 4。初始化程序段
21、如下:初始化程序段如下:MOV ALMOV AL,96H ;96H ;设置控制字设置控制字OUT 0E6HOUT 0E6H,ALALMOV ALMOV AL,4 4;设置初值设置初值OUT 0E4HOUT 0E4H,ALAL 第41页,共172页,编辑于2022年,星期日例:设例:设82548254的的1#1#计数器工作于方式计数器工作于方式4,4,按二进制计数按二进制计数,计数初值为计数初值为40.40.初始化程序如下:初始化程序如下:MOV ALMOV AL,58H58H;设置控制字设置控制字OUT 0E6HOUT 0E6H,ALALMOV ALMOV AL,4040 ;设置计数初值设置计
22、数初值OUT 0E2HOUT 0E2H,ALAL第42页,共172页,编辑于2022年,星期日例:设例:设82548254的的0#0#计数器工作在方式计数器工作在方式5,5,按二进制计数按二进制计数,计数初值为计数初值为3.3.初始化程序如下初始化程序如下:MOV ALMOV AL,1AH1AH;设置控制字设置控制字OUT 0E6HOUT 0E6H,ALALMOV ALMOV AL,3 3;设置计数初值设置计数初值OUT 0E0HOUT 0E0H,ALAL第43页,共172页,编辑于2022年,星期日例:设例:设82548254的的2#2#计数器工作在方计数器工作在方式式2,2,按二进制计数按
23、二进制计数,计数初值为计数初值为0304H,0304H,初始化程序段如下:初始化程序段如下:M0V AL,0B4H ;M0V AL,0B4H ;设控制字设控制字,按按1616位读写格式位读写格式OUT 0E6HOUT 0E6H,AL;AL;写控制字写控制字MOV ALMOV AL,04H ;04H ;计数值的低字节计数值的低字节OUT 0E4HOUT 0E4H,AL;AL;写计数值的低字节写计数值的低字节MOV ALMOV AL,03H ;03H ;计数值的高字节计数值的高字节OUT 0E4HOUT 0E4H,AL;AL;写计数值的高字节写计数值的高字节初值FFH第44页,共172页,编辑于2
24、022年,星期日例:设例:设82548254的的1#1#计数器工作在方式计数器工作在方式1,1,按按BCDBCD码计数码计数,计数初值为计数初值为4000.4000.初始化程序如下:初始化程序如下:MOV ALMOV AL,63H ;63H ;控制字控制字:只读写高只读写高 8 8位位,BCD,BCD码计数码计数OUT 0E6HOUT 0E6H,ALALMOV ALMOV AL,40H ;40H ;设置计数初值设置计数初值40004000OUT 0E2HOUT 0E2H,ALAL第45页,共172页,编辑于2022年,星期日本例中如果按二进制计数,控制字应该设置成01110010B。n初始化程
25、序如下:初始化程序如下:nMOV ALMOV AL,72H72H;设置控制字:读写;设置控制字:读写1616位,二进位,二进 制计数制计数nOUT 0E6HOUT 0E6H,ALALnMOV AXMOV AX,40004000;设置计数初值;设置计数初值40004000nOUT 0E2HOUT 0E2H,ALAL;送初值的低;送初值的低8 8位位nMOV ALMOV AL,AHAHnOUT 0E2HOUT 0E2H,ALAL;送初值的高;送初值的高8 8位位第46页,共172页,编辑于2022年,星期日例:设一个8254的计数器0能产生20ms的定时信号,设它的地址为2F02F3H,CLK为5
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 常用 可编程 接口 芯片 介绍 PPT 讲稿
限制150内