单片机课程设计基于单片机的定时器设计

合集下载

单片机定时闹钟课程设计

单片机定时闹钟课程设计

单片机定时闹钟课程设计一、课程目标知识目标:1. 理解单片机定时器的工作原理,掌握定时器的编程方法;2. 学会使用单片机实现闹钟功能,了解时间计算与时间显示的基本方法;3. 掌握相关电子元器件的原理和功能,如晶振、电容、数码管等。

技能目标:1. 能够运用C语言编写单片机程序,实现闹钟的定时与显示功能;2. 学会使用调试工具对单片机程序进行调试,解决常见问题;3. 提高动手能力,能够独立完成单片机定时闹钟的硬件电路搭建与程序编写。

情感态度价值观目标:1. 培养学生对电子技术的兴趣,激发创新意识;2. 培养学生团队协作精神,学会共同解决问题;3. 增强学生实践操作能力,树立实践出真知的观念。

课程性质:本课程为实践性课程,结合理论教学,注重培养学生的动手能力与实际应用能力。

学生特点:学生具备一定的单片机基础知识,对编程有一定了解,但对实际应用尚缺乏经验。

教学要求:结合学生特点,注重理论与实践相结合,以学生为主体,引导学生主动参与,提高学生的实践操作能力。

在教学过程中,将课程目标分解为具体的学习成果,以便进行教学设计和评估。

二、教学内容1. 理论知识:- 单片机定时器/计数器的工作原理与编程方法;- 时间计算与时间显示技术;- 硬件电路设计原理,包括晶振、电容、数码管等元器件的应用。

2. 实践操作:- 搭建单片机定时闹钟的硬件电路;- 编写单片机程序,实现定时与显示功能;- 使用调试工具对程序进行调试,解决常见问题。

3. 教学大纲:- 第一阶段:回顾单片机基础知识,介绍定时器/计数器原理,分析闹钟功能需求;- 第二阶段:学习时间计算与显示技术,讲解硬件电路设计方法;- 第三阶段:动手实践,分组进行硬件电路搭建与程序编写;- 第四阶段:程序调试与优化,展示成果,总结经验。

4. 教材关联:- 教材第3章:单片机定时器/计数器的原理与应用;- 教材第4章:C语言编程基础,涉及闹钟程序编写;- 教材第5章:电子元器件及其应用,用于硬件电路设计。

基于单片机的定时闹钟设计

基于单片机的定时闹钟设计

基于单片机的定时闹钟设计设计定时闹钟是人们日常生活中常见的需求之一,而单片机技术的发展为定时闹钟的实现提供了可行的解决方案。

本文将介绍基于单片机的定时闹钟设计。

一、研究背景及意义在现代社会中,时间是人们日常生活中非常重要的一个因素。

为了更好地规划时间和提高生活效率,人们需要定时提醒自己进行各种活动。

闹钟作为定时提醒的工具,在人们的日常生活中扮演着不可替代的角色。

而基于单片机的定时闹钟实现具有高精度、多功能等优点,因此备受人们青睐。

二、技术方案设计本文设计的基于单片机的定时闹钟主要由三部分组成:时钟电路、单片机控制电路和显示电路。

1. 时钟电路时钟电路采用RTC芯片,可以提供高精度的时间计量。

RTC芯片内部自带晶振,保证了较高的时钟精度。

时钟电路主要功能为提供当前时间,包括小时、分钟和秒。

2. 单片机控制电路单片机控制电路是实现定时闹钟的核心部分。

程序流程如下:①初始化:单片机启动后,需要对RTC芯片和闹钟设定进行初始化,包括设定当前时间和设定闹钟时间。

②计时函数:单片机开启定时器,在每秒钟时钟信号来临时,计时器会进行一次计数。

③闹钟判断:单片机判断当前时间是否等于闹钟设定时间,如果相等,则触发闹钟事件,启动蜂鸣器提示。

④按键设置:单片机可以通过按键进行时间设置和闹钟设置,包括增加或减少小时、分钟和秒数,并将设置信息保存至RTC芯片内存中。

3. 显示电路显示电路采用数码管进行显示,使用单片机控制输出数据。

数码管分为小时显示、分钟显示和秒显示,可以满足不同的显示需求。

三、实验结果分析通过实验结果可以发现,本文设计的基于单片机的定时闹钟可以准确地显示时间和定时提醒。

同时,可以通过按键进行时间和闹钟的设置,并存储至RTC芯片内部,保证了时间和闹钟的持久性。

四、结论及展望基于单片机的定时闹钟设计具有实用性和可行性,可以提高人们生活的效率和品质。

然而,本设计在信号筛选和抗干扰能力方面还有一定的改进空间,需要通过更深入的研究来进一步完善。

单片机定时器毕业设计(论文)

单片机定时器毕业设计(论文)

毕业设计毕业设计题目:学生学号:学生姓名:所在系(部):专业及班级:指导教师:完成日期:《电气自动化》专业毕业设计任务书课题名称:定时系统课题类型:模拟课题设计的目的:(1)定时设定由按键部分控制(2)实现定时时间的显示数码管显示:分(十位)分(个位)∶秒(十位)秒(个位)(3)到点响铃(4)系统运行中可重新设定定时值(5)最大实现99分59秒的定时设计的任务及主要内容::第一章概述1 任务设计(1)定时设定由按键部分控制(2)实现定时时间的显示数码管显示:分(十位)分(个位)∶秒(十位)秒(个位)(3)到点响铃(4)系统运行中可重新设定定时值(5)最大实现99分59秒的定时2 总体方案(1)设计框图系统框图如图1(2)设计思路利用89C51单片机作为本系统的中控模块。

上电后,按下功能键进入调时状态,通过各单元电路将按键部分设定的时间通过定时时间显示部分中的LED数码管显示出来,当时间设定完毕后再次按下按键部分的功能键,闹铃模块的蜂鸣器鸣叫0.5S以示定时器开始工作,到点实现响铃,再由按键部分关闹铃。

中途可重新设置定时数值。

复位部分除上电初实现复位外,其余任何时候可按键实现复位。

注:按键部分一共有4个按键,分别为功能键P3.0,秒设定键P3.1(增),分设定键P3.2(增)分设定键P3.3(减)。

3、方案论证(1)定时部分定时部分是本设计的核心部分。

方案:本方案完全用软件实现定时。

原理为:在单片机内部存储器设两个字节分别存放时钟的分、秒信息。

利用键盘部分对定时时间进行设定,由定时显示部分数码管显示,同时定时器与软件结合实现1秒定时中断,每产生一次中断,存储器内相应的秒个位减1;若秒个位减到0,则判秒十位值是否为0,若不是,则秒个位赋9,秒十位减1;分同理。

该方案具有硬件电路简单的特点。

(2)闹铃器件的选择方案:采用蜂鸣器闹铃,当到设定时间时,单片机向蜂鸣器送出高电平,蜂鸣器发生。

采用蜂鸣器闹铃结构简单,控制方便。

单片机定时闹钟课程设计

单片机定时闹钟课程设计

单片机定时闹钟课程设计一、课程目标知识目标:1. 让学生掌握单片机的基本原理,理解定时器的功能和工作原理。

2. 使学生掌握定时闹钟程序编写的基本方法,了解中断处理的相关知识。

3. 帮助学生了解电子时钟的基本构成,掌握时间计算和显示的相关技巧。

技能目标:1. 培养学生动手实践能力,学会使用编程软件编写、调试程序,实现单片机定时闹钟功能。

2. 提高学生分析问题和解决问题的能力,能够独立完成定时闹钟课程的各项任务。

3. 培养学生团队协作能力,学会在项目过程中进行有效沟通和分工合作。

情感态度价值观目标:1. 培养学生对单片机编程的兴趣,激发他们探索未知、自主学习的精神。

2. 培养学生勇于尝试、不怕失败的品质,提高他们面对困难时的心理素质。

3. 增强学生的创新意识,鼓励他们发挥想象力和创造力,设计出具有个性的定时闹钟作品。

课程性质分析:本课程属于电子技术与应用领域的实践课程,旨在让学生通过动手实践,掌握单片机定时闹钟的设计与制作。

学生特点分析:学生处于中学阶段,具有一定的电子技术基础和编程能力,对新鲜事物充满好奇,喜欢动手实践。

教学要求:1. 结合课本知识,注重理论与实践相结合,提高学生的实际操作能力。

2. 注重培养学生的创新精神和团队协作能力,提高他们的综合素质。

3. 以学生为主体,关注个体差异,因材施教,使每个学生都能在课程中取得进步。

二、教学内容1. 单片机基础原理回顾:包括单片机的结构、工作原理、定时器/计数器功能。

2. 定时器编程技术:重点讲解定时器的初始化、中断处理程序编写,以及定时器应用实例。

- 教材章节:第三章《单片机定时器/计数器》3. 中断系统原理:介绍中断的概念、中断优先级、中断向量表,以及中断处理流程。

- 教材章节:第四章《中断系统》4. 显示技术:讲解数码管、LCD等显示器件的工作原理和编程方法。

- 教材章节:第五章《显示技术》5. 定时闹钟设计与实现:包括闹钟功能的整体设计、程序编写、调试与优化。

单片机定时器的设计

单片机定时器的设计

单片机定时器的设计一、单片机定时器的基本原理单片机定时器是通过内部或外部时钟源产生固定时间间隔触发中断来实现的。

在单片机中,通常采用计数器的方式来实现定时器功能。

计数器在一次计数结束之后会自动从初始化值重新开始计数,并且触发中断。

因此,我们可以通过设置计数器的计数值和时钟源的频率来实现所需的定时功能。

二、单片机定时器的设计步骤要设计一个有效的单片机定时器,我们需要按照以下步骤进行操作。

1.确定所需的定时时长首先需要确定所需的定时时长,以便后续的计数器设置。

可以根据具体应用场景来确定定时时长,比如几毫秒、几十毫秒、几百毫秒等。

2.选择合适的计数器位宽计数器位宽决定了定时器能够计数的最大值。

通常,单片机提供的计数器位宽有8位、16位、32位等多种选择。

要根据所需的定时时长来选择合适的计数器位宽,确保可以覆盖所需的最大计数值。

3.设置计数器初始值计数器的初始值决定了定时器的倒计时开始值。

根据所需的定时时长和计数器的位宽,可以通过简单的计算得出计数器初始值。

同时,还需要考虑时钟源的频率是否与计数器的位宽匹配,以避免定时器溢出或计数不准确的问题。

4.配置定时器中断定时器中断是实现定时功能的核心部分。

在单片机中,定时器溢出时会产生中断,通过中断服务函数来处理定时器事件。

可以根据具体需求选择在时间到达时产生中断,还是定时一段时间后再产生中断。

三、单片机定时器的实现方法根据单片机的不同型号和架构,实现定时器的方法有所不同。

下面以常见的基于8051单片机的定时器实现为例进行说明。

1.选择定时器模式8051单片机中,定时器可以工作在16位定时器(Timer0和Timer1)和8位定时器(Timer2)两种模式下。

根据实际需求选择合适的定时器模式。

2.配置定时器控制寄存器定时器控制寄存器用于设置定时器的工作模式和时钟源。

根据实际需求,设置定时器模式、计数器位宽、时钟源等参数。

3.设置计数器初始值设置计数器初始值,使定时器开始倒计时。

基于80C52单片机的多路数字定时抢答器设计

基于80C52单片机的多路数字定时抢答器设计

课程设计任务书学生姓名: XXX 专业班级:电子科学与技术1302班指导教师: XX 工作单位:信息工程学院题目: 多路数字定时抢答器设计初始条件:本课程设计既可以选用集成电路:74LSl48,74LS279,74LS48,74LSl92,NE555,74LS00,74LSl21和其它器件等,实现八路定时抢答功能。

又可以使用单片机系统构建多路数字定时抢答器。

要求用蜂鸣器和光电二极管作声光报警器件,工作电源Vcc为+5V。

要求完成的主要任务: (包括课程设计工作量及技术要求,以及说明书撰写等具体要求)1、课程设计工作量:1周。

2、技术要求:①可同时供8名选手(或代表队)参赛,其编号分别是0到7,各用一个抢答按钮,按钮的编号与选手的编号相对应。

②给节目主持人设置一个控制开关,用来控制系统的清零(编号显示数码管灭灯)和抢答的开始。

③抢答器具有数据锁存和显示的功能。

抢答开始后,若有选手按动抢答按钮,编号立即锁存,并在LED数码管上显示出选手的编号,同时扬声器给出音响提示。

此外,要封锁输入电路,禁止其它选手抢答。

优先抢答选手的编号一直保持到主持人将系统清零为止。

④抢答器具有定时抢答的功能,且一次抢答的时间可以由主持人设定(如30秒)。

当节目主持人启动“开始”键后,要求定时器立即进行减计时,并用显示器进行显示,同时扬声器发出短暂的声响,声响持续时间0.5秒左右。

⑤参赛选手在设定的时间内进行抢答,抢答有效,定时器停止工作,显示器上显示选手的编号和抢答时刻的时间,并保持到主持人将系统清零为止。

⑥如果定时抢答的时间已到,却没有选手抢答时,本次抢答无效,系统进行短暂的报警,并封锁输入电路,禁止选手超时后抢答,定时显示器上显示00。

⑦画出总体电路原理图。

3、查阅至少5篇参考文献。

按《武汉理工大学课程设计工作规范》要求撰写设计报告书。

全文用A4纸打印,图纸应符合绘图规范。

时间安排:1、2015 年6 月29 日集中,作课设具体实施计划与课程设计报告格式的要求说明。

基于单片机设计定时器CH451

基于单片机设计定时器CH451

LOAD BIT P1.2DIN BIT P1.0DCLK BIT P1.1DOUT BIT P3.3ST EQU 21H ;存状态号KEY EQU 22H ; 存放按键键码KD EQU 23H ;存放按键号KEY_F BIT 00H ;有键标志位SEC EQU 25H ;秒单元MIN EQU 26H ;分单元HOUR EQU 27H ;小时单元ORG 0000HAJMP MAINORG 0013H ;键盘中断入口LJMP KEY_INTORG 000BH ;定时器中断入口LJMP CLOCKORG 100HMAIN:MOV SP, #60H ;初始化MOV ST, #0CLR KEY_FMOV KEY,#0MOV KD,#0MOV HOUR,#0MOV SEC,#0MOV MIN,#0MOV TMOD,#01H ;定时器初始化MOV TH0,#3CHMOV TL0,#0B0HMOV IE,#82HMOV R0 ,#14HCH451_INIT: ;CH451初始化子程序MOV P1,#60HCLR DIN ;先低后高SETB DCLK ;置为默认的高电平SETB DIN ;输出上升沿CH451选择4线串行接口SETB LOADSETB DOUT ;置为输入NOPMOV B,#04H ;设置CH451MOV A,#03H ;关看门狗开显示键盘LCALL WRITENOPMOV B,#05H ;设置显示模式为译码方式MOV A,#80HLCALL WRITENOPCLR IT1 ;置外部中断信号为低电平触发CLR IE1 ;清中断标志SETB EX1 ;允许键盘中断SETB EA ;开总中断START1: LCALL DISP ;当前计时显示START2:JNB KEY_F,START1 ;无按键等待CLR KEY_F ;有按键,清按键标志GET_ADD: ;获得状态行地址MOV DPTR,#STABMOV A,STMOV B,#6MUL ABADD A,DPL ; DPTR=#STAB + ST*6 MOV DPL,AMOV A,BADDC A,DPHMOV DPH,ANEXT_ST: ;获得次状态MOV A, KDRL A ;KD*2MOV R0,AMOVC A,@A+DPTR ;查表取出次状态号MOV ST,A ;更新STMOV A,R0INC A ;偏移量加1GET_TASK:MOVC A,@A+DPTR ; 得到任务号MOV B,#3MUL AB ;每个LJMP占3个字节MOV DPTR,#TASKJMP @A+DPTR ;散转到子任务程序入口TASK:LJMP P_0LJMP P_1LJMP P_2LJMP P_3LJMP P_4LJMP P_5LJMP P_6LJMP P_7LJMP P_8LJMP P_9LJMP P_10P_0:NOPSETB TR0LCALL DISPMOV ST ,#0LJMP START2P_1:CLR TR0MOV B,#06HMOV A,#03HLCALL WRITELJMP START2P_2:CLR TR0CLR CMOV A,#9AHSUBB A,#01HADD A,HOURDA ACJNE A,#99H,LOOP1MOV A,#23H LOOP1:MOV HOUR ,AMOV ST ,# 1CLR CLJMP START2P_3: CLR TR0MOV A,HOURINC ADA ACJNE A,#24H,LOOP2MOV A,#00HLOOP2: MOV HOUR ,A MOV ST ,#1LJMP START2P_4:CLR TR0MOV B,#06HMOV A,#18HLCALL WRITELJMP START2P_5:CLR TR0CLR CMOV A,#9AHSUBB A,#01HADD A,MINDA ACJNE A,#99H,LOOP3MOV A,#59H LOOP3:MOV MIN ,ACLR CMOV ST ,#2LJMP START2P_6:CLR TR0MOV A,MININC ADA ACJNE A,#60H,LOOP4MOV A,#00H LOOP4:MOV MIN ,AMOV ST ,#2LJMP START2P_7:CLR TR0MOV B,#06HMOV A,#0C0HLCALL WRITELJMP START2 P_8:SETB TR0MOV B,#06HMOV A,#00HLCALL WRITELCALL DISPMOV ST ,#0LJMP START2P_9:CLR TR0CLR CMOV A,#9AHSUBB A,#01HADD A,SECDA ACJNE A,#99H,LOOP5MOV A,#59HLOOP5:MOV SEC ,ACLR CMOV ST ,#3LJMP START2P_10:CLR TR0MOV A,SECINC ADA ACJNE A,#60H,LOOP6MOV A,#00HLOOP6:MOV SEC ,AMOV ST ,#3LJMP START2STAB: DB 0,0, 1,1, 0,0 ; stat0DB 1,2, 2,4, 1,3 ; stat1DB 2,5, 3,7, 2,6 ; stat2DB 3,9, 0,8, 3,10 ; stat3KEY_INT:PUSH DPLPUSH DPH ; 保护主程序现场PUSH ACCPUSH PSWLCALL READ ; 读键码MOV R3, A ; 将健码放到R3中K0: CJNE R3,#40H,K1 ; 以下比较健码得出键值, MOV A,#0H ; 放到A中SJMP KEY_L1 ; 转换成键号K1: CJNE R3,#41H,K2MOV A,#1HSJMP KEY_L1K2: CJNE R3,#42H, KEY_OUTMOV A,#2HKEY_L1: MOV KD,A ; 保存键值SETB KEY_F ; 置有键标记KEY_OUT:POP PSWPOP ACC ; 恢复主程序现场POP DPHPOP DPLRETICLOCK: PUSH PSWPUSH ACCDJNZ R0,NEXTMOV R0 ,#14HLCALL JINWEINEXT: MOV TH0,#3CH ;MOV TL0,#0B0HPOP ACCPOP PSWRETIJINWEI:MOV A,SECCLR CMOV A,#9AHSUBB A,#01HADD A,SECDA AMOV SEC,ACJNE A,#99H,END1MOV SEC,#59HMOV A,MINMOV A,#9AHSUBB A,#01HADD A,MINDA AMOV MIN,ACJNE A,#99H,END1MOV MIN,#59HMOV A,HOURMOV A,#9AHSUBB A,#01HADD A,HOURDA AMOV HOUR,ACJNE A,#99H,END1MOV HOUR,#23HEND1:RETDISP: ;显示子程序PUSH PSWPUSH ACCMOV B,#0FH ;加载字数据7MOV A,SECANL A,#0FHACALL WRITEMOV A,SECSWAP AANL A,#0FHDEC B ;加载字数据6ACALL WRITEMOV A,#10HDEC B ;加载字数据5ACALL WRITEMOV A,MINANL A,#0FHDEC B ;加载字数据4ACALL WRITEMOV A,MINSWAP AANL A,#0FHDEC B ;加载字数据3ACALL WRITEMOV A,#10HDEC B ;加载字数据2ACALL WRITEMOV A,HOURANL A,#0FHDEC B ;加载字数据1ACALL WRITEMOV A,HOURSWAP AANL A,#0FHDEC B ;加载字数据0ACALL WRITEPOP ACCPOP PSWRETWRITE:PUSH PSWPUSH ACCCLR EX1CLR LOADMOV R7,#08HWRITE_8:RRC ACLR DCLKMOV DIN,CSETB DCLKDJNZ R7,WRITE_8MOV A,BMOV R7,#04HWRITE_4:RRC ACLR DCLKMOV DIN,CSETB DCLKDJNZ R7,WRITE_4SETB LOADSETB EX1POP ACCPOP PSWRETREAD: CLR EX1 ;禁止键盘中断CLR LOAD ;命令开始MOV A, #07H ;读取键值命令的高4位0111BMOV R7, #04H ;忽略12位命令的低8位RE_4: RRC A ;低位在前,高位在后CLR DCLK ;MOV DIN,C ;送出一位数据SETB DCLK ;产生上升沿通知CH451输入位数据DJNZ R7, RE_4 ;位数据未完继续SETB LOAD ;产生加载上升沿通知CH451处理命令数据CLR A ; 先清键值单元以便移位MOV R7,#07H ;读入7位键值RE_7: MOV C, DOUT ;读入一位数据CLR DCLK ;产生时钟下降沿通知CH451输出下一位数据RLC A ;数据移入ACC,高位在前,低位在后SETB DCLK ;DJNZ R7,RE_7 ;数据未完继续CLR IE1 ;清中断标志,读操作过程中有低电平脉冲SETB EX1 ;准许键盘中断RETEND。

定时闹钟单片机课程设计

定时闹钟单片机课程设计

定时闹钟单片机课程设计一、课程设计概述本次课程设计的主要目的是通过学习单片机的基本原理和应用,掌握单片机的编程技术和应用能力,完成一个定时闹钟的设计。

二、课程设计内容1. 硬件设计(1)电源模块:使用稳压电源芯片LM7805实现5V直流电源输出。

(2)时钟模块:使用DS1302实时时钟芯片,实现时间显示和闹钟功能。

(3)数码管模块:使用共阳数码管,通过74HC595芯片驱动。

(4)按键模块:使用矩阵按键模块,实现对时间设置和闹钟设置等操作。

2. 软件设计(1)初始化程序:对各个模块进行初始化设置。

(2)显示程序:将当前时间和闹钟时间显示在数码管上。

(3)设置程序:通过按键输入,实现对时间和闹钟时间的设置。

(4)闹铃程序:在设定的闹钟时间到达时,触发蜂鸣器响铃。

三、课程设计步骤1. 硬件设计首先进行硬件电路图的绘制,并进行元器件选型。

根据电路图进行焊接和调试。

其中需要注意以下几点:(1)稳压电源芯片的输入电压需要在7V以上。

(2)DS1302时钟芯片的接线需要按照电路图进行,同时需要设置时钟芯片的时间和闹钟时间。

(3)数码管模块需要进行74HC595芯片的驱动设置,同时需要设置数码管显示的位数和显示内容。

(4)矩阵按键模块需要进行按键扫描程序设计,并设置对应的操作功能。

2. 软件设计根据硬件设计完成后,进行软件程序设计。

主要包括以下几个部分:(1)初始化程序:对各个模块进行初始化设置,如时钟芯片、数码管、矩阵按键等。

(2)显示程序:将当前时间和闹钟时间显示在数码管上。

可以通过时钟芯片获取当前时间,并将其转换为数码管可以显示的格式。

(3)设置程序:通过矩阵按键输入,实现对时间和闹钟时间的设置。

可以通过编写按键扫描函数来实现对按键输入的检测,并根据不同的按键操作来实现对应的功能。

(4)闹铃程序:在设定的闹钟时间到达时,触发蜂鸣器响铃。

可以通过判断当前时间是否等于设定闹钟时间来触发蜂鸣器响铃,并在屏幕上显示提示信息。

单片机智能的定时器设计毕业设计

单片机智能的定时器设计毕业设计

.目录一、课程设计任务书 (1)二、智能定时器设计 (1)1.设计要点 (1)2.硬件设计 (4)(1)光敏电阻 (5)(2)光耦合器 (6)(3)光电开关 (7)(4)红外光电对管 (8)(5)光敏二极管与光敏三极管 (8)(6)拨码开关 (9)三、智能光电定时器软件设计…………………………………………………11.1.程序流程图 (11)1)主程序流程图 (11)2)T0 中断服务子程序 (12)2 .软件去抖 (12)3. 初始化 (12)4.硬件调试方法 (13)5.软件调试方法 (13)6.程序清单 (13)四、结论 (17)五、体会及收获 (17)参考文献 (17)课程设计任务书(智能光电定时器)1、总体方案设计根据资料将同类产品方案特点列出,画出设计方案的原理图和印制板图,说明设计的方案的特点。

2、各功能部件的硬件设计1.各种光电器件、拨码开关对时间置入方式的设计2.单片机硬件对时间置入接收部分的设计以及控制声光报警电路的设计3.单片机软件对定时,报警的编制以及电源的设计智能光电定时器设计一、智能光电定时器设计要点定时器时间置入有两种方式:拨码开关置入方式和光电置入方式拨码开关置入方式,其定时的时间精度为1秒钟;有两个拨码开关,一个设置为分钟位,一个设置为秒钟位。

光电置入方式定时的时间精度为1秒钟。

秒钟的置入电路分钟的置入电路二、智能光电定时器硬件设计1.电路图智能光电定时器电路图智能光电定时器PCB图2. 光电传感器光电传感器的作用主要是将光信号转换为电信号,它是一种利用光敏器件作为检测元件的传感器。

下面介绍一些常用的光电器件:光敏电阻和发光二极管以及光耦合器光敏电阻(一)光敏电阻的工作原理光敏电阻是用光电导体制成的光电器件(即PC器件),又称光导管,它是基于半导体光电效应工作的。

光敏电阻的灵敏度易受潮湿的影响,因此要将光电导体严密封装在带有玻璃的壳体中。

光敏电阻具有很高的灵敏度,很好的光谱特性,光谱响应从紫外区一直到红外区。

基于单片机的定时器设计

基于单片机的定时器设计

基于单片机的定时器设计1.引言定时器是一种非常常见的电子设备,用于测量和控制时间。

在嵌入式系统中,定时器通常由单片机来实现。

单片机是一种高度集成的微型计算机,拥有处理器、存储器和输入输出设备。

本文将介绍基于单片机的定时器设计,并进行详细探讨。

2.单片机定时器的概念单片机定时器是单片机内部的一个功能模块,用于生成定时的脉冲信号。

通过控制定时器的设置,可以实现各种不同的定时功能,如时间测量、延时控制、周期性信号生成等。

在控制系统中,定时器的应用广泛,对于实时控制和时间精度要求较高的场景尤为重要。

3.单片机定时器的工作原理单片机定时器通常由计数器和预分频器组成。

计数器用于计数,每计数到一个特定的值,就会产生一个中断或输出脉冲。

预分频器用于控制计数器的计数速度,通过调整预分频器的设置,可以实现不同的计数速度和定时周期。

4.单片机定时器的应用单片机定时器广泛应用于各种场景中,如通信设备、工业自动化、仪器仪表等。

在通信设备中,定时器用于生成各种调制解调信号、时钟信号等。

在工业自动化中,定时器用于周期性的控制任务,如定时采样、定时测量等。

在仪器仪表中,定时器用于测量和显示时间,并和其他功能模块进行协调。

5.单片机定时器的设计要点在进行单片机定时器设计时,需要注意以下几个要点:5.1确定定时器的应用需求根据实际的应用需求,选择适当的定时器类型和工作模式。

不同类型的单片机定时器提供了不同的功能和参数设置,需要根据具体的应用场景进行选择。

5.2设置定时器的计数值和预分频器根据应用的时间精度要求和计数周期,设置合适的计数值和预分频器。

计数值和预分频器之间存在一定的数学关系,需要进行计算和调整。

5.3配置定时器的工作模式和中断根据应用的实际需要,选择合适的定时器工作模式和中断方式。

定时器可以工作在单次触发模式和周期性触发模式,可以选择中断方式或输出脉冲方式。

5.4编写相应的程序控制定时器通过单片机的编程,用相应的指令和函数来控制定时器的工作。

基于单片机实现的定时器设计

基于单片机实现的定时器设计

基于单片机实现的定时器设计一、定时器的基本原理定时器的核心思想是通过对时钟信号进行计数来实现定时功能。

在单片机中,通常使用内部的计数器来完成这一任务。

计数器会在每个时钟周期内递增或递减,当计数值达到预设值时,就会产生定时中断或触发相应的输出。

为了实现准确的定时,需要考虑时钟源的精度和稳定性。

单片机的时钟源可以是内部振荡器,也可以是外部晶振。

外部晶振通常能够提供更高的精度和稳定性,但会增加硬件成本和设计复杂度。

二、单片机的选择在选择用于实现定时器的单片机时,需要考虑多个因素。

首先是单片机的性能,包括处理速度、存储容量和接口资源等。

其次是成本和开发难度,对于一些简单的定时应用,可以选择成本较低、开发容易的单片机;而对于复杂的系统,则可能需要性能更强的单片机。

常见的单片机系列如 51 单片机、STM32 单片机等都具备实现定时器的能力。

51 单片机是经典的 8 位单片机,具有简单易用的特点;STM32 单片机则是 32 位单片机,功能更为强大,适用于更复杂的应用场景。

三、硬件设计硬件设计主要包括单片机最小系统的搭建和定时器相关的外围电路。

单片机最小系统通常包括电源电路、复位电路和时钟电路。

电源电路为单片机提供稳定的工作电压,复位电路用于在系统启动时将单片机初始化到一个已知状态,时钟电路则为单片机提供时钟信号。

对于定时器的外围电路,如果需要输出定时信号来控制外部设备,可以添加驱动电路和接口电路。

例如,如果要控制一个电机的转动时间,可以使用继电器或晶体管来驱动电机,并通过单片机的 GPIO 口与驱动电路连接。

四、软件设计软件设计是实现定时器功能的关键部分。

首先需要对单片机进行初始化,包括设置时钟源、配置定时器的工作模式和预分频系数等。

定时器的工作模式通常有多种选择,如定时模式、计数模式等。

在定时模式下,可以设置定时器的定时周期;在计数模式下,可以通过外部脉冲来控制计数值。

预分频系数用于对时钟信号进行分频,以实现不同精度的定时。

基于单片机的定时器设计汇编

基于单片机的定时器设计汇编

基于单片机的定时器设计摘要:生活处处都有单片机,家里的所有电器只要是智能控制的都是单片机控制、现在智能手机中arm处理器也是一种高级单片机。

本文是对实时控制中的,实时显示这一功能进行进一步的研究。

实时控制系统,相对于其他的控制系统,最重要的一点就是实时。

文中的实时,指的是对时间的显示。

时间的显示包括对时、分的显示。

这些时间的显示,可以按照自己的需求进行进一步的设定。

这个实时系统,可以是通过串口接收的上位机,接收上位机中的信号,根据需求来进行时间的显示,帮助系统实现实时的效果。

同时,它可进行时间的独立显示。

利用STC89C51RC单片机作为本系统的中控模块。

上电后,按下功能键进入调时状态,通过各单元电路将按键部分设定的时间通过定时时间显示部分中的LED数码管显示出来。

中途可重新设置定时数值,复位部分除上电初实现复位外,也可人工复位。

关键词:实时;单片机;数码管;按键复位。

Based on single chip microcomputer timer designAbstract:Life is a single chip, all appliances at home as long as the intelligent control is now SCM control Intelligent mobile phone ARM processor is a kind of advanced single chip microcomputer.This article is in real-time control, real-time display this function for further studies. Real-time control system, relative to other control system, the most important thing is that in real time. In this paper, the real-time, refers to the display of time. The display includes pair, the display of the time. The display of the time, can according to your needs further. The real-time system, can be via a serial port to receive the upper machine, receiving signals in the PC, according to the demand for time display, help system to realize real time effect. At the same time, it can be independent of time.Using 89C51 microcontroller as the system control module. After power on, press the function key to transfer state, through each unit circuit timing LED digital display part of the display through the key part of the set time. You may re set the timer values, reset parts in addition to power up reset, the buttons can be reset at any time.Key Words : microcontrolle;digital tube;The Key to return.目录1引言 (1)1.1课题的来源和意义 (1)1.2定时器的应用 (1)1.3电子定时器的发展前景 (1)1.4 确定设计方案 (2)2 51单片机内部结构及计数原理 (2)2.1 51单片机内部机构 (2)2.2计数原理 (2)3 系统硬件配件设计 (4)3.1 芯片的选择 (4)3.2 交流控制接口电路 (5)3.3显示电路 (5)3.4 继电器 (5)3.5数码管 (6)4 硬件电路设计 (7)4.1 中继触发电路 (7)4.2继电器开关电路 (8)4.3时钟电路 (9)5 软件设计 (10)5.1 实现功能 (10)结论 (11)参考文献 (13)致谢 (14)附录1:程序 (15)附录2:系统仿真原理图 (21)1 引言我们在日常生活中,经常碰到一些需要定时的事情,例如:印相或放大照片,需要定在零点几秒的时间,洗衣机洗涤衣物需要定在几分钟到几十分钟的时间,电风扇需要定在数十分钟的时间。

基于单片机控制的智能定时闹钟方案设计书(含完整程序仿真图)

基于单片机控制的智能定时闹钟方案设计书(含完整程序仿真图)

本设计是定时闹钟的设计,由单片机AT89C51芯片和LED数码管为核心,辅以必要的电路,构成的一个单片机电子定时闹钟。

电子钟设计可采用数字电路实现,也可以采用单片机来完成。

数字电子钟是用数字集成电路构成的,用数码管显示“时”,“分”,“秒”的现代计时装置。

若用数字电路完成,所设计的电路相当复杂,大概需要十几片数字集成块,其功能也主要依赖于数字电路的各功能模块的组合来实现,焊接的过程比较复杂,成本也非常高。

若用单片机来设计制作完成,由于其功能的实现主要通过软件编程来完成,那么就降低了硬件电路的复杂性,而且其成本也有所降低,所以在该设计中采用单片机利用AT89C51,它是低功耗、高性能的CMOS型8位单片机。

片内带有4KB的Flash存储器,且允许在系统内改写或用编程器编程。

另外,AT89C51的指令系统和引脚与8051完全兼容,片内有128B的RAM、32条I/O口线、2个16位定时计数器、5个中断源、一个全双工串行口等。

AT89C51单片机结合七段显示器设计的简易定时闹铃时钟,可以设置现在的时间及显示闹铃设置时间,若时间到则发出一阵声响,进—步可以扩充控制电器的启停。

设计内容包括了秒信号发生器、时间显示电路、按键电路、供电电源以及闹铃指示电路等几部分的设计。

采用四个开关来控制定时闹钟的工作状态,分别为:K1、设置时间和闹钟的小时;K2、设置小时以及设置闹钟的开关;K3、设置分钟和闹钟的分钟;K4、设置完成退出。

课设准备中我根据具体的要求,查找资料,然后按要求根据已学过的时钟程序编写定时闹钟的程序,依据程序利用proteus软件进行了仿真实验,对出现的问题进行分析和反复修改源程序,最终得到正确并符合要求的结果。

设计完成的定时闹钟达到课程设计的要求,在到达定时的时间便立即发出蜂鸣声音,持续一分钟。

显示采用的六位数码管电路,如果亮度感觉不够,可以通过提升电阻来调节,控制程序中延迟时间的长短,可以获得不同的效果。

基于单片机的厨房定时器可预置分秒倒计时装置

基于单片机的厨房定时器可预置分秒倒计时装置

基于51单片机的厨房定时器设计报告学院:信息光电子科技学院专业:光电信息科学与工程年级:姓名:学号:一、设计报告概述日常生活中熬个汤、煮个蛋……都需要预定一定的时间,设计一个厨房定时器,用户预设倒计时的时长,启动后系统开始倒计时,当时间为0后,启动蜂鸣器报警。

本设计报告中的厨房定时器,是以单片机(STC89C52),四位七段数码管、按键开关和蜂鸣器等组成的综合设计系统电路。

上电,电源指示灯点亮,数码管显示为0000,用户可以通过按键开关预设定时时间,启动后系统开始倒计时,当时间为0后,蜂鸣器报警。

数码管显示分、秒,计时时间上限为99分钟,按键开关以10分钟或1分钟单位调整时间。

图1 系统设计结构图本系统组成如图1 系统设计结构图所示,主要由五个部分组成。

报警电路 (蜂鸣器)1.AT89C52单片机——控制芯片AT89C52是一个低电压,高性能CMOS 8位单片机,片内含8k bytes的可反复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元。

AT89C52为8 位通用微处理器,采用工业标准的C51内核,在内部功能及管脚排布上与通用的8xc52 相同,其主要用于会聚调整时的功能控制。

图2 AT98C52引脚图2.时钟震荡电路AT89C52中有一个用于构成内部振荡器的高增益反相放大器,与作为反馈元件的片外石英晶体或陶瓷谐振器一起构成自激振荡器,引脚XTAL1和XTAL2分别是该放大器的输入端和输出端。

外接石英晶体(或陶瓷谐振器)及电容C1、C2接在放大器的反馈回路中构成并联振荡电路。

如果使用石英晶体,电容使用30pF ±10pF,而如使用陶瓷谐振器建议选择40pF±10pF,可以使系统更稳定,避免噪音干扰而死机。

此设计采用的是12MHz的石英晶振。

基于单片机的智能定时器毕业设计

基于单片机的智能定时器毕业设计

毕业设计(论文)基于51单片机的智能定时控制器系统设计毕业设计(论文)任务书课题名称基于51单片机的智能定时控制器系统设计课题性质工程应用专业应用电子技术班级10电子(2)班学生姓名学号指导教师教研室主任系部主任发放日期一、课题条件:随着电子工业的发展,数字电子技术已经深入到了人们生活的各个层面,各种各样的电子产品也正在日新月异地向着高精尖技术发展。

数字电子时钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更长的使用寿命,因此得到了广泛的使用。

二、毕业论文(设计)主要内容:1、时间显示:用4位数码管显示当前小时和分钟,秒功能用两LED灯代替(每秒闪烁一次)。

2、可手动设定时间。

3、开机流程:系统有红色和蓝色指示灯,上电10S内,每秒红色指示灯闪烁一次,并伴有蜂鸣声,作为开机/重启提醒,此时绿色指示灯灭。

10S后红色指示灯灭,若光线较强则绿色指示灯亮,若光线较弱则绿色指示灯亮度减半进入节能模式。

3、具有整点报时功能(四短一长),可自行设定报时时间段;三、计划进度:1. 资料的收集撰写开题报告6月20日至9月8日2. 方案设计9月9日至9月15日3. 电路的设计指标分析与确定;后期的电路优化元器件的选择与参数确定9月16日至11月2日4. 毕业设计论文的修改、完善11月3日至11月10日5. 毕业设计答辩11月15 日至11月20日四、主要参考文献:a)康光华主编.电子技术基础.北京:高等教育出版社,1999.6b)b)何宏主编.单片机原理与接口技术.北京:国防工业出版社.2006.07c)c)杨西明,朱骐主编.单片机编程与应用入门.北京:机械工业出版社.2004.06d)d)先锋工作室编著.单片机程序设计实例.北京:清华大学出版社.2003.01指导教师(系)教研室主任年月日年月日摘要本次设计以AT89C51芯片为核心,辅以必要的外围电路,设计了一个简易的电子时钟,它由5V直流电源供电。

基于51单片机定时器的电子时钟设计

基于51单片机定时器的电子时钟设计

基于51单片机定时器的电子时钟设计电子时钟是一种集计时、显示时间等功能于一体的电子设备。

它可以准确地显示当前的时间,并通过定时器控制乃至更新时间。

本文将介绍基于51单片机定时器的电子时钟设计。

设计步骤如下:步骤一:硬件设计首先,需要准备以下硬件元件:1.51单片机:作为主要控制单元;2.DS1302实时时钟芯片:用于计时和保存时间数据;3.16x2字符LCD显示屏:用于显示时间;4.4x4矩阵键盘:用于调整时间和设置闹钟;5.蜂鸣器:用于报时功能;6.电位器:用于调整LCD背光亮度。

将这些硬件元件按照电路图连接起来,注意正确连接引脚和电源。

步骤二:软件设计在51单片机上编写程序,实现以下功能:1.初始化:a.初始化DS1302实时时钟芯片,设置初始时间;b.初始化LCD显示屏;c.初始化矩阵键盘;2.获取时间:a.从DS1302芯片读取当前时间;3.显示时间:a.将时间数据转换为字符,并在LCD上显示出来;4.键盘输入:a.监测矩阵键盘输入,判断用户按下的是哪个键;b.根据不同的键,执行相应的操作,如设置时间、设置闹钟等;5.闹钟功能:a.设置闹钟时间,当当前时间与闹钟时间相同时,触发蜂鸣器报时;b.可以通过按键来设置闹钟时间和开启/关闭闹钟功能。

以上是基本的电子时钟功能,可以根据实际需求进行扩展和添加其他功能。

步骤三:测试与调试步骤四:优化与扩展在基本功能正常运行的基础上,可以对电子时钟进行优化和扩展。

添加一些实用的功能,如温湿度显示、日期显示、闹钟音乐选择等,以提高电子时钟的实用性和用户体验。

总结:本文介绍了基于51单片机定时器的电子时钟设计步骤,包括硬件设计和软件编程。

通过该设计,可以实现准确显示时间、调整时间、设置闹钟等功能。

为了使电子时钟更加实用,可以根据需要进行优化和扩展。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、设计要求 (2)1.1 设计内容及要求 (2)1.2 设计方案及思路 (2)二、系统硬件设计 (2)2.1 硬件电路的总体设计方案及框图 (2)2.2 各单元硬件设计 (3)2.2..1 复位电路设计 (3)2.2.2 时钟电路设计 (3)2.2.3 显示电路设计 (4)2.2.4 主要硬件元器件介绍 (4)2.3 EDA辅助设计 (6)2.3.1 定时器的原理图 (6)2.3.2 定时器的PCB图 (6)三、系统软件设计 (9)3.1 主程序流程图 (9)3.2定时子程序流程图 (9)3.3 定时器完整程序 (12)四、系统软件仿真 (15)五、总结 (17)六、参考文献 (17)附录一:七段数码管字型码 (18)附录二:元器件清单 (18)摘要:本次课程设计是基于8051单片机控制的电子定时器设计。

设计中应用了单片中断及LED显示等技术,经历了方案设计、电路硬件设计、软件设计、软件仿真等过程,经过此次课程设计掌握了单片机应用系统的设计过程,单片机应用系统的设计流程如图所示:一、设计要求1.1 设计内容及要求以89C51单片机为核心,设计一个定时器,4位LED显示,分别显示10分,分,10秒,秒。

定时范围从1秒到59分59秒,有按键设置定时时间,按开始键后开始计时,每过一秒刷新一次定时时间,若计时时间到,停止计时,并在LED上显示定时的时间。

仪器工作过程:1、通电或复位状态显示0000;2、由按键设置定时时间;3、定时开始键按下,开始定时,每一秒刷新一次计时时间;4、定时时间到,停止计时,4位LED显示设定时间;5、复位后恢复初始状态,准备进行下一次定时。

1.2 设计方案及思路根据设计要求,本系统初步设定由单片机系统、键0——3、LED显示组成。

1、按键的输入:键0——3四个键作为时间设定的控制键,由P1口输入2、定时的显示电路:8051显示电路由4位共阴极数码管显示,由8051的串行口输出,并通过74LS164八位移位寄存器输入给数码管二、系统硬件设计2.1 硬件电路的总体设计方案及框图设计一个控制系统总体设计方案很重要,关系设计接下来的操作程序,一下就是本设计的总体框架。

按照设计要求,确定硬件电路的总体设计方案,以8051单片机为核心的控制电路,设计总框图如图1所示,此定时电路包含:复位电路、时钟电路、按键输入、显示电路,这些控制电路将在硬件电路主要模块设计中详细介绍。

图1 设计总框图2.2 各单元硬件设计2.2..1 复位电路设计单片机在启动时都需要复位,以使CPU及系统各部件处于确定的初始状态,并从初态开始工作。

8051系列单片机的复位信号是从RST引脚输入到芯片内的施密特触发器中的。

当系统处于正常工作状态时,且振荡器稳定后,如果RST 引脚上有一个高电平并维持2个机器周期(24个振荡周期)以上,则CPU就可以响应并将系统复位。

单片机系统的复位方式有:手动按钮复位(如图2所示)和上电自动复位(如图3所示)等。

在本系统中采用手动按钮复位。

图2 手动按钮复位图3 上电自动复位2.2.2 时钟电路设计时钟电路时计算机的心脏,它控制着计算机的工作节奏,CPU就是通过复杂的时序电路完成不同的指令功能的。

MCS-51的时钟信号可以由两种方式产生:一种是内部方式,利用芯片内部的振荡电路,产生时钟信号;另一种为外部方式,时钟信号由外部引入。

MCS-51单片机有HMOS型和CHMOS型,他们的时钟电路有一定的区别。

(1)、内部时钟方式内部方式的时钟电路如图4所示。

利用MCS-51内部的高增益反相放大器,在XTAL1和XTAL2引脚上外接定时元件,内部振荡电路便产生自激振荡。

定时元件一般采用石英晶体和电容组成的并联谐振回路。

(2)、外部时钟方式外部时钟方式常用于多机系统,以便各个单片机能够同步工作。

对外部振荡信号无特殊要求,但需保证脉冲宽度不小于20ns,且频率应低于单片机所支持的最高频率。

电路如图5所示。

C1C230pf 30pf图4 内部时钟方式 图5 外部时钟方式 2.2.3 显示电路设计8051显示电路由4位共阴极数码管显示,由8051的串行口输出,并通过 74LS164八位移位寄存器输入给数码管。

如图6所示:图6 显示电路2.2.4 主要硬件元器件介绍 (1)单片机STC89C51芯片8051单片机引脚图如图7所示图7 8051单片机引脚图1、主电源引脚VCC和VSSVCC——(40脚)接+5V电压;VSS——(20脚)接地。

2、外接晶体引脚XTAL1和XTAL2XTAL1(19脚)接外部晶体的一个引脚。

在单片机内部,它是一个反相放大器的输入端,这个放大器构成了片内振荡器。

XTAL2(18脚)接外晶体的另一端。

在单片机内部,接至上述振荡器的反相放大器的输出端。

3、控制或与其它电源复用引脚RST/VPD、ALE/PROG、PSEN和EA/VPP①RST/VPD(9脚)复位/备用电源输入端②ALE/PROG(30脚):低8位地址锁存使能输出端③PSEN(29脚):外部程序存储器的读选通信号。

④EA/VPP(引脚):外部程序存储器地址允许使能端4、输入/输出(I/O)引脚P0、P1、P2、P3(共32根)①P0口(39脚至32脚):漏极开路的8位准双向复用I/O口②P1口(1脚至8脚):内部带上拉电阻的8位准双向I/O口③P2口(21脚至28脚):内部带上拉电阻的8位准双向复用I/O口④P3口(10脚至17脚):内部带上拉电阻的8位多功能双向I/O口(2)七段数码管①七段数码管引脚图如图8所示:图8 其段数码管引脚图②七段数码管字型码(见附录一)(3)移位寄存器74LS164①74LS164引脚图,如图9所示图9 74LS164引脚图图10 74LS164功能表②74LS164功能表,如图10所示2.3 EDA辅助设计EDA是电子设计自动化(Electronic Design Automation)的缩写,在20世纪60年代中期从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言HDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。

EDA技术的出现,极大地提高了电路设计的效率和可操作性,减轻了设计者的劳动强度。

在此次课程设计中,将主要使用PROTEL99SE来进行电路的设计。

PROTEL为设计者提供了一个集成的电路设计环境,包括原理图设计和PCB布线工具、电路仿真和集成的设计文档管理。

2.3.1 定时器的原理图(1)原理图绘制的流程图如图11所示(2)定时器原理图如图12所示2.3.2 定时器的PCB图(1)PCB绘制流程图如图13所示(2)PCB板如图14所示图11 电路图绘制流程图图13 PCB制作流程图图12 定时器电路原理图图14 定时器的PCB板三、系统软件设计3.1 主程序流程图主程序流程图如图15所示3.2定时子程序流程图定时子程序流程图如图16所示图15 主程序流程图图16 定时子程序流程图3.3 定时器完整程序ORG 0000HLJMP 0030H/*****************************************************************主程序****************************************************************/ORG 0030HSTART: MOV 30H,#0 ;30H~33H清零MOV 31H,#0MOV 32H,#0MOV 33H,#0LCALL DIR0 ;调用显示子程序AA: JNB P1.0,AA0 ;检测按键,若有按键按下则跳转至相应的程序JNB P1.1,AA1JNB P1.2,AA2JNB P1.3,AA3JNB P1.4,AA4LJMP AA ;循环检测按键AA0: INC 30H ;按键0按下时,30H自动加一MOV A,30HCJNE A,#10,AA00;若秒小于10,调用显示程序MOV 30H,#0 ;若秒大于等于10,则30H清零AA00: LCALL DIR0 ;调用显示子程序LCALL DLYR ;调用延时程序LJMP AA ;循环检测按键AA1: INC 31H ;按键1按下,31H自动加1并执行相应显示程序MOV A,31HCJNE A,#6,AA11 ;若秒小于6,调用显示程序MOV 31H,#0 ;若秒大于等于6,则3H清零AA11: LCALL DIR0LCALL DLYRLJMP AAAA2: INC 32H ;按键2按下32H自动加1并执行相应显示程序MOV A,32HCJNE A,#10,AA22;若秒小于10,调用显示程序MOV 32H,#0AA22: LCALL DIR0LCALL DLYRLJMP AAAA3: INC 33H ;按键3按下33H自动加1并执行相应显示程序MOV A,33HCJNE A,#6,AA33 ;若秒小于6,调用显示程序MOV 33H,#0 ;若秒大于等于6,则3H清零AA33: LCALL DIR0LCALL DLYRLJMP AAAA4: LCALL DS00 ;调用定时子程序LJMP AA ;检测按键/******************************************** *********************定时子程序**********************************************************/ DS00: MOV 40H,30HMOV 41H,31HMOV 42H,32HMOV 43H,33HMOV 30H,#0 ;30H~33H清零MOV 31H,#0MOV 32H,#0MOV 33H,#0DS11: LCALL DIR0 ;调用显示程序LCALL DLYR ;调用延时程序LCALL DLYRINC 30HMOV A,30HCJNE A,#10,GRMOV 30H,#0INC 31HMOV A,31HCJNE A,#6,GRMOV 31H,#0INC 32HMOV A,32HCJNE A,#10,GRMOV 32H,#0INC 33HGR: MOV A,33H ;判断是否到定时时间CJNE A,43H,DS11MOV A,32HCJNE A,42H,DS11MOV A,31HCJNE A,41H,DS11MOV A,30HCJNE A,40H,DS11LCALL DIR0RET/***************************************************************显示子程序***********************************************************/DIR0: MOV SCON,#0 ;使用串行方式输出显示数码MOV R0,#30HMOV R7,#4L1: MOV A,@R0MOV DPTR,#TABMOVC A,@A+DPTRMOV SBUF,AJNB TI,$ ;等待发送数据完成CLR TI ;发送请求标志清零INC R0DJNZ R7,L1RETTAB: DB 3FH,06H,5BH,4FH,66H;0~9这十个数字的字型码DB 60H,70H,07H,7FH,6FHRET/****************************************************************延时0.5s子程序******************************************************/ DLYR: MOV R5,#125DELY: MOV R7,#100DLY0: MOV R6,#50DLY1: DJNZ R6,DLY1DJNZ R7,DLY0DJNZ R5,DELYRETEND四、系统软件仿真Proteus是多功能的EDA软件,真正实现了虚拟物理原型功能,在目标板还没有制作之前,就可以对所设计的硬件系统的功能、合理性和性能指标进行充分调整,并可以在没有硬件电路的情况下,进行相应的程序设计与调试,可由仿真原理图直接导出绘制成印制电路板(PCB)。

相关文档
最新文档