- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微型计算机原理与接口技术 ;第八章 可编程接口芯片及应用;主要内容;重点内容;8.1 8253可编程定时/计数器
;二、 定时方法;8.2 8253的引脚及结构;DB;D7~D0 、CS、RD 、WR、 A1,A0 ;CLK0
GATE0
OUT0;编程结构: ;计数器 / 定时器 8253;8.2.2 8253的工作过程:;8.2.3 8253的编程 ;计数启动方式:;工作方式: ;方式0;图 8-2-3 方式0——计数结束产生中断;图 8-2-4 单脉冲触发器;图 8-2-5 分频器;软、硬件启动,自动重复计数。
装入初值后OUT端变高电平,
OUT连续输出对称方波:;图 8-2-6 方波发生器;图 8-2-7 软件触发的选通信号发生器;图 8-2-8 硬件触发的选通信号发生器;工作方式特点:;
方式3(方波发生器)
OUT输出方波,前半周期为高,后半周期为低。
计数过程中修改初值不影响本半轮计数过程。
其余的与方式2 类似。;方式4(软件触发选通)
计数过程中,GATE 端为“1”
写入一次初值,计数一个周期,停止计数。
每个计数周期结束时(减到0时),OUT端输出一个TCLK宽度的负脉冲。
计数过程中修改初值不影响本轮计数过程。
方式5(硬件触发选通)
写入初值时,GATE 端为“0”
GATE每出现一次正脉冲,计数一个周期,然后停 止计数。
每个计数周期结束时(减到0时),OUT端输出一个TCLK宽度的负脉冲。
计数过程中修改初值不影响本轮计数过程。;8.3 8253可编程计数/定时器的应用; 8.3.1 连接示意图;8.3.2 初始化流程;8253初始化:
控制字
计数初值:
已知:CLK 的频率fc与定时的时间t.
计数初值: n= fc ? t
例1: fc=1MHZ,最大计数初值:
65536
一个定时器最大定时时间:
N/fc=65536/ 106 =0.065536s;例2:设定时器0、定时器1工作于方式2,外部提供一个时钟,频率f=2MHZ。要求定时器1每5ms产生一个脉冲,定时器0每5s产生一个脉冲。
1). 一个定时器的最大定时时间:
65536/(2*106)=0.032768 s=32.768ms
2). 将定时器1的CLK1接2MHZ时钟,计数初值:
3).将定时器1的OUT1端接到定时器0的CLK0端,定时器0的计数初值:
;8253;MOV AL; CNT0控制字;方式2,
OUT 43H ,AL
MOV AX ,1000H;(3E8H) CNT0初值
OUT 40H ,AL
MOV AL ,AH
OUT 40H,AL
MOV AL ; CNT1控制字
OUT 43H ,AL
MOV AX ,10000H;(270EH ) CNT1初值
OUT 41H ,AL
MOV AL ,AH
OUT 41H ,AL;例3:计数器2输出600HZ方波,送扬声器。工作于模式3.;发声子程序:; 8255控制程序:
IN AL,61H ;读8255的PB口原输出值
MOV AH,AL ;保留到AH
OR AL,03H ;使PB0\PB1均为1
OUT 61H,AL ;打开GATE2门,输出方波到扬声器
SUB CX, CX ;CX为循环次数,最大为216
L: LOOP L ;延时
DEC BL ;BL为子程序入口条件
JNZ L ;BL=6,发长声(3S),BL=1发短声(0.5S)
MOV AL,AH ;取回8255的PB口原输出值
OUT 61H, AL ; 恢复8255PB口,停止发声
RET
SSP ENDP ; ;2.5MHZ;(1)8253的数据线(D7~D0)与CPU的高8位数据线(D15-D8)相
文档评论(0)