定时计数器应用

上传人:正** 文档编号:51718421 上传时间:2018-08-16 格式:PPT 页数:15 大小:411.50KB
返回 下载 相关 举报
定时计数器应用_第1页
第1页 / 共15页
定时计数器应用_第2页
第2页 / 共15页
定时计数器应用_第3页
第3页 / 共15页
定时计数器应用_第4页
第4页 / 共15页
定时计数器应用_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《定时计数器应用》由会员分享,可在线阅读,更多相关《定时计数器应用(15页珍藏版)》请在金锄头文库上搜索。

1、 实验四 定时计数器应用一、实验目的:1、单片机系统中,可以用软件或硬件定时,当定时时 间较长,定时准确率要求较高时,应采用硬件定时。MCS51系列单片机中有2个16位的可编程定时/计 数器T0和T1,通过本实验要求掌握T0、T1的初始化 编程和应用。2、熟悉XLISP系列 单片机综合仿真试验仪的组成和 使用方法。学会应用XLISP仿真试验和keil-uvision2集 成调试软件进行仿真实验。掌握仿真实验的步骤并能 得到正确的实验结果。二、实验步骤1、实验采用在线仿真1)使用USB线和串口线,将XL1000综合仿真 仪与微型计算机连接起来;2) 在XL1000综合仿真仪上,将JP13和JP1

2、4 两个232/USB通信选择方式端口的跳线帽跳至 232的方式 相连;3)将JP17的开关压下,选择仿真模式;4)当你的程序编写完成,并将*.asm添加到 工程中后,进行仿真前,对目标1的属性进行 修改;5)如右图,点击 工程下拉菜单中 的”目标目标 1属性”;6)单击”目标”,输入仿真器的频率12(MHz);7)选择”输出”菜单中的”生成HEX文件 ”,以便汇编后产生HEX代码,供编程器使用;8)在”调试”菜单中,选择如下功能,并”点击设置”,进行 右图设置,注意你使用 的是那个串口(Com1还 是其它的,可以看设备 管理器);9)全部确定后,对程序进行编译,并生成相应的 HEX文件后,进

3、行调试(红色的D), ;如出现错误报告,要求连上仿真 仪时,请检查有无连接USB线和串 口线,并按下仿真仪上的复位键; 10)进入调试窗口,连接上相关的连接线,点击” 全速运行”, 即可观查仿真结果;11)退出仿真时,按下仿真仪上的复位键就会自动 退到编辑模式下,修改完毕程序并编译后,再按下 ”调试”即可进入仿真模式;三、实验内容1、硬软件结合定时:利用定时/计数器T0工作在方式1,采用中断方式,晶振频率12NHZ,产生50ms的定时。应用软件与 T0结合延长定时时间至3s,使LED灯闪烁。用1PIN线将单片机的P1.1与一个LED灯相连,参考程序如下: org0000h ljmpmain o

4、rg000bh ljmpint_timer0 org0030h main: movtmod,#01h ;设置定时器工作方式寄存器。 movth0,# (65536-50000)/256;3CH movtl0,# (65536-50000)%256; B0Hmovie,#82h;设置中断允许寄存器 mov30h,#10 mov31h,#6;30H和31H是两个软件计数器。 setbtr0;启动定时 ajmp$;原地踏步 int_timer0: ;定时器0中断服务程序 。 movth0,# (65536-50000)/256 movtl0,#(65536-50000)%256;重设50MS定时。

5、djnz30h,l1 mov30h,#10 djnz31h,l1 mov31h,#6;软件计数 cplp1.1;10*6*50MS=3000MS时间到,P1.1取反 l1:reti;中断返回 end2、硬件定时:51单片机的定时器工作在方式1时的最长定时 时间为65ms(晶振12MHZ),若要更长时间的定时,需要T0和T1 2个定时器级联。(1)用1PIN线将单片机的P1.7与P3.5(定时/计数器T1外部输 入端)相连,P1.6与某个LED灯连接。(2)T0工作在方式2、定时,在P1.7输出0.4ms的方波;T1工作 在方式1,计数,在P1.6输出1S(或3S)的方波,使LED灯闪烁。(3)

6、计算时间常数。 参考程序:ORG 0000HLJMP MAIN ORG 000BH LJMP DVT0 ORG 001BHLJMP DVT1 ORG 0100H MAIN:MOV TMOD,#52H ;T0方式2定时、T1方式1计数 MOV TH0,# H ; 装入T0定时初值MOV TL0,# H SETB ET0 ; T0开中断SETB EA ; CPU开中断SETB ET1 ; T1开中断MOV TH1,# H ; 装入T1计数初值MOV TL1,# HSETB TR0 ; 启动T0SETB TR1 ; 启动T1SJMP $ ; 等待中断 DVT0 :CPL P1.6 RETI DVT1

7、: MOV TH0,# H ; 重新装入T1计数初值MOV TL0,# HCPLP1.7RETIEND3、计数:对生产线传送带上单向传送的产品计数。 要求每计6个产品发一个信号(P1.0闪烁),试用单片 机定时器/计数器T1完成该任务。 分析:(1)初始化:用T1,计数,方式2,GATE=0 (GATE=0, C/T=1, M0M1=10)TMOD=01100000B=60H计数值:X= M36 =256-6=250=?H(2)计6个产品考虑T1工作在方式2时, 溢出产生中断, 在中断服务程序中, 使P1.0闪烁。 参考程序:ORG 0000H AJMP START ORG 001BHCLP

8、P1.0RETIORG 0100HSTART: MOV SP, 5FH MOV TMOD, 60HMOV TH1, ?H ;置初值MOV TL1, ?H SETB TR1 ; 启动T1SETB ET1 ; 开T1中断SETB EA ; 开总中断SJMP $END 4、思考题:P1口接8个LED灯循环点亮(间隔1s),P3.2接键盘,按下后实现中断,使全部LED灯闪烁(间隔0.5s)5 次后继续循环点亮。间隔时间(1s和0.5s)用定时计数器定时实现。提交试验报告: 每次实验完毕后记录实验结果,在下次实验时提交上次实验的实验报告。报告内容:(1)实验目的 (2)实验内容(3)实验原理图与线路连接 (4)实验步骤 (5)实验结果 (6)实验体会

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号