最新可编程接口芯片8254及应用课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《最新可编程接口芯片8254及应用课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 最新 可编程 接口 芯片 8254 应用 课件
- 资源描述:
-
1、7.1 定时器和计数器概述n定时控制在微机系统中极为重要定时控制在微机系统中极为重要n定时器定时器由数字电路中的计数电路构成,通由数字电路中的计数电路构成,通过记录高精度晶振脉冲信号的个数,输出准过记录高精度晶振脉冲信号的个数,输出准确的时间间隔。定时器强调的是精确的时间。确的时间间隔。定时器强调的是精确的时间。1 计数器的3个引脚nCLK时钟输入信号时钟输入信号在计数过程中,此引脚上在计数过程中,此引脚上每输入一个时钟信号(每输入一个时钟信号(下降沿下降沿),计数器的计数值),计数器的计数值减减1nGATE门控输入信号门控输入信号控制计数器工作,可分成控制计数器工作,可分成电平控制电平控制和
2、和上升沿控制上升沿控制两种类型两种类型nOUT计数器输出信号计数器输出信号当一次计数过程结束当一次计数过程结束(计数值减为(计数值减为0),),OUT引脚上将产生一个输出信引脚上将产生一个输出信号号2 与处理器接口nD0 D7数据线数据线 A0 A1地址线地址线nRD读信号读信号 WR写信号写信号nCS片选信号片选信号由控制字格式中由控制字格式中SC1,SC0位位决定属于哪个计数器决定属于哪个计数器选中控制寄存器选中控制寄存器10110读输出锁存器读输出锁存器OL当前值当前值01对计数器寄存器对计数器寄存器CR送初值送初值选中计数器选中计数器2#10010读输出锁存器读输出锁存器OL当前值当前
3、值01对计数器寄存器对计数器寄存器CR送初值送初值选中计数器选中计数器1#10100读输出锁存器读输出锁存器OL当前值当前值01对计数器寄存器对计数器寄存器CR送初值送初值选中计数器选中计数器0#10000功功 能能A0A1CSWRRD8254的工作方式8254有有6种工作方式,由种工作方式,由方式控制字方式控制字确定确定熟悉每种工作方式的特点熟悉每种工作方式的特点才能根据实际应用才能根据实际应用问题,选择正确的工作方式问题,选择正确的工作方式不同工作方式的区分点:不同工作方式的区分点:v输出波形输出波形v计数过程中门控信号的影响计数过程中门控信号的影响v启动触发方式启动触发方式每种工作方式的
4、过程类似:每种工作方式的过程类似:设定工作方式设定工作方式 设定计数初值设定计数初值 硬件启动硬件启动 计数初值进入减计数初值进入减1计数器计数器 每输入一个时钟计数器减每输入一个时钟计数器减1的计数过程的计数过程 计数过程结束计数过程结束方式0 计数结束中断(一次有效)写入控制字之后,相应的输出信号写入控制字之后,相应的输出信号OUT就开就开始变成低电平。始变成低电平。计数器写完计数值时,开始计数。当计数器计数器写完计数值时,开始计数。当计数器减到零时,减到零时,OUT立即输出高电平。立即输出高电平。GATEOUTCLK 031244方式方式0WR设设定定工工作作方方式式设设定定计计数数初初
5、值值计计数数值值送送入入计计数数器器计计数数过过程程计计数数结结束束方式0门控信号门控信号GATE位高电平时,计数器工作;为位高电平时,计数器工作;为低电平时,计数器停止工作,计数值保持不变。低电平时,计数器停止工作,计数值保持不变。在计数器工作期间,如果重新写入新的计数值,在计数器工作期间,如果重新写入新的计数值,计数器将按新写入的计数值重新工作。计数器将按新写入的计数值重新工作。82548254的方式的方式0 0时序波形时序波形n=5n=5CLKCLKOUTOUTWRWR5 54 43 32 21 10 0n=5n=5WRWRGATEGATEOUTOUT5 54 43 32 21 10 0
6、4 44 4WRWROUTOUTn=9n=99 98 8n=4n=44 43 32 21 10 0方式1 可编程单稳脉冲写入计数初值后,计数器并不立即开始工作;写入计数初值后,计数器并不立即开始工作;等待到等待到GATE上升沿,才开始工作,使输出上升沿,才开始工作,使输出OUT变成低电平;变成低电平;直到计数器值减到零后,输出才变高电平。直到计数器值减到零后,输出才变高电平。计数到计数到0,初值自动重置,但要等到下一个,初值自动重置,但要等到下一个GATE上升沿触发才重新计数上升沿触发才重新计数。单稳态触发器单稳态触发器只有一个稳态(高电平),一个只有一个稳态(高电平),一个触发脉冲使触发器进
7、入暂稳态(低电平),经过触发脉冲使触发器进入暂稳态(低电平),经过一段可调的时间间隔后,又回到稳态。所以工作一段可调的时间间隔后,又回到稳态。所以工作于方式于方式1时相当于一个可重复触发的单稳态触发时相当于一个可重复触发的单稳态触发器。器。设设定定工工作作方方式式设设定定计计数数初初值值硬硬件件启启动动计计数数值值送送入入计计数数器器计计数数过过程程计计数数结结束束GATEOUTCLK 031244方式方式1WR方式1在计数器工作期间,当在计数器工作期间,当GATE又出现一个上升又出现一个上升沿时,计数器重新装入原计数初值并重新开始沿时,计数器重新装入原计数初值并重新开始计数。计数。如果工作期
8、间对计数器写入新的计数初值,则如果工作期间对计数器写入新的计数初值,则要等到当前的计数值计满回零且门控信号再次要等到当前的计数值计满回零且门控信号再次出现上升沿后,才按新写入的计数初值开始工出现上升沿后,才按新写入的计数初值开始工作。作。8254的的1方式时序波形方式时序波形OUTOUT 4 43 32 21 1GATEGATE4 40 0n=4n=4CLKCLKGATEGATEWRWROUTOUT 4 43 32 21 10 0n=3n=3WRWRn=2n=2OUTOUT 3 32 21 10 02 21 10 0GATEGATE方式2 频率发生器(分频器)写入控制字之后,输出端写入控制字之
9、后,输出端OUT变为高电平。变为高电平。计数器写完计数值时,开始计数。当计数器计数器写完计数值时,开始计数。当计数器减到减到1时时,OUT变为低电平。变为低电平。完成一次计数过程,输出端完成一次计数过程,输出端OUT又变为高电平,开始又变为高电平,开始一个新的计数过程,周而复始。一个新的计数过程,周而复始。对于计数初值对于计数初值N,输出端,输出端OUT 输出的信号的周期是输出的信号的周期是计计数值数值N时钟时钟CLK的周期的周期T,N-1个时钟周期为高,个时钟周期为高,1个个时钟周期为低,为负脉冲时钟周期为低,为负脉冲。输出负脉冲的周期为时钟周期的输出负脉冲的周期为时钟周期的N倍,频率是倍,
10、频率是1/N,称为分频器,可以用来给自动控制中的实时检测,实称为分频器,可以用来给自动控制中的实时检测,实时控制提供时钟信号。时控制提供时钟信号。WRCLKGATEOUTCWn=3重新记数重新记数321321重新记数重新记数方式3 方波发生器与与2方式基本相同,也具有自动装入时间常数(计数初方式基本相同,也具有自动装入时间常数(计数初值)的功能,不同之处在于:值)的功能,不同之处在于:工作在工作在3方式,引脚方式,引脚OUT输出的不是一个时钟周期的输出的不是一个时钟周期的负脉冲,而是占空比为负脉冲,而是占空比为1:1或近似或近似1:1的方波;当计的方波;当计数初值为偶数初值为偶 数时,输出在前
11、一半的计数过程中为高电数时,输出在前一半的计数过程中为高电平,在后一半的计数过程中为低电平。平,在后一半的计数过程中为低电平。由于由于3方式输出的波形是方波,并且具有自动重装计方式输出的波形是方波,并且具有自动重装计数初值的功能,因此,数初值的功能,因此,8254一旦计数开始,就会在输一旦计数开始,就会在输出端出端OUT输出连续不断的方波。输出连续不断的方波。3124GATEOUTCLK 4方式方式3312431243124WR方式3当计数值为奇数时,在前(当计数值为奇数时,在前(N+1)2计数期间,计数期间,OUT输出高电平,而后(输出高电平,而后(N-1)2个计数期间,个计数期间,OUT输
12、出为低电平。输出为低电平。54321543CWn=5WRCLKGATEOUT方式4 软件触发选通信号控制字写入控制字写入8254后,计数器输出后,计数器输出OUT为高电平为高电平在写入计数初值后,而且在写入计数初值后,而且GATE为高电平时,开始计为高电平时,开始计数,计数到数,计数到0后输出一个时钟周期的低电平脉冲。后输出一个时钟周期的低电平脉冲。门控信号门控信号GATE1时允许计数,时允许计数,GATE0禁止计数。禁止计数。软件触发软件触发选通选通体现在当体现在当GATE为高电平时,写入计数为高电平时,写入计数初值后开始计数。初值后开始计数。D0-D7STB锁存器8254OUTCPU送数据
13、同时输出一数送数据同时输出一数据选通信号,锁存数据。据选通信号,锁存数据。方式方式4可编程控制选通信号可编程控制选通信号发出时间。发出时间。GATEOUTCLK31244方式方式4223331WR方式方式4和方式和方式2的区别:的区别:(1)方式)方式2的负脉冲是在计数到的负脉冲是在计数到1时产生一个时产生一个T的的负脉冲,而方式负脉冲,而方式4是在是在计数到计数到0时产生一个时产生一个T的负脉冲。的负脉冲。(2)在计数过程中,写入新的初值时,方式)在计数过程中,写入新的初值时,方式2是从是从下一次开始从新的初值计数,而方式下一次开始从新的初值计数,而方式4是从下一个脉是从下一个脉冲就开始以新
14、的值计数,因为方式冲就开始以新的值计数,因为方式4不能重复计数。不能重复计数。方式5 硬件触发选通信号工作特点是由工作特点是由GATE上升沿上升沿触发计数器开始工作。触发计数器开始工作。当写入计数初值后,计数器并不立即开始计数,而当写入计数初值后,计数器并不立即开始计数,而要由门控信号的上升沿启动计数。要由门控信号的上升沿启动计数。在计数过程中(或者计数结束后),如果门控再次在计数过程中(或者计数结束后),如果门控再次出现上升沿,计数器将从原装入的计数初值重新计数。出现上升沿,计数器将从原装入的计数初值重新计数。硬件触发选通硬件触发选通:GATE信号一般由硬件产生。信号一般由硬件产生。GATE
15、OUTCLK31244方式方式52233311WR计数开始的时刻需要注意需要注意当控制字写入当控制字写入8254时,所有的控制逻辑电路自动复时,所有的控制逻辑电路自动复位,这时输出端位,这时输出端OUT进入初始状态。进入初始状态。处理器写入处理器写入8254的计数初值只是写入了预置寄存器,的计数初值只是写入了预置寄存器,要到时钟下降沿,减法计数器才开始工作。要到时钟下降沿,减法计数器才开始工作。方式方式0、方式、方式4GATE信号为电平触发信号为电平触发 方式方式1、方式、方式5GATE信号为上升沿触发信号为上升沿触发 方式方式2、方式、方式3两种皆可两种皆可7.3 8254的编程8254加电
16、后的工作方式不确定加电后的工作方式不确定8254必须初始化编程,才能正常工作必须初始化编程,才能正常工作v写入方式控制字写入方式控制字v写入计数初值写入计数初值v读取计数值读取计数值v8254新增读回命令新增读回命令1 方式控制字(A1A011)计数器计数器读写格式读写格式工作方式工作方式BCDD7D6D5D4D3D2D1D000 计数器计数器001 计数器计数器110 计数器计数器211 非法非法00 计数器锁存命计数器锁存命令令 01 只读写低字节只读写低字节10 只读写高字节只读写高字节11 先读写低字节先读写低字节 后读写高字节后读写高字节000 方式方式0001 方式方式1X10 方
17、式方式2X11 方式方式3100 方式方式4101 方式方式50 二进制二进制1 BCD码码示例示例8254的控制字编程;某个;某个8254的计数器的计数器0、1、2端口和控制端口地端口和控制端口地址依次是址依次是40H43H;设置其中计数器;设置其中计数器0为方式为方式0,采用二进制计数,采用二进制计数,先低后高写入计数值先低后高写入计数值mov al,30h;方式控制字:;方式控制字:30H00 11 000 0Bout 43h,al;写入控制端口:;写入控制端口:43H2 写入计数值计数值写入计数器各自的计数值写入计数器各自的I/O地址地址示例示例选择二进制时选择二进制时v计数值范围:计
18、数值范围:0000HFFFFHv0000H是最大值,代表是最大值,代表65536选择十进制(选择十进制(BCD码)码)v计数值范围:计数值范围:00009999v0000代表最大值代表最大值100008254的计数初值编程;某个某个8254的计数器的计数器0、1、2端口和控制端口地址依端口和控制端口地址依次是次是40H43H;设置计数器设置计数器0采用二进制计数采用二进制计数,写入计数初写入计数初值值:1024(400H)mov ax,1024;计数初值:;计数初值:1024(400H);写入计数器;写入计数器0地址:地址:40Hout 40h,al;写入低字节计数初值;写入低字节计数初值mo
19、v al,ahout 40h,al;写入高字节计数初值;写入高字节计数初值3 读取计数值8位数据线,读取位数据线,读取16位计数值需分两次位计数值需分两次计数在不断进行,应该将当前计数值先行锁存,然计数在不断进行,应该将当前计数值先行锁存,然后读取:后读取:v向控制字向控制字I/O地址:给地址:给8254写入锁存命令写入锁存命令v从计数器从计数器I/O地址:读取锁存的计数值地址:读取锁存的计数值读取计数值,要注意读写格式和计数数制读取计数值,要注意读写格式和计数数制;某个;某个8254的计数器的计数器0、1、2端口和控制端口地端口和控制端口地址依次是址依次是40H43H,要读取通道,要读取通道
20、1的计数值。的计数值。;则先对通道;则先对通道1发出锁存命令,然后读取数据。发出锁存命令,然后读取数据。MOV AL,40H;方式控制字:;方式控制字:30H01 00 000 0BOUT 43H,AL;写入控制端口:;写入控制端口:43HIN AL,41H7.4 8254在PC机上的应用A0A1 A0 A1D0D7D0D7OUT1OUT2OUT0GATE0GATE1GATE2CLK0CLK1CLK2D QCLK+5V接至接至DMA控制器控制器接至扬声器驱动器接至扬声器驱动器PB0PB1IRQ0DRQ0 8254+5V1.19318MHzDACK0 BRDIORIOWRDWRCST/CCS定时
21、中断和定时刷新n将将计数器计数器1作为定时刷新作为定时刷新n看如何编写初始化程序段看如何编写初始化程序段n从阅读初始化程序段从阅读初始化程序段n看看计数器计数器0作为定时中断的作用作为定时中断的作用8254初始化(定时中断)mov al,0011 0110B;计数器计数器0为方式为方式3,采用二进制计数,采用二进制计数,;先低后高写入计数值先低后高写入计数值out 43h,al;写入方式控制字写入方式控制字mov al,0;计数值为计数值为0out 40h,al;写入低字节计数值写入低字节计数值out 40h,al;写入高字节计数值写入高字节计数值计数器0:定时中断计数器计数器0:方式:方式3
展开阅读全文