根据51单片机的定时闹钟设计

根据51单片机的定时闹钟设计
根据51单片机的定时闹钟设计

目录

1 系统设计 (1)

1.1 实验箱主要组件 (1)

1.2 系统框图及说明 (3)

1.3 系统软件设计 (3)

1.3.1 C51的编程基础 (3)

1.3.2 系统软件设图 (4)

1.3.3 部分复杂函数流程图 (5)

2 系统仿真 (6)

2.1 仿真软件 (6)

2.2 仿真结果 (7)

3 结论 (7)

3.1 本课程设计的主要特点及贡献 (7)

3.2 改善建议 (7)

3.3 自我体会 (8)

参考文献 (9)

附录 (10)

1 单片机定时闹钟程序源代码 (10)

2 仿真软件Proteus ISIS使用方法简单介绍 (20)

3.1 本课程设计的主要特点及贡献 (7)

1 系统设计

1.1 实验箱主要组件

本课程设计使用的是河海大学常州校区刘玉宏老师设计的单片机课程实验箱中的“基础型实验”部分。该部分主要由单片机最小系统,LED数码管显示部分,外部中断控制部分,独立式与行列式键盘按键输入部分,串行口通信部分,蜂鸣器与继电器等部分组成。详细电路图见图1。

图1 实验箱“基础型实验”部分电路图

单片机最小系统部分由内含FLASH ROM的STC89C52RC,EA接高电平;各并行口都加了

10K的上拉电阻;晶振为11.0592M。设置了上电复位和手动复位。LED数码管显示部分由4位一体的数码管LED1、单个数码管LED2和8个独立的发光二极管L1—L7组成,都是共阴结构并联在一起接在单片机的P0口上。LED1用于完成LED动态显示,用于本课程设计的时间显示,各个位选线为P2.4—P2.7,段码由P0口输出。行列式和独立式键盘按键输入部分主要由P2.0-P2.3为行,P2.4-P2.7为列构成的4*4行列式键盘,K20-K27构成的独立式按键构成。本课程设计中使用K20-K27构成的独立式按键,分别接在P2.0-P2.7上,当按键按下时,对应的口线输入0,同时相应的LED点亮。蜂鸣器部分采用9012三极管驱动,其基极接到RD端,当RD端为低电平时,三极管导通,蜂鸣器响,否则关断。串行口通信部分主要由USB转URAT电路构成,本课程设计中由此部分完成PC机与单片机的串行口通信,同时PC机的USB口同时承担给实验板供电的任务。

实验箱“基础型试验”其他电路部分介绍略,“基础型实验”部分实物图见图2。

图2 实验箱“基础型实验”部分实物图

1.2 系统框图及说明

本课程设计中的基于52单片机的定时闹钟系统主要由单片机最小系统模块,数码管译码和显示模块,键盘控制模块,串口通信模块,蜂鸣器模块等组成,系统框图见图3,其中箭头表示数据传送的方向。

图3 单片机定时闹钟系统框图

1.3 系统软件设计

1.3.1 C51编程基础

由于本课程设计硬件模块主要依靠刘玉宏老师设计的单片机实验箱,所以本课程设计的重点放在在定时闹钟的软件设计上。

本课程设计的系统软件设计采用C语言,C语言是一种通用的程序设计高级语言,其代码利用率高,数据类型及运算符丰富,并具有良好的程序结构,适用于各种应用的程序设计,是目前使用较为广泛的单片机编程语言。使用C语言对单片机进行编程具有以下优点:(1)C51管理内部寄存器和存储器的分配,编程时,无需考虑不同存储器的寻址和数据类型等细节问题。

(2)程序由若干函数组成,具有良好的模块化结构。

(3)有丰富的子程序库可以直接使用,从而减少用户编程的工作量。

(4)C语言和汇编语言可以交叉使用,提高开发效率。

本课程设计采用的C语言编译器为Keil C51,该编译器以其代码紧凑和使用方法方便的特点优于其他编译器。Keil C51开发单片机程序的大致步骤为:输入源程序,新建工程,工程详细设置,源程序编译到目标代码文件等。编译完成后通过少些软件和串口,可以将代码烧进单片机内部的FLASH程序存储器内。

1.3.2 系统软件设计框图

单片机定时闹钟系统由多个函数构成,其中包括主函数,初始化函数,延时函数,键盘扫描函数等,图4为单片机定时闹钟软件系统各个函数框图。

1.3.3 部分复杂函数流程图

键盘扫秒函数相对比较复杂,同时该函数也本课程设计中相对较为重要的一个函数,在设计中,我们使用到了四个按键,分别是K20、K21、K22、K23,其功能分别是,K21为调整时间/回复计时模式控制键,K20为调时/调闹钟时间模式控制按键,K22与K23分别为时间调整中加1与减1功能按键。通过四个按键的配合使用,可以完成停止计时,修改时间,显示闹钟时间,修改闹钟时间等功能。键盘扫描函数设计流程图如图5,同时图5也可以作为单片机定时闹钟实现功能操作的流程图。

图4 单片机定时闹钟软件系统各个函数框图

基于89C51单片机的秒表课程设计讲解

《单片机技术》 课程设计报告 题目:基于MCU-51单片机的秒表设计班级: 学号: 姓名: 同组人员: 指导教师:王瑞瑛、汪淳 2014年6月17日

目录 1课程设计的目的 (3) 2 课程设计题目描述和要求 (3) 2.1实验题目 (3) 2.2设计指标 (3) 2.3设计要求 (4) 2.4增加功能 (4) 2.5课程设计的难点 (4) 2.6课程设计内容提要 (4) 3 课程设计报告内容 (4) 3.1设计思路 (4) 3.2设计过程 (5) 3.3 程序流程及实验效果 (6) 3.4 实验效果 (13) 4 心得体会 (14)

基于 MCS-51单片机的秒表设计 摘要:单片机控制秒表是集于单片机技术、模拟电子技术、数字技术为一体的机电一体化高科技产品,具有功耗低,安全性高,使用方便等优点。本次设计内容为以 8051 单片机为核心的秒表,它采用键盘输入,单片机技术控制。设计内容以硬件电路设计,软件设计和 PCB 板制作三部分来设计。利用单片机的定时器/计数器定时和计数的原理,用集成电路芯片、LED 数码管以及按键来设计计时器。将软、硬件有机地结合起来,使他拥有正确的计时、暂停、清零、并同时可以用数码管显示,在现实生中应用广泛。 关键词:秒表;8051;定时器;计数器 1 课程设计的目的 《单片机应用基础》课程设计是学好本门课程的又一重要实践性教学环节,课程设计的目的就是配合本课程的教学和平时实验,以达到巩固消化课程的内容,进一步加强综合应用能力及单片机应用系统开发和设计能力的训练,启发创新思维,使之具有独立单片机产品和科研的基本技能,是以培养学生综合运用所学知识的过程,是知识转化为能力和能力转化为工程素质的重要阶段。 2 课程设计题目描述和要求 2.1实验题目 开始时,显示“00.0”,第一次按下按钮后开始从0-99.9s计时,显示精度为0.1s;对用有4个功能按键,第1个按键复位00.0,第2个按键正计时开始按钮,第3个按键复位99.9,第4个按钮倒计时开始。 2.2设计指标 了解8051芯片的的工作原理和工作方式,使用该芯片对 LED 数码管进行显示控制,实现用单片机的端口控制数码管,显示分、秒,并能用按钮实现秒表起

简单51单片机数字时钟设计

题目:简单51单片机数字时钟设计 院系: 物理与电气工程学院 专业:自动化专业 班级:10级自动化 姓名:苏吉振 学号:2 老师:李艾华

引言 20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。 时间对人们来说总是那么宝贵,工作的忙碌性和繁杂性容易使人忘记当前的时间。忘记了要做的事情,当事情不是很重要的时候,这种遗忘无伤大雅。但是,一旦重要事情,一时的耽误可能酿成大祸。 目前,单片机正朝着高性能和多品种方向发展趋势将是进一步向着CMOS 化、低功耗、小体积、大容量、高性能、低价格和外围电路内装化等几个方面发展。下面是单片机的主要发展趋势。 单片机应用的重要意义还在于,它从根本上改变了传统的控制系统设计思想和设计方法。从前必须由模拟电路或数字电路实现的大部分功能,现在已能用单片机通过软件方法来实现了。这种软件代替硬件的控制技术也称为微控制技术,是传统控制技术的一次革命。 单片机模块中最常见的是数字钟,数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更更长的使用寿命,因此得到了广泛的使用。 数字钟是采用数字电路实现对时,分,秒数字显示的计时装置,广泛用于个 人家庭,车站, 码头办公室等公共场所,成为人们日常生活中不可少的必需品,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表, 钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。因此,研究数字钟及扩大其应用,有着非常现实的意义。

基于51单片机的秒表设计

江西理工大学应用科学学院信息工程系单片机原理与应用课程设计报告 设计题目:基于51单片机的秒表设计 专业:电子信息工程 班级:电信121 学号: 08060312109 参与人员:贺佳、周代元、周昶旭、张浥中 指导老师:王苏敏 完成日期: 2015年1月20日

目录 1 设计任务和性能指标 (1) 1.1 课题内容 ....................... 错误!未定义书签。 1.2 课题要求 ........................ 错误!未定义书签。 2 设计方案............................. 错误!未定义书签。 2.1 需求分析 (3) 2.2 方案论证 (3) 3系统软件设计 (5) 4.1 系统软件流程图................... 错误!未定义书签。 4.2 实验程序清单 .................... 错误!未定义书签。 4 系统硬件设计 (10) 5.1 调试步骤 (11) 5.2 性能分析 ........................ 错误!未定义书签。5系统硬件设计.......................... 错误!未定义书签。参考文献.. (14)

1 设计任务和性能指标 1 课题内容要求及目的 1.1课题内容 用AT89C51设计一个秒表,该秒表课可显示0.0~99.9秒的时间,进行相应的单片机硬件电路的设计并进行软件编程利用单片机定时 器/计数器中断设计秒表,从而实现秒、十分之一秒的计时。综合运用所学的《单片机原理与应用》理论知识,通过实践加强对所学知识的理解,具备设计单片机应用系统的能力。通过本次系统设计加深对单片机掌握定时器、外部中断的设置和编程原理的全面认识复习和掌握。本系统利用单片机的定时器/计数器定时和记数的原理,通过采用proteus仿真软件来模拟实现。模拟利用AT89C51单片机、LED 数码管以及控件来控制秒表的计数以及计位!其中有三位数码管用来显示数据,显示秒(两位)和十分之一秒,十分之一秒的数码管计数从0~9,满十进一后显示秒的数码管的数字加一,并且十分之一秒显示清零重新从零计数。计秒数码管采用三位的数码管,当计数超过范围是所有数码管全部清零重新计数。 1.2课题要求 本课题是基于单片机的秒表系统设计,它的具体要求有以下几点: (1)用单片机AT89C51实现; (2)以0.1秒为最小单位进行显示; (3)秒表量程为0.0-99.9秒,用 LED显示;

89C51单片机课程设计之秒表设计实验报告

单片机课程设计报告 单 片 机 秒 表 系 统 课 程 设 计 班级: 课程名称:秒表设计 成员: 实训地点:北校机房 实训时间:6月4日至6月15日

目录 1课程设计的目的和任务 1.1 单片机秒表课程设计的概述 1.2课程设计思路及描述 1.3 课程设计任务和要求 2硬件与软件的设计流程 2.1系统硬件方案设计 2.2所需元器件 3 程序编写流程及课程设计效果 3.1源程序及注释 3.2原理图分析 3.3课程设计效果 4 心得体会

1. 课程设计的目的和任务 1.1单片机秒表课程设计的概述 一、课程设计题目 秒表系统设计——用STC89C51设计一个4位LED数码显示“秒表”,显示时间为000.0~9分59.9秒,每10毫秒自动加一,每1000毫秒自动加一秒。 二、增加功能 增加一个“复位”按键(即清零),一个“暂停”和“开始”按键。 三、课程设计的难点 单片机电子秒表需要解决几个主要问题,一是有关单片机定时器的使用;二是如何实现LED的动态扫描显示;三是如何对键盘输入进行编程;四是如何进行安装调试。 四、课程设计内容提要 本课程利用单片机的定时器/计数器定时和记数的原理,结合集成电路芯片8051、LED数码管以及课程箱上的按键来设计计时器。将软、硬件有机地结合起来,使得系统能够正确地进行计时,数码管能够正确地显示时间。其中本课程设计有三个开关按键:其中key1按键按下去时开始计时,即秒表开始键,key2按键按下去时数码管清零,复位为“00.00”. key3按键按下去时数码管暂停。 五、课程设计的意义 1)通过本次课程设计加深对单片机课程的全面认识复习和掌握,对单片机课程的 应用进一步的了解。 2)掌握定时器、外部中断的设置和编程原理。 3)通过此次课程设计能够将单片机软硬件结合起来,对程序进行编辑,校验。 4)该课程通过单片机的定时器/计数器定时和计数原理,设计简单的计时器系统, 拥有正确的计时、暂停、清零,并同时可以用数码管显示,在现实生活中应用广泛,具有现实意义 1.2课程设计思路及描述

基于51单片机的数字钟

专业课程设计报告 专业班级 课程 题目基于51单片机的数字钟的设计报告学号 学生姓名 指导教师 成绩 2013年6月20日

基于A T89C51的数字钟总体设计说明书 目录 1. 51单片机设计数字钟设计的现实意义 (2) 2. 总体设计 (2) 2.1.开发与运行环境 (2) 2.2.硬件功能描述 (2) 2.3.硬件结构 (3) 3. 硬件模块设计 (3) 3.1.描述 (3) 3.1.1. AT89C51单片机简介 (3) 3.1.2. 键盘电路的设计 (4) 3.1.3. 显示器的选择 (5) 3.1.4. 蜂鸣器驱动电路 (5) 3.1.5. 各部分功能 (6) 4. 嵌入式软件设计 (7) 4.1.流程逻辑 (7) 4.2.算法 (7) 4.2.1. 中断定时器的设置 (27) 4.2.2. 闹钟子函数 (28) 4.2.3. 计时函数 (29) 4.2.4. 键盘扫描函数 (31) 4.2.5. 时间和闹钟的设置 (32) 5. 实验器材清单 (33) 6. 测试与性能分析 (33) 6.1.测试结果 (33) 6.2.优点 (33) 6.3.结论 (34) 7. 心得体会 (36) 8. 致谢 (36) 9. 参考文献 (37)

1.51单片机设计数字钟设计的现实意义 20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。时间对人们来说总是那么宝贵,工作的忙碌性和繁杂性容易使人忘记当前的时间。忘记了要做的事情,当事情不是很重要的时候,这种遗忘无伤大雅。但是,一旦重要事情,一时的耽误可能酿成大祸。例如,许多火灾都是由于人们一时忘记了关闭煤气或是忘记充电时间等造成的。而钟表的数字化给人们生产生活带来了极大的方便。数字钟是通过数字电路实现时,分,秒数字显示的计时装置,广泛用于个人家庭、车站、码头办公室等公共场所,成为人们日常生活中不可少的必需品。由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表,钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能,诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烤箱、通断动力设备、甚至各种定时电气的自动启用等。所有这些,都是以钟表数字化为基础的。因此,研究数字钟及扩大其应用,有着非常现实的意义。 2.总体设计 2.1.开发与运行环境 在硬件方面,除了CPU外,使用八个七段LED数码管来进行显示,LED采用的是动态扫描显示。通过LED能够较为准确地显示时、分、秒。四个简单的按键实现对时间的调整。软件方面采用C语言编程。使用Keil单片机模拟调试软件,测试程序的可行性并用Proteus进行仿真。 2.2.硬件功能描述 硬件部分设置了的三个按键S1、S2、S3、S4。当按键S1第一次按下时,停止计时进

基于51单片机的4位数码管秒表

原理图: 源程序: /************************************************************* 标题:定时器中断精确到00.01的秒表 效果:能清零重新开始,暂停,继续计时,能精确到0.01秒 作者:皖绩小挺 说明:使用12M晶振,四位数码管,3个按键 ****************************************************************/ #include #define uint unsigned int #define uchar unsigned char uint temp,tt,qian,bai,shi,ge; sbit smg_q=P1^0; sbit smg_b=P1^1; sbit smg_s=P1^2; sbit smg_g=P1^3; sbit key1 = P3^7; sbit key2 = P3^6; sbit key3 = P3^5; uchar code table[]={0xc0,0xf9,0xa4,0xb0,0x99, 0x92,0x82,0xf8,0x80,0x90};

uchar code table1[]={0x40,0x79,0x24,0x30,0x19, 0x12,0x02,0x78,0x00,0x10}; //带小数点 void keyscan(); void display(uint shi,uint ge); void delay(uint z); void init(); /************************************************************** 主函数 ******************************************************************/ void main() { init();//初始化子程序 while(1) { if(tt==1) { tt=0; temp++; if(temp==10000) { temp=0; } qian=temp/1000; bai=temp%1000/100; shi=temp%100/10; ge=temp%10; } keyscan(); display(shi,ge); } } /********************************************************************* 延时 ***********************************************************************/ void delay(uint z) { uint x,y; for(x=z;x>0;x--) for(y=110;y>0;y--); } /*********************************************************************

51单片机课程设计秒表

微控制器技术课程 设计报告 设计题目:秒表 专业:供用电技术 班级:供电141 学号:140315143 姓名:王晨铭 指导教师:李昊 设计时间:2016.6.21

微控制器技术课程设计任务书 设计题目:秒表 设计时间:2016.6.20 设计任务: 在单片机开发板或软件仿真,编制程序,实现以下功能 1、利用定时器实现秒表功能,精确到0.1S; 2、数码管显示当前计时时间; 3、设定三个键,计时开始,停止计时和复位清零。 背景资料:1、单片机原理与应用 2、检测技术 3、计算机原理与接口技术 进度安排: 1、第1天,领取题目,熟悉设计内容,分解设计步骤和任务; 2、第3天,规划设计软硬件,编制程序流程、绘制硬件电路。 3、第5天,动手制作硬件电路,或编写软件,并调试。 4、第7天,中期检查。 5、第9天,完善设计内容,书写设计报告。 6、第13天,提交设计报告,整理设计实物,等待答辩。 7、第14天,设计答辩。

目录 一、设计任务和要求 (3) (1)设计任务 (3) (2)设计要求 (3) 二、设计方案与论证 (3) 三、单元电路设计与参数计算 (4) (1)时钟电路 (4) (2)按钮电路 (4) (3)显示电路 (5) (4)单片机 (5) 四、原理图及器件清单 (6) ( 1 )总原理图 (6) (2)PCB图 (7) (3)Proteus仿真图 (7) (4)元器件清单 (8) 五、安装与调试 (8) (1)安装 (8) (2)调试 (8) 六、性能测试和分析 (9) 七、结论和心得 (9) 八、参考文献 (9)

题目:秒表 二、方案设计与论证 本设计分为时钟电路、按钮电路、显示电路和单片机四大部分,这些模块中单片机占主控地位。其模块电路如图2-1所示。时钟电路常用的有内部时钟方式和外部时钟方式,但因为本设计中只需要一片单片机,所以采用内部时钟方式比较简单。按钮电路中的“复位”按钮是按键手动复位,它有电平和脉冲两种方式,比较电路的复杂程度,本设计选择了按钮电平复位电路,其他几个按钮则是通过单片机判断高低电平的不同来控制按钮。显示电路所用的数码管有共阴和共阳之分,不管使用何种数码管,P0口作为I/O使用时都是需要上拉电阻才能驱动数码管。另外,因为单片机的4个并行I/O口的输出电流一般是1mA,短路电流为4mA左右,而数码管的最少驱动电流也需要10mA,因而不管在使用共阴数码管时,单片机输出口也必须使用上拉电阻提高输出电流,才能驱动数码管。为了使电路简单化,本设计选用共阳数码管。但根据显示方式的不同选择,我们可以有几种方案: 方案一:使用静态显示方式。静态显示方式下的数码管的显示字符一经确定,相应锁存器锁存的断码输出將维持不变,直到送入另一个字符的断码为止。因而此设计中使用的显示位数使用了三个8位并行I/0口。如果另外想扩展单片机功能,则能使用的输出管脚很是有限。 方案二:使用动态显示方式。这个显示方式是将所有显示位的段码线的相应段并联在一起,由一个8位I/O口控制,而各位的共阴或共阴极分别由相应的I/O线控制,形成各位的分时选通。这种显示方式,简化了硬件电路,特别在多位数码管显示时尤为突出。 本小组尝试了各种方案,在此报告中以静态显示方式为例说明。(动态显示方式省略) 显示电路 单片机 AT89C51 时钟电路 按钮电路

89C51单片机课程设计之秒表设计实验报告.

这里可以加学校LOGAL 单片机课程设计报告 院系:12级物信系 班别:光信息科学与技术7班 课程名称:秒表设计 姓名:龚俊才欧一景 学号:1210407033 1210407041 指导老师:张涛 2011.12.23

目录 1课程设计的目的和任务 1.1 单片机秒表课程设计的概述 1.2课程设计思路及描述 1.3 课程设计任务和要求 2硬件与软件的设计流程 2.1系统硬件方案设计 2.2软件方案设计 3 程序编写流程及课程设计效果3.1源程序及注释 3.2原理图分析 3.3课程设计效果 4 心得体会 5 相关查阅资料

1. 课程设计的目的和任务 1.1单片机秒表课程设计的概述 一、课程设计题目 秒表系统设计——用STC89C52RC设计一个4位LED数码显示“秒表”,显示时间为 00.00~99.99秒,每10毫秒自动加一,每1000毫秒自动加一秒。 二、增加功能 增加一个“复位”按键(即清零),一个“暂停”和“开始”按键。 三、课程设计的难点 单片机电子秒表需要解决三个主要问题,一是有关单片机定时器的使用;二是如何实现LED 的动态扫描显示;三是如何对键盘输入进行编程。 四、课程设计内容提要 本课程利用单片机的定时器/计数器定时和记数的原理,结合集成电路芯片8051、LED数码管以及课程箱上的按键来设计计时器。将软、硬件有机地结合起来,使得系统能够正确地进行计时,数码管能够正确地显示时间。其中本课程设计有两个开关按键:其中key1按键按下去时开始计时,即秒表开始键(同时也用作暂停键),key2按键按下去时数码管清零,复位为“00.00”. 五、课程设计的意义 1)通过本次课程设计加深对单片机课程的全面认识复习和掌握,对单片机课程的应用进一步 的了解。 2)掌握定时器、外部中断的设置和编程原理。 3)通过此次课程设计能够将单片机软硬件结合起来,对程序进行编辑,校验。 4)该课程通过单片机的定时器/计数器定时和计数原理,设计简单的计时器系统,拥有正确的 计时、暂停、清零,并同时可以用数码管显示,在现实生活中应用广泛,具有现实意义 六、课程设计仪器 a) 集成电路芯片8051,七段数码管,89C51单片机开发板 b) MCS-51系列单片机微机仿真课程系统中的软件(Keil uvision2)。

基于51单片机的多功能电子钟设计

基于51单片机的多功能电子钟设计 【摘要】数字电子时钟是人们日常生活中不可或缺的必需品。本文以STC89C52为核心控制芯片,DS12887为时钟芯片,DS18B20为温度传感器,通过液晶显示器LCD1602实时显示时间及温度,通过按键设置年月日和星期以及定时闹钟,定时闹钟时间到自动发出警报。本设计的+5V电源采用LM1117电压转换元件,将电源适配器转换得到的12V电压直接变成5V电压供系统使用。程序的下载则是通过普中科技公司自制的PZ-ISP软件完成。经过测试,系统可以正常完成预定的功能。 【关键词】电子时钟;单片机;DS12887;DS18B20;

Design of Multi-function Clock Based on 51 MCU 【Abstract】Digital electronic clock is an integral, necessary part of daily life.In this paper, STC89C52 chip is used as the core control chip, DS12887chip is used as the clock chip, DS18B20 chip is used as the temperature sensor and LCD1602 was used to diaplay time and temperature。You can set year, month and time alarm clock through the four buttons.When the real time reach to the time clock,the system will warn automatically. The +5V power of the system is supplied by LM1117 voltage conversion device. The 12V voltage get from power adapter was transformed directly into 5V voltage for the system. The download of the process is accomplished through the PZ-ISP software made by Puzhong technology company. After testing, the system can complete the scheduled function normally. 【key words】electronic clock;MCU;DS12887;DS18B20

51单片机数字时钟

计算机硬件综合课程 设计报告 课目: 学院: 班级: 姓名: 指导教师: 目录 1 设计要求 功能需求 设计要求

2 硬件设计及描述 总体描述 系统总体框图 Proteus仿真电路图 3 软件设计流程及描述 程序流程图 函数模块及功能 4 心得体会 附:源程序 设计要求 功能需求 实现数字时钟准确实时的计时与显示功能; 实现闹钟功能,即系统时间到达闹钟时间时闹铃响; 实现时间和闹钟时间的调时功能; 刚启动系统的时候在数码管上滚动显示数字串(学号)。设计要求 应用MCS-51单片机设计实现数字时钟电路; 使用定时器/计数器中断实现计时; 选用8个数码管显示时间;

使用3个按钮实现调时间和闹钟时间的功能。按钮1:更换模式(模式0:正常显示时间;模式1:调当前时间的小时;模式2;调当前时间的分钟;模式3:调闹钟时间的小时;模式4:调闹钟时间的分钟);按钮2:在非模式0下给需要调节的时间数加一,但不溢出;按钮3:在非模式0下给需要调节的时间数减一,但不小于零; 在非0模式下,给正在调节的时间闪烁提示; 使用扬声器实现闹钟功能; 采用C语言编写程序并调试。 2 硬件设计及描述 总体描述 单片机采用AT89C51型; 时间显示电路:采用8个共阴极数码管,P1口驱动显示数字,P2口作为扫描信号; 时间设置电路:、、分别连接3个按键,实现调模式,时间加和时间减; 闹钟:口接扬声器。 系统总体框图 Proteus仿真电路图

3 软件设计流程及描述 程序流程图

函数模块及功能 void display_led() 学号的滚动显示函数; void display() 显示时间以及显示调节时间和闹钟时间的闪烁; void key_prc() 键盘功能函数,实现3个按键有关的模式转换以及数字加一减一; void init() 初始化设置中断;

51单片机定时器秒表设计程序

51单片机定时器秒表设计程序 #include typedef unsigned char UINT8; typedef unsigned int UINT16; code UINT8 SEGMENT[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; code UINT8 SHU[10] ={0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10}; code UINT8 SELECT[8] ={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe}; #define S1 0x0e #define S2 0x0d #define S3 0x0b #define S4 0x07 sbit SPEAK=P3^5; sbit P3_3=P3^3; UINT8 mSecond,Second; void Delay(UINT16 t) { UINT16 i,j; for(i=0;i

51单片机数字秒表设计说明

单片机系统课程设计 成绩评定表 设计课题

单片机系统课程设计 目录 第1章数字式秒表的设计介绍 (5) 1.1设计任务及功能要求说明 (5) 1.2工作原理及其方法 (5) 第2章数字式秒表硬件系统的设计 (7) 2.1数字式秒表硬件系统各模块功能简要介绍 (7) 2.1.1 AT89S52简介 (7) 2.1.2时钟电路 (8) 2.1.3键盘电路 (8) 2.1.4复位电路 (9) 2.1.5 驱动及显示电路 (9) 2.1.6 单片机下载口电路 (10) 2.2 数字式秒表的硬件系统设计图…………………11. 2.2.1 电路原理图…………………………………….11. 2.2.2 PCB图…………………………………………11. 第3章数字式秒表软件系统的设计………………….11. 3.1 数字式秒表使用单片机资源情况 (11) 3.2 主程序流程图……………………………………12. 3.3中断服务程序流程图 (12)

3.4显示程序流程图 (14) 3.5软件系统程序清单 (14) 第4章设计总结 (15) 4.1 数字式秒表的设计结论及使用说明 (15) 4.2 程序仿真与结果 (15) 4.3 误差分析及解决方法……………………………16.. 总结 (16) 参考文献 (17) 附录 (17) 第1章数字式秒表的设计介绍 1.1设计任务及功能要求说明 由单片机接收小键盘控制递增计时,由LED 显示模块计时时间,显示格式为 XX(分):XX(秒).XX,精确到0.01s的整数倍。绘制系统硬件接线图,并进行系统仿真和实验。画出程序流程图并编写程序实现系统功能。 使用单片机AT89S52作为主要控制芯片,以四位一体共阳极数码显示管通过三极管驱动作为显示部分,设计一个具有特定功能的数字式秒表。该数字式秒表上电或按键复位后能自动显示系统提示符“P.”,进入准备工作状态。该数字式秒表通过按键控制可实现开始计1时、暂停计时、连续计时、清零和停止功能。 1.2工作原理及其方法 使用AT89S52单片机作为核心控制部件,采用12M晶体振荡器及微小电容构成振荡电路;采用S8550作为数码管的驱动部分;用两个四位一体共阳极或共阴极数码显示管作为显示部分,构成数字式秒表的主体结构,配合独立式键盘和复位电路完成此秒表的复位、计时、连续、清零、停止各项功能。 对于时钟,它有两方面的含义:一是指为保障系统正常工作的基准振荡定时信号,主要由晶振和外围电路组成,晶振频率的大小决定了单片机系统工作的快慢;二是指系统的标准定时时钟,即定时时间,它通常有两种实现方法:一是用软件实现,即用单片机内部的可编程定时/计数器来实现,但误差很大,主要用在对时间精度要求不高的场合;二是用专门的时钟芯片实现,在对时间精度要求很高的情况下,通常采用这种方法。 LED数码显示器有如下两种连接方法:共阳极接法:把发光二极管的阳极连在一起构成公共阳极,使用时公共阳极接+5V,每个发光二极管的阴极通过电阻

基于51单片机多功能电子时钟设计论文报告-毕设论文

单片机课程设计报告 多功能电子数字钟 姓名: 学号: 班级: 指导教师:

目录 一课程设计题目-------------------------------- 3 二电路设计--------------------------------------- 4 三程序总体设计思路概述------------------- 5 四各模块程序设计及流程图---------------- 6 五程序及程序说明见附录------------------- ** 六课程设计心得及体会---------------------- 11 七参考资料--------------------------------------- 12

一题目及要求 本次单片机课程设计在Proteus软件仿真平台下实现,完成电路设计连接,编程、调试,仿真出实验结果。具体要如下:用8051单片机设计扩展6位数码管的静态或动态显示电路,再连接几个按键和一个蜂鸣器报警电路,设计出一个多功能电子钟,实现以下功能: (1)走时(能实现时分秒,年月日的计时) (2)显示(分屏切换显示时分秒和年月日,修改时能定位闪 烁显示) (3)校时(能用按键修改和校准时钟) (4)定时报警(能定点报时) 本次课程设计要求每个学生使用Proteus仿真软件独立设计制作出电路图、完成程序设计和系统仿真调试,验收时能操作演示。最后验收检查 结果,评定成绩分为: (1)完成“走时+显示+秒闪”功能----及格 (2)完成“校时修改”功能----中等 (3)完成“校时修改位闪”----良好 (4)完成“定点报警”功能,且使用资源少----优秀

51单片机汇编秒表程序

ORG 0000H LJMP MAIN ORG 0003H LJMP INT_0 ORG 000BH LJMP T0_INT ORG 0013H LJMP INT_1 ORG 001BH LJMP T1_INT MAIN: MOV TMOD,#11H MOV TH1,#0D8H MOV TL1,#0F0H MOV TH0,#3CH MOV TL0,#0B0H SETB EA SETB ET1 SETB ET0 SETB EX0 SETB EX1 SETB IT0 SETB IT1 SETB TR1 MOV 32H,#00H MOV R1,#80H MOV 30H,#00H LOOP: MOV A,R4 CJNE A,33,Y MOV A,R5 CJNE A,32H,Y INC 30H Y: MOV A,P3 CJNE A,#0CFH,Y1 LJMP Y2 Y1: MOV A,30H CJNE A,#01H,LOOP CLR P1^0 LCALL DELAY2 SETB P1^0 LCALL DELAY2

LJMP LOOP Y2: JNB P3^5,Y2 JNB P3^4,Y2 MOV R3,#0AH LJMP Y3 Y3: MOV R4,33H MOV R5,32H MOV A,P3 CJNE A,#0DFH,Y5 Y4:JNB P3^4,OUT JNB P3^5,Y4 INC 32H MOV A,32H CJNE A,#10,Y3 INC 33H MOV 32H,#00H LJMP Y3 Y5: MOV A,P3 CJNE A,#0EFH,Y3 Y6: JNB P3^5,OUT JNB P3^4,Y6 MOV A,32H CJNE A,#00,JJ DEC 33H MOV 32H,#09H LJMP Y3 OUT:JNB P3^5,OUT JNB P3^4,OUT MOV R5,#00H MOV R3,#00H LJMP LOOP JJ: DEC 32H LJMP Y3 INT_0: CPL TR0 RETI INT_1: MOV R6,#00H MOV R5,#00H

51单片机秒表计时(protues)

51单片机秒表计时器 目录 摘要 (3) 一、实训目的 (3) 二、实训设备与器件 (3) (1)实验设备 (3) (2)实训器件 (3) 三、实训步骤与要求 (4) (1)要求 (4) (2)方法 (4) (3)实训线路分析 (4) (4)软件设计 (4) (5)程序编制 (4) 四、硬件系统设计 (4) 五、软件系统设计 (5) 六、系统调试 (9) 七、实训总结与分析 (10) 八、参考资料: (11) 九、附录 (12)

摘要: 秒表是由单片机的P0口和P2口分别控制两个数码管,使数码管工作,循环显示从00—59。同时,用一个开关控制数码管的启动与停止,另外加上一个复位电路,使其能正常复位,通常还使用石英晶体振荡器电路构成整个秒表的结构电路。 一、目的 (1)利用单片机定时器中断和定时器计数方式实现秒定时。 (2)通过LED显示程序的调整,熟悉单片机与LED的接口技术,熟悉LED动态显示的控制过程。 (3)通过阅读和调试简易秒表整体程序,学会如何编制含LED动态显示和定时器中断等多种功能的综合程序,初步体会大型程序的编制和调试技巧。(4)进一步学习单片机开发系统的整个流程。 二、元件 (1)实训设备:单片机开发系统、微机、万用表、电烙铁等。 (2)实训器件: 名称数量 7段数码管 2 电阻10k 1 电阻1k 8 键盘开关 1 电容10微法 1 电容30皮法 2 晶振12M 1

89C51 1 万能板 1 导线若干 三、步骤 (1)要求:利用实训电路板,以2位LED右边1位显示个位,左边1位显示十位,实现秒表计时显示。以一个按键开关实现启动、停止、清零等功能。 (2)方法:用单片机定时器T0中断方式,实现1秒定时;利用单片机定时器0方式1计数,实现00--59计数。 (3)实验线路分析:采用实训电路板,其原理图参见附录。两个7段LED 数码管分别由单片机的P0口和P2口控制,使数码管显示从00—59的字样。用一个开关控制数码管的启动与停止,另外加上一个复位电路,使其能正常复位。另外在加上一个晶体振荡电路就够成了整个秒表的电路。 (4)软件设计:软件整体设计思路是主程序进行初始化,以按键开关按下的次数确定定时器的启动与否,LED通过中断的方式进行显示。后二者间的联系是:按键按下,则定时器开始计时,中断后在LED上显示,不断循环;按键第二次按下时,定时器停止计时,LED不显示;按键第三次按下时,返回到初始状态重新开始。秒定时采用定时器T0中断方式进行,60秒计数由定时器0采用方式1完成,中断及计数的开启与关闭受控于按键处理程序。由上述设计思路可设计出软件流程图如图7.1所示。 (5)程序编制:编程时第一次按键为“启动”,第二次按键为“停止”,第三次按键为“清零”,因按键较少,在处理按键值时未采用散转指令“JMP”,而是采用条件转移指令“CJNE”,。2位LED显示的数据由显示缓冲区30H~31H单元中的数据决定。 四、设计 硬件电路的设计应从两个方面予以考虑。一是根据应用系统总体设计的参数范围、测控速度与精度等技术指标要求选择单片机。不同系列单片机或同一系列

基于stc89c51单片机的秒表设计

基于stc89c51单片机的秒表 //基于stc89c51单片机的秒表 //应用定时器和中断的知识。 //两个按键。K1是启动/暂停按键。K2是复位按键。 //显示数字从0-99. //zzuli_wuzhipeng #include #define uchar unsigned char #define uint unsigned int uchar count=0,time=0,K1num=0; uchar seg_date[11]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff}; // 共阳极数码管段码表 sbit K1=P3^0; sbit K2=P3^1; uchar ge=0,shi=0; void delay(uint xms) //简单延时程序 { uint i,j; for (i=xms;i>0;i--) for(j=115;j>0;j--);

void display() // 显示程序 { shi=time/10; // 分离十位 ge=time%10;// 分离个位 P2=0x01; P1=seg_date[ge];//显示个位 delay(1); P2=0x02; P1=seg_date[shi];//显示十位 delay(1); } void key() // 键盘处理程序 { if( K1==0 ) // K1键功能 { K1num++; delay(1); if( K1==0 ) { while(!K1); if( K1num==1 ) {TR0=1; } if( K1num==2 ) {TR0=0;K1num=0; } } } if(K2==0) // K2键功能 { delay(1) ; if (K2==0) { while (!K2); TR0=0; time=0; TR0=1; } } } void main () //主函数

51单片机数字钟

目录 1 设计任务与要求................................................... I 2 设计方案 (1) 3 硬件设计 (2) 3.1 AT89C51单片机简介 2 3.2单片机型号的选择 (6) 3.3数码管显示工作原理 (6) 4 软件设计 (7) 4.1主程序模块介绍 (7) 4.2主程序 (7) 5 仿真调试 ........................................ 错误!未定义书签。 5.1K EIL仿真结果................................. 错误!未定义书签。 5.2仿真结果分析 (13) 6 小结 ............................................ 错误!未定义书签。

1 设计任务与要求 1. 设计一个基于单片机的电子时钟,并且能够实现时分秒的现实和调节。 2. 设计出硬件电路。 3. 设计出软件编程方法,并写出源代码。 4. 用PROTEUS进行仿真。 5.用汇方式实现目的。 7.系统的各各功能模块要编语言编实现程序设计。 6.利用查表,中断等清楚,有序。 8.程序运行时有友好的用户界面。 2 设计方案 本设计主要设计了一个基于AT89C51单片机的电子时钟。并在数码管上显示相应的时间。并通过一个控制键用来实现时间的调节和是否进入省电模式的转换。应用Proteus的ISIS软件实现了单片机电子时钟系统的设计与仿真。该方法仿真效果真实、准确,节省了硬件资源。 该设计的硬件部分主要包括89C51多功能接口芯片用于开发电子时钟芯片、LED七段数码显示器用于显示时间、8031集成定时器用于定时、0.125W、8欧姆的扬声器用于定时发声。软件部分包括主程序、定时计数中断程序、时间调整程序、延时程序四大模块。通过中断程序进行定时器计数,时间调整程序是当键按下时间小于1秒,关闭显示(省电)进入调节时间状态,延时程序用于时间的延迟。先设计个秒钟程序,在秒钟程序中先不设计按钮,直接通电运行,使用40H 存放计数值,从00—59,一直循环,把40H中的数值拆分成个位和十位,分别存在30H与31H中,要求动态扫描时,使用21H当标志位,用指令JB控制显示个位与十位,程序中使用中间寄存器R0与R1用于存放拆分后的字型,再传到30H与31H中去,再设计时钟程序。

基于51单片机的数字钟设计

20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。 单片机模块中最常见的是数字钟,数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更更长的使用寿命,因此得到了广泛的使用。 本课题主要研究的是基于单片机的数字钟设计,采用AT89C51单片机作为系统的主控芯片,外接LED显示电路,按键电路,晶振电路,复位电路模块构成一个简单的数字钟。通过按键电路能对时、分、秒分别进行设置和实时调整,并将结果显示在数码管上。

1 引言 (3) 2 单片机介绍 (4) 3 数字钟硬件设计 (4) 3.1系统方案的确定 (4) 3.2功能分析 (4) 3.3数字钟设计原理 (5) 3.3.1键盘控制电路 (5) 3.3.2晶振电路 (6) 3.3.3复位电路 (7) 3.3.4数码显示电路 (7) 4.数字钟的软件设计 (8) 4.1程序设计内容 (8) 4.2源程序 (9)

1 引言 在单片机技术日趋成熟的今天,其灵活的硬件电路和软件电路的设计,让单片机得到广泛的应用,几乎是从小的电子产品,到大的工业控制,单片机都起到了举足轻重的作用。单片机小的系统结构几乎是所有具有可编程硬件的一个缩影,可谓是“麻雀虽小,肝胆俱全”,单片机的学习和研究是对微机系统学习和研究的简捷途径。基于单片机的定时和控制装置在许多行业有着广泛的应用,而数字钟是其中最基本的,也是最具有代表性的一个例子[1],用数字电路实现对时、分、秒数字显示的计时装置。因为机具有体积小、功耗低、功能强、性价比高、易于推广应用的优点,在自动化装置、智能仪器表、过程控制、通信、家用电器等许多领域得到日益广泛的应用[2],因此具有很大的研究价值。

相关文档
最新文档