定时器中断实验 - 电子钟 - 图文
更新时间:2024-01-26 04:07:01 阅读量: 教育文库 文档下载
- 定时器中断实验报告推荐度:
- 相关推荐
计算机科学与技术系
实 验 报 告
专业名称 计算机科学与技术 课程名称 单片机原理与应用 项目名称 定时器/中断实验——电子钟
班 级
学 号 姓 名
同组人员 无
实验日期 2016年4月8号
一、实验目的与要求
熟悉MCS51类cpu的定时器、中断系统编程方法、了解定时器的应用、实时程序的设计和调试技巧。
二、实验内容
2.1 实验完成内容
1、编写一个时钟程序,使用单片机定时器1产生一个50ms的定时中断,对定时中断计数,将时、分、秒显示在数码管上。
2、将单片机的P3.5口与独立按键K1相连。要求通过计数器对按键按压次数进行计数,并将计数结果显示在LED上,或者通过外部中断实现按键计数。要求显示范围为0-99。记满后从零开始重新计数。
2.2 芯片选型
ATMEL89C51单片机、LED数码显示管、独立按键
2.3 电路原理图
2.4 关键资源说明(所应用单片机内部资源及外围接口芯片的核心说明) 实验中用到了定时器T0,是由特殊功能寄存器TH0、TL0构成。工作方式寄存器TMOD的低四位用于控制T0的工作方式和启动模式,定时器/计数器控制寄存器TCON的低四位同样用于控制T0的启停和计数溢出标志位。
2.5 程序流程图
三、实验程序
STCP_595 EQU P2.0 SHCP_595 EQU P2.1 DS_595 EQU P2.2
HOUR EQU 30H;存放小时变量 MIN EQU 31H;存放分钟变量 SEC EQU 32H;存放秒钟变量 COUNT EQU 33H;5ms计数加1 ADDR EQU 34H;位选 DAT EQU 35H;段选 KEY EQU 36H;键值 ORG 0000H LJMP MAIN ORG 0003H LJMP X0_INT ORG 000BH LJMP T0_INT ORG 0100H
MAIN:
LCALL UNIT_TIMER
START: ;初始化一次 LCALL DISPLAY LJMP START UNIT_TIMER:
MOV TMOD,#01H;定时器0工作方式1 MOV TH0, #60;赋初值 MOV TL0, #176
SETB TR0;启动定时器0
SETB ET0;打开定时器0开关 SETB EX0 SETB IT0
MOV COUNT,#0 MOV SEC, #0 MOV MIN, #0 MOV HOUR,#0 MOV R1, #0 MOV KEY, #0
SETB EA;打开总开关 RET ;返回
T0_INT: ;中断服务程序 (获取 时 分 秒) PUSH ACC; PUSH PSW
MOV TH0, #60;赋初值 MOV TL0, #176
INC COUNT;每隔50ms加1 POP PSW POP ACC RETI X0_INT:
PUSH ACC PUSH PSW
LCALL DELAY//延时12ms消抖 LCALL DELAY
JB INT0,RECOVER1;MOV C,F2H; ;CJNE C,#0,RECOVER INC KEY MOV A,KEY
CJNE A,#100,RECOVER1 ;CJNE A,#64H,RECOVER MOV KEY,#0 RECOVER1: POP PSW POP ACC
RETI DISPLAY:
MOV A,COUNT
CJNE A,#20,RECOVER MOV COUNT,#0 INC SEC MOV A, SEC
CJNE A, #60,RECOVER MOV SEC,#0 INC MIN MOV A,MIN
CJNE A,#60,RECOVER MOV MIN,#0 INC HOUR MOV A,HOUR
CJNE A,#24,RECOVER
MOV SEC,#0 ;秒钟变量清除为0 MOV MIN,#0 ;分钟变量清除为0 MOV HOUR,#0 ;小时变量清除为0 MOV A,KEY
;CJNE A,#100,RECOVER ;CJNE A,#64H,RECOVER 乱码
MOV KEY,#0
RECOVER: //每时每刻都显示 MOV ADDR,#05H MOV A,SEC ;显示个位的秒 MOV B,#10 ;出错,与10H区别 10H表示16 DIV AB MOV R1,A MOV DAT,B
LCALL SEND_LED
MOV ADDR,#04H ;显示十位的秒 MOV DAT,R1
LCALL SEND_LED
MOV ADDR,#03H ;显示个位的分 MOV A,MIN MOV B,#10 DIV AB MOV R1,A MOV DAT,B
LCALL SEND_LED
MOV ADDR,#02H ;显示十位的分
不能放在这 否则出现
MOV DAT,R1
LCALL SEND_LED
MOV ADDR,#01H MOV A,HOUR MOV B,#10 ;有误 DIV AB MOV R1,A MOV DAT,B
LCALL SEND_LED
MOV ADDR,#00H MOV DAT,R1
LCALL SEND_LED
MOV ADDR,#07H MOV A,KEY MOV B,#10 DIV AB MOV DAT,B MOV R1,A
LCALL SEND_LED
MOV ADDR,#06H MOV DAT,R1
LCALL SEND_LED RET SEND_LED:
MOV DPTR, #SEG_ADDR MOV A,ADDR
MOVC A,@A+DPTR LCALL WR_595
MOV DPTR, #SEG_DAT MOV A,DAT
MOVC A,@A+DPTR LCALL WR_595 LCALL OUT_595 RET OUT_595:
CLR STCP_595 //; NOP NOP
SETB STCP_595 RET WR_595:
;显示个位的时 ;显示十位的时 ;显示个位的按键数 ;显示十位的按键数存储寄存器输入
MOV R5,#8H ;数码管的8位 LOOP1: RLC A ;带进位位左移 MOV DS_595,C //;送数据进595 //;移位寄存器时钟,根据DATASHEET,送数据进去要一个SCK时钟周期。 CLR SHCP_595 NOP NOP
SETB SHCP_595
DJNZ R5,LOOP1 //;8位数据是否送完 DJNZ只能处理寄存器和地址 RET DELAY:;12MS: MOV R5,#48 DEL:
MOV R6,#250 DJNZ R6,$ DJNZ R5,DEL RET
/*CLR_595:
MOV A,#0FFH LCALL WR_595 MOV A,#0FFH LCALL WR_595 LCALL OUT_595 RET*/
SEG_DAT : DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H SEG_ADDR: DB 01H,02H,04H,08H,10H,20H,40H,80H END
四、实验运行效果及说
五、实验分析与小结
实验时,要注意线路的正确连接,要注意定时器T0的工作方式寄存器TMOD和控制寄存器TCON的使用方法,有效的启动T0的工作,要明白中断的意义,何时执行中断子程序,并且执行时,要注意堆栈的保护断点和恢复断点的功能,计数时,达到99时,要重新置零;显示定时和计数时,要实时通过SEND_LED子程
序向LED数码显示管输送数据,并显示出来。通过本次实验,让我对中断和定时器T0的使用有了进一步的认识,并在以后的单片机实验中,要学会正确的使用中断程序和T0定时器,加深对它们的理解。
六、其它
得分(百分制)
正在阅读:
定时器中断实验 - 电子钟 - 图文01-26
变压器尺寸对照表08-09
对三电平整流器主电路建模的研究03-29
音乐活动:魔盒握手04-11
2019年高考数学(理)二轮强化训练:专题3第1讲等差数列、等比数列及答案12-04
植物专题 Word 文档 - 图文06-06
锐角三角函数精析精练08-24
送别礼物10-29
大连理工贾振元版机械制造技术基础重点05-30
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 电子钟
- 定时器
- 中断
- 实验
- 图文
- 高中历史(人民版)复习 历史脉络·第1部分 专题3
- 中国创业教育环境与大学生创业现状
- 眼镜技术知识 - 图文
- 接触粉尘岗位职业健康操作规程
- Retinex1
- 江苏省中等职业学校2017-2018学年学业水平考试语文模拟试卷2
- 全国2009年7月自考学前教育原理试题及答案
- NETGEAR WGR614v10快速安装指南 - 图文
- 园林绿化养护应急预案
- 桩基专项安全施工方案 - 图文
- 出生率的计算
- 关于对我市大学生志愿者进行2011年度考
- 6计算机网络基础ok
- 电压比较器资料
- 江苏省扬州中学2015届高三1月质量检测英语试题无听力
- 基于JAVA的ATM模拟系统代码
- 河北省百家重点出口企业名单
- PhotoshopCS工具具体介绍
- 高三语文质量分析
- 2013届高考物理冲刺套卷(大纲版,十三) - 图文