中断计数显示系统--单片机实习课件

上传人:油条 文档编号:26790010 上传时间:2018-01-01 格式:DOC 页数:13 大小:84.50KB
返回 下载 相关 举报
中断计数显示系统--单片机实习课件_第1页
第1页 / 共13页
中断计数显示系统--单片机实习课件_第2页
第2页 / 共13页
中断计数显示系统--单片机实习课件_第3页
第3页 / 共13页
中断计数显示系统--单片机实习课件_第4页
第4页 / 共13页
中断计数显示系统--单片机实习课件_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《中断计数显示系统--单片机实习课件》由会员分享,可在线阅读,更多相关《中断计数显示系统--单片机实习课件(13页珍藏版)》请在金锄头文库上搜索。

1、单片机技术实习实习题目: 中断计数显示系统 程序设计与实现 班 级: 信息 08-2 姓 名: 学 号: 30 号 指导教师: 电气信息工程学院2目 录实习题目 .3一、实习目的及要求 .3二、实习原理 .3三、实习内容 .5四、实习心得 .13五、参考文献 .133实习题目题目:1 利用中断模拟工件计数器2 电子时钟一、实习目的及要求1 利用中断模拟采集工件通过个数2 采用 74HC595 集连方式进行数码管显示3 利用单片机定时器定时,完成时分秒的定时设计4 用数码管显示时钟二、实习原理1中断计数器程序的设计中央处理单元(CPU)是 PLC 的控制中枢,它按照 PLC 系统程序赋予的功能接

2、收并存储从编程器键入的用户程序和数据、检查电源、存储器I/O 以及警戒定时器的状态;并能诊断用户程序中的语法错误。当 PLC 投入运行时,首先它以扫描的方式接收现场各输入装置的状态和数据,并分别存入 I/O 映象区,然后从用户程序存储器中逐条读取用户程序,经过命令解释后,按指令的规定执行逻辑或算数运算的结果送入 I/O 映象区或数据寄存器内,等所有的用户程序执行完毕之后,最后将 I/O 映象区的各输出状态或输出寄存器内的数据传送到相应的输出装置,如此循环运行直到停止运行74HC595 应用(数码管显示)74HC595 是具有 8 位移位寄存器和一个存储器,三态输出功能。移位寄存器和存储器是分别

3、的时钟。数据在 SCK 的上升沿输入,在 RCK 的上升沿进入的存储寄存器中去。如果两个时钟连在一起,则移位寄存器总是比存4储寄存器早一个脉冲。移位寄存器有一个串行移位输入(SI) ,和一个串行输出(Q7 ),和一个异步的低电平复位,存储寄存器有一个并行 8 位的,具备三态的总线输出,当使能 OE 时(为低电平) ,存储寄存器的数据输出到总线。74HC595 的数据端:QA-QH: 八位并行输出端,可以直接控制数码管的 8 个段。QH: 级联输出端。我将它接下一个 595 的 SI 端。SI: 串行数据输入端。 74HC595 的控制端说明:/SCLR(10 脚 ): 低点平时将移位寄存器的数

4、据清零。通常我将它接 Vcc。SCK(11 脚):上升沿时数据寄存器的数据移位。QAQBQC.QH;下降沿移位寄存器数据不变。 (脉冲宽度:5V 时,大于几十纳秒就行了。我通常都选微秒级)RCK(12 脚):上升沿时移位寄存器的数据进入数据存储寄存器,下降沿时存储寄存器数据不变。通常我将 RCK 置为低电平,当移位结束后,在 RCK 端产生一个正脉冲(5V 时,大于几十纳秒就行了。我通常都选微秒级) ,更新显示数据。/G(13 脚 ): 高电平时禁止输出(高阻态) 。如果单片机的引脚不紧张,用一个引脚控制它,可以方便地产生闪烁和熄灭效果。比通过数据端移位控制要省时省力。74HC595 主要在移

5、位的过程中,输出端的数据可以保持不变。这在串行速度慢的场合很有用处,数码管没有闪烁感。2电子时钟实现的基本原理流程如图所示5三、实习内容计数器程序:ORG 0000H ;程序入口;*IO 口的定义*DIN BIT P1.0CLK BIT P1.1ENA BIT P0.0ENB BIT P0.1ENC BIT P0.2;*函数主体部分*AJMP MAIN ;跳转到主函数ORG 0003H ;外部中断 0 的入口AJMP INT0ORG 000BH ;定时器中断 0 的入口AJMP TIMORG 0013H ;外部中断 1 的入口AJMP INT1ORG 0030H ;数函数入口MAIN: ;*主

6、函数SETB EA ;开总中断MOV TMOD,#01H ;定时器 0 的初始化MOV TH0,#3CH ;定时器的处置设定为 50msMOV TL0,#0B0HSETB ET0SETB IT0 ;外部中断 0 的初始化SETB EX0SETB IT1 ;外部中断 1 的初始化SETB EX1;*Rn 的初始化*MOV R0,#1 ;*1s 定时器,修改时间长短MOV R1,#10H ;*DELAY 延时函数的处置设定*MOV R2,#08H ;显示部分循环 8 次MOV R3,#00H ;外部中断次数的累计6;*在这里可以修改时、分、秒赋初值 *MOV R4,#00H ;秒初值的设定MOV

7、R5,#00H ;分初值的设定MOV R6,#00H ;时初值的设定CLR TR0 ;开始时关闭定时器;*显示关键函数*XIANS:CALL FENLI ;调用分离数据的子函数CALL TEMP ;调用显示函数SJMP XIANS ;实现实时显示;*数据分离的子函数*FENLI:;*秒的分离*MOV A,R4MOV B,#0AHDIV AB ;A 除以 10(B)后,高位在 A中,低位在 B 中MOV DPTR,#TABMOVC A,A+DPTR ;高位数查表MOV 41H,A ;存储高位MOV A,BMOV DPTR,#TABMOVC A,A+DPTR ;低位数查表MOV 40H,A ;存储

8、低位;*分的分离*MOV A,R5MOV B,#0AHDIV ABMOV DPTR,#TABMOVC A,A+DPTRMOV 43H,AMOV A,BMOV DPTR,#TABMOVC A,A+DPTRMOV 42H,A;*时的分离*MOV A,R6MOV B,#0AHDIV AB7MOV DPTR,#TABMOVC A,A+DPTRMOV 45H,AMOV A,BMOV DPTR,#TABMOVC A,A+DPTRMOV 44H,A;*中断按键的分离*MOV A,R3MOV B,#0AHDIV ABMOV DPTR,#TABMOVC A,A+DPTRMOV 47H,AMOV A,BMOV D

9、PTR,#TABMOVC A,A+DPTRMOV 46H,ARET ;子函数返回;*显示函数的实现*;*在这里可以改变时、分、秒的显示顺序TEMP:CALL ENL ;将 74138 的 A 端置为低MOV A,46HLCALL XIANSHIMOV A,47HLCALL XIANSHIMOV A,44H ;显示秒的低位LCALL XIANSHIMOV A,45H ;显示秒的高位LCALL XIANSHI;MOV A,#0FFH ;数码管灭;LCALL XIANSHIMOV A,42H8LCALL XIANSHIMOV A,43HLCALL XIANSHI;MOV A,#0FFH;LCALL

10、XIANSHIMOV A,40HLCALL XIANSHIMOV A,41HLCALL XIANSHICALL ENH ;让 74138 的 A 端为高RET ;子函数的返回;*数字钟计数部分*TIM:DJNZ R0,TIMER0MOV R0,#1 ;*1S 定时INC R4CJNE R4,#60,TIMER0 ;*判断是否到 60 秒MOV R4,#0INC R5CJNE R5,#60,TIMER0 ;*判断是否到 60 分MOV R5,#0INC R6CJNE R6,#24,TIMER0 ;*判断是否到 24 小时MOV R6,#0ENL:CLR ENASETB ENBSETB ENCRE

11、TENH: SETB ENASETB ENBSETB ENCRET;*定时器 0*9TIMER0:MOV TH0,#3CHMOV TL0,#0B0HRETI;*外部中断 0*INT0:CPL TR0 ;外部中断RETI;*外部中断 1*INT1:INC R3CJNE R3,#100,LL ;*最大计数 99 次MOV R3,#00HLL: RETI;*显示函数*XIANSHI:RLC AJC DINHCLR DINSJMP L1DINH:SETB DINL1:CALL DELAYSETB CLKCALL DELAYCLR CLKCALL DELAYDJNZ R2,XIANSHIMOV R2,#08HDE

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

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