文档详情

可编程接口芯片8254及其应用.ppt

发布:2017-07-07约4.95千字共68页下载文档
文本预览下载声明
第7章 可编程定时器/计数器芯片8254;7.1 定时器和计数器概述;定时举例: ①一天24小时的计时,称为日时钟。 ②在监测系统中,对被测点的定时取样。 ③在读键盘时,为去抖,一般延迟一段时间,再读。 ④在微机控制系统中,控制某工序定时启动。;[计数电路]如果记录外设提供的具有一定随机性的脉冲信号时,它主要反映脉冲的个数(进而获知外设的某种状态),常又称为计数器。 计数举例: ①对零件和产品的计数; ②对大桥和高速公路上车流量的统计。;定时功能的实现方法;7.2 8253/8254定时计数器; 8253/8254的内部结构和引脚;计数器结构示意图;1 计数器的3个引脚;2 与处理器接口;由控制字格式中SC1,SC0位决定属于哪个计数器;8254的工作方式;每种工作方式的过程类似: ⑴ 设定工作方式 ⑵ 设定计数初值 〔 ⑶ 硬件启动 〕 ⑷ 计数初值进入减1计数器 ⑸ 每输入一个时钟计数器减1的计数过程 ⑹ 计数过程结束;方式0 计数结束中断(一次有效);①;方式0;8254的方式0时序波形;方式1 可编程单稳脉冲;①;方式1;8254的1方式时序波形;方式2 频率发生器(分频器);WR;方式3 方波发生器;;方式3;方式4 软件触发选通信号;GATE;方式4和方式2的区别: (1)方式2的负脉冲是在计数到1时产生一个T的负脉冲,而方式4是在计数到0时产生一个T的负脉冲。 (2)在计数过程中,写入新的初值时,方式2是从下一次开始从新的初值计数,而方式4是从下一个脉冲就开始以新的值计数,因为方式4不能重复计数。;方式5 硬件触发选通信号;GATE;计数开始的时刻;7.3 8254的编程;1 方式控制字(A1A0=11);8254的控制字编程;2 写入计数值;8254的计数初值编程;3 读取计数值;;某个8254的计数器0、1、2端口和控制端口地址依次是40H~43H,要读取通道1的计数值。 ;则先对通道1发出锁存命令,然后读取数据。 MOV AL,40H ;方式控制字:30H=01 00 000 0B OUT 43H,AL ;写入控制端口:43H IN AL,41H ;7.4 8254在PC机上的应用;定时中断和定时刷新;8254初始化(定时中断);计数器0:定时中断;计数器1:定时刷新;8254初始化(定时刷新);扬声器控制;扬声器控制(频率设置);扬声器控制(扬声器开);扬声器控制(扬声器关);扬声器控制(主程序);在一个实际的数据采集系统中,要求5s采一个数,现场的主时钟的振荡频率为2.5MHz。 分析:选择工作方式3(方波发生器),连续工作对2.5M的脉冲分频。 时钟周期Tck=l/2.5×106 计数初值n=T/Tck=5÷(l/2.5×106 )=1.25×107 一个计数器最多的分频次数是65536,是不够用的。;采用两级计数器,用计数器0的输出OUT0作为计数器1的输入CLK1。 计数器0的计数值为50000 (C350H );计数器1的250 (FAH) 。则有: 总的计数值=50000×250=1.25 ×107 计数器0:方式3(方波发生器)控制宇36H( 0011 0110B ) 计数器1:方式2(分频器)控制字54H)( 0101 0100B ) 设:控制口地址:CRPT;0号计数器:PRT0;1号计数器:PRT1;实现上述过程的程序如下: MOV AL,36H MOV DX,CRPT OUT DX,AL ;0号计数器方式3 MOV AL,50H MOV DX,PRT0 OUT DX,AL ;计数值低8位 MOV AL,C3H OUT DX,AL ;计数值高8位 MOV AL,54H MOV DX,CRPT OUT DX,AL ; 1号计数器方式2 MOV AL,FAH MOV DX,PRT1 OUT DX,AL ;计数值低8位;例:某火灾报警系统的部分接口电路如图所示。该系统 具有温度和烟雾浓度超限报警和自动灭火功能。当温度或烟雾浓度超限时,进行光报警;两者同时超限时,进行光、声报警,并开启电磁阀,进行喷淋灭火。按键A为手动报警按钮,按键B为解除报警按钮。半导体温度传感器的温度测量范围为0℃~127℃,对应输出电压为0V~5V。ADC0809输入电压范围为0V~5V。开关式集成烟雾传感器报警时输出高电平,正常工作时输出低电平。8253的通道0、通道1、通道2均工作于方式3(方波发生器),按BCD码计数。扬声器的报警声音频率为2kHz。8253、8255的方式控制字及8255的置位/复位控制字格式
显示全部
相似文档