基于单片机的计时器设计

合集下载

单片机设计24秒倒计时

单片机设计24秒倒计时

单片机设计24秒倒计时1.引言倒计时器是一种常见的电子设备,被广泛应用于体育比赛、倒计时游戏、厨房计时等场景中。

本文介绍了使用单片机设计一个24秒倒计时器的方法和过程。

2.设计原理本设计使用的单片机为51系列单片机,采用倒计时的方式进行计时,显示剩余时间,并发出声音提示时间结束。

具体实现主要包括以下几个步骤:-初始化单片机的定时器和功能引脚;-设置定时器的工作模式和计时时间;-编写程序控制定时器开始计时;-显示剩余时间并发出声音提示;-定时器到达设定时间后,停止计时并显示时间结束。

3.硬件设计硬件设计主要包括51系列单片机、LED数码管和蜂鸣器。

-单片机需要通过引脚连接LED数码管,用于显示剩余时间;-单片机通过一个GPIO引脚连接蜂鸣器,用于发出时间结束的提示声音。

4.软件设计软件设计主要包括初始化、计时、显示和提示等功能。

-初始化函数主要用于设置单片机的定时器和GPIO引脚;-计时函数用于设定倒计时的时间,并开始计时;-显示函数用于将剩余时间显示在LED数码管上;-提示函数用于判断是否到达设定时间,如果是则停止计时并发出提示声音。

5.实验结果经过调试和测试,实验结果表明该24秒倒计时器可以正常工作。

在开始计时后,数码管上会显示剩余时间,同时蜂鸣器会发出定时器结束的提示音。

6.结论本文介绍了使用单片机设计24秒倒计时器的方法和过程。

该设计通过初始化、计时、显示和提示等功能,实现了24秒倒计时的功能要求。

同时,该设计可以在实际中进行必要的优化和改进,以满足具体的应用需求。

7.致谢感谢本文参考的相关文献和资料,以及为本文提供实验设备和技术支持的相关人员。

[1]《51单片机原理与应用》[2]《C语言微机原理与接口技术》总结:本文主要介绍了使用单片机设计24秒倒计时器的方法和过程。

通过初始化、计时、显示和提示等功能,实现了24秒倒计时的功能要求。

同时,该设计可以在实际中进行必要的优化和改进,以满足具体的应用需求。

单片机实训报告计时器

单片机实训报告计时器

一、概述随着科技的不断发展,单片机技术已经成为现代电子设备中不可或缺的核心技术。

为了提高自身对单片机应用技术的理解和掌握,本实训报告以设计一个基于单片机的计时器为例,通过实践操作,深入探究单片机的编程与应用。

二、实训目的1. 熟悉单片机的基本原理和开发环境。

2. 掌握51单片机的编程方法,提高编程能力。

3. 学会使用数码管、按键等外部器件与单片机进行交互。

4. 培养动手实践能力和创新意识。

三、实训内容本实训主要设计一个基于51单片机的计时器,计时范围设置为00.0~99.9秒,精确到0.1秒。

计时器具有以下功能:1. 计时开始:按下开始按钮,计时器开始计时。

2. 计时暂停:按下暂停按钮,计时器暂停计时。

3. 计时复位:按下复位按钮,计时器清零。

4. 显示计时:通过数码管实时显示当前计时值。

四、硬件设计1. 单片机:选用51单片机作为核心控制单元。

2. 数码管:采用共阴型4位数码管,用于显示计时值。

3. 按键:设计三个按键,分别用于控制计时器的开始、暂停和复位功能。

4. 晶振:用于提供单片机的时钟信号。

5. 电阻、电容等:用于搭建电路。

五、软件设计1. 主程序:初始化单片机,配置I/O端口,设置定时器,进入主循环。

2. 计时函数:根据按键输入,控制计时器的开始、暂停和复位功能。

3. 显示函数:将计时值转换为数码管可识别的编码,并通过I/O端口输出。

六、程序实现以下为计时器设计的主要程序代码:```c#include <reg51.h>#define uchar unsigned char#define uint unsigned intsbit key_start = P1^0; // 开始按键sbit key_pause = P1^1; // 暂停按键sbit key_reset = P1^2; // 复位按键sbit display_data = P0; // 数码管数据端口sbit display_control = P2; // 数码管控制端口uchar code code_display[10] = {0x3F, 0x06, 0x5B, 0x4F, 0x66, 0x6D, 0x7D, 0x07, 0x7F, 0x6F}; // 数码管编码uint time = 0; // 计时器值void delay(uint t) {while(t--);}void display() {uchar i;for(i = 0; i < 4; i++) {display_control = 0x01 << i; // 选择数码管位display_data = code_display[time / 10]; // 显示十位delay(10000);display_control = 0x01 << i; // 选择数码管位display_data = code_display[time % 10]; // 显示个位 delay(10000);}}void main() {TMOD = 0x01; // 设置定时器模式TH0 = 0xFC; // 设置定时器初值TL0 = 0x18;TR0 = 1; // 启动定时器display_control = 0xFF; // 关闭所有数码管while(1) {if(key_start == 0) { // 开始计时while(key_start == 0);time = 0;while(TF0 == 0);TF0 = 0;}if(key_pause == 0) { // 暂停计时while(key_pause == 0);while(TF0 == 0);TF0 = 0;}if(key_reset == 0) { // 复位计时器while(key_reset == 0);time = 0;}display();}}```七、测试与分析1. 功能测试:经过多次测试,计时器功能稳定可靠,能够实现计时、暂停和复位功能。

基于单片机9999秒倒计时器

基于单片机9999秒倒计时器

摘要近年来随着计算机在社会领域的渗透和大规模集成电路的发展,单片机的应用正在不断地走向深入,它具有功能强,体积小,功耗低,价格便宜,工作可靠,使用方便等特点,因此特别适合于与控制有关的系统,越来越广泛地应用于自动控制,智能化仪器,仪表,数据采集,军工产品以及家用电器等各个领域。

而51单片机是各单片机中最为典型和最有代表性的一种。

本次设计以单片机(AT89S51)芯片为核心,辅以必要的外围电路,在配以相应的软件,设计了一个简易的倒计时器,它由5V直流电源供电。

在硬件方面,除了单片机外,使用一个7SEG-MPX4-CA数码管来进行显示,用两个电容和一个晶振组成了一个振荡电路,提供时钟信号,用5V的电源、一个电阻和一个电容构成了一个复位电路,再用四个电阻完成驱动。

LED采用的是动态扫描显示。

在软件方面,我采用汇编语言编程,利用系统调试工具keil C51来调试程序,然后再利用Proteus进行仿真。

经过实践证明,本系统运行稳定,其优点是硬件电路简单,软件功能完善,性价比较高等,具有一定的实用和参考价值。

关键词:单片机;AT89S51;SEG-MPX4-CA数码管;倒计时器;汇编语言。

SummaryIn recent years, as computer penetration in the social field and the development of large scale integrated circuits, microcontroller applications are continually deepening, it has strong functions, small size, low power consumption, cheap, reliable, easy to use and so on, therefore particularly suitable for systems with control of more and more widely used in automatic control, intelligent instruments, meters, data acquisition, military products and household appliances and other fields.The SCM 51 SCM is the most typical and most representative one. The design of a microcontroller (AT89S51) chip as the core, supplemented by the necessary peripheral circuits, accompanied by the corresponding software in the design of a simple countdown device, which consists of 5V DC power supply.On the hardware side, in addition to SCM, the use of a 7SEG-MPX4-CA digital control to be displayed, with two capacitors and a crystal oscillation circuit composed of a provision of the clock signal, with 5V power supply, a resistor and a capacitor form a reset circuit, and then four resistors to complete the driver. LED uses a dynamic scan showed. On the software side, I use assembly language programming, using the system debugger to debug programs keil C51, and then simulated using Proteus. Proven, the system is stable, the advantage of simple hardware circuit, software, functional, high cost, etc., has certain practical and useful.Key words:SCM;AT89S51SEG-MPX4-CA;digital control; countdown device; assembly language目录前言原理简述1.1开发意义1.2原理简述第一章硬件电路2.1 单片机概述2.2 MCS-51 系列单片机介绍2.3 AT89C51的芯片概述2.4 LED显示器接口技术2.5 元器件筛选第三章系统电路3.1 硬件调试3.2 软件调试参考文献结束语致谢附录源程序前言近年来随着计算机在社会领域的渗透, 单片机的应用正在不断地走向深入,同时带动传统控制检测日新月益更新。

单片机课程设计篮球计时计分器正文精选全文完整版

单片机课程设计篮球计时计分器正文精选全文完整版

可编辑修改精选全文完整版基于单片机的篮球赛计时计分器的设计一系统设计方案1.1 设计题目篮球计时计分器1.2 系统功能要求本系统可实现功能如下:(1)主控部分:选择单片机为核心元件构成系统。

(2)计时部分:能记录整个赛程的比赛时间,并能修改时间、暂停时间。

(3)计分部分:能随时刷新甲、乙两队在整个赛程中的比分。

(4)中场交换比赛场地时,能交换甲、乙两队比分的位置。

(5)比赛时间结束时,能发出报警指令。

1.3 系统总体方案设计本设计由AT89C51编程控制LED七段数码管作球赛计时计分系统具有赛程定时设置、赛程时间暂停、性能稳定、操作方便且易携带等特点。

1.3.1系统设计方案论证本设计是基于89C52单片机的键盘控制及显示电路设计,从系统的设计功能上看,系统可分为两大部分,即键盘输入控制部分和显示部分,对于每一个部分都有不同的设计方案,起初我拟订了下面两种方案:第一种方案:键盘控制采用矩阵扫描键盘,可以用普通按键构成4×4矩阵键盘,直接接到89C51单片机的P0口,高四位作为行,低四位作为列,通过软件完成键盘的扫描和定位。

显示部分采用动态显示,采用移位寄存器74LS164和译码器74LS138通过显示驱动程序驱动七段数码管显示。

此方案成本低,所用到的两个外围芯片价格都很低廉,而且单片机的I/O口占用较少,可以节约单片机接口资源。

第二种方案:键盘控制采用独立是式键盘,每个按键的"接零端"均接地,每个按键的"测试端"各接一条输入线,通过检测输入线的电平状态就可以很容易地判断哪个键被按下了,这种方法操作速度高而且软件结构很简单。

这种方法比较适合按键较少或操作速度较高的场合。

显示部分采用静态显示方法,所谓静态显示,就是每一个显示器都要占用单独的具有锁存功能的接口用于笔划段字形代码。

这样单片机只要把要显示的字形代码发送到接口电路,就不用管它了,直到要显示新的数据时,再发送新的字形码,因此,使用这种方法单片机中CPU 的开销小。

单片机课程设计计时器

单片机课程设计计时器

单片机课程设计计时器一、课程目标知识目标:1. 学生能够理解单片机的基本工作原理和内部结构。

2. 学生掌握计时器模块的使用方法,包括编程和接口连接。

3. 学生能够解释计时器的工作流程,并掌握相关计算方法。

技能目标:1. 学生能够运用所学知识,设计并实现一个基于单片机的计时器程序。

2. 学生通过实践操作,培养动手能力和问题解决能力,能够调试并优化计时器功能。

3. 学生能够使用相关软件(如Keil、Proteus等)进行程序编写和仿真测试。

情感态度价值观目标:1. 学生培养对单片机编程的兴趣和热情,增强对电子工程领域的认识。

2. 学生在团队协作中学会沟通、分享,培养合作精神。

3. 学生认识到技术发展对生活的影响,激发创新意识和责任感。

课程性质:本课程为实践性较强的单片机应用课程,要求学生在理论学习的基础上,动手实践,培养实际操作能力。

学生特点:考虑到学生所在年级(如高二或高三),他们已经具备一定的电子基础和编程能力,但需加强对单片机内部结构和实际应用的理解。

教学要求:课程注重理论与实践相结合,要求教师以学生为主体,引导学生主动探究,培养学生的创新思维和实际操作能力。

通过本课程的学习,学生能够将知识转化为具体的学习成果,为后续相关专业课程打下坚实基础。

二、教学内容本课程教学内容以单片机计时器设计为主线,结合以下章节内容进行:1. 单片机基础理论:- 单片机内部结构和工作原理- 计时器/计数器模块功能介绍2. 计时器模块编程:- 汇编语言基础- 计时器编程方法- 中断处理程序设计3. 硬件电路设计与接口:- 计时器模块硬件连接- 单片机与外围设备接口技术- 电路仿真与调试4. 实践操作:- 使用Keil和Proteus软件进行程序编写和仿真- 设计并搭建计时器硬件电路- 调试优化计时器功能5. 综合应用:- 结合实际案例,分析计时器的应用场景- 创新设计,拓展计时器功能教学内容安排与进度:1. 基础理论学习(1课时)2. 计时器模块编程(2课时)3. 硬件电路设计与接口(2课时)4. 实践操作(3课时)5. 综合应用(1课时)教学内容与课本紧密关联,遵循科学性和系统性原则,确保学生能够掌握单片机计时器设计的全过程。

基于stm32单片机的数字秒表设计

基于stm32单片机的数字秒表设计

基于stm32单片机的数字秒表设计摘要:本设计用stm32单片机搭以其它硬件组成数字电子秒表,采用主程序设计,通过数码管显示计时结果。

对硬件电路和软件进行设计,并进行仿真测试,结果表明,计时准确,结构简单,稳定性强。

关键词:STM32;单片机;数字秒表一、研究原理在刚通电后打开电源开关,使系统初始化,此时计时器显示为00.00.00,按下开关开始计时时,stm32单片机接收到外部中发来的中断请求后,转到开启TIM2定时器。

计时是靠TIM2定时器的中断来完成的,TIM2定时器时钟为72Mhz,定时器预分频为72分频,即时钟的72个周期,每1微妙定时器自加1,溢出值设定为999,即从0-999的共1000次,每1毫秒发生一次定时器中断,每当一处定时溢出是就向TIM发出中断请求,实现数据的累加,达到10次就实现进位加一,以此类推,直到实现最大计时23小时59分59.99秒后复位。

在定时器工作过程中,外部按下暂停键,信息会传送到TIM2的捕获输入引脚,CPU就收到捕获中断请求执行定时器捕获中断的程序,显示数据,并将数据存到寄存区内。

在暂停后,对PA0进行扫描,如果按下就回到主程序,准备开始新的计时。

在暂停健被按下时,此时显示时间被存到缓存内,再按下暂停键,再次继续计时时,上次显示的计时时间从缓存区转到最终存储区。

在秒表停止计时后扫描查看键PA2,PA2口是高电平,就查看最近的一次计时缓存,是低电平就调用最终缓存区的计时数据查看前面的计时数据。

从而实现多次计时和查看前面计时数据的功能。

二、硬件设计设计成品由硬件电路和软件程序协调合一组成。

硬件电路由显示电路、电源电路、控制电路、主控电路等组成。

主控电路以STM32为主,显示电路则用1602来作为显示工具。

本秒表利用STM32单片机的定时的定时原理,来达到精确计时的目标。

开始和暂停的功能靠的是单片机的中断系统。

在单片机的几个接口中,PB口为输出口,输出计时数据,列扫描的输出则是安排在PB0-PB4口,三个按钮开关接口为PA0、PA1、PA2,功能依次为开始、暂停、存储和查看前面的计时数据。

基于单片机的秒表时钟计时器设计

基于单片机的秒表时钟计时器设计

基于单片机的秒表时钟计时器设计毕业设计论文基于单片机的秒表/时钟计时器设计摘要近年来,随着科学技术的进步和时代的发展,人们对时钟的功能和精度提出了越来越高的要求,各种时钟的设计也越来越重要。

秒表/时钟计时器是在一种计时器上实现两种基本功能的一种器件。

它广泛应用于各种场所,同时,它以其小巧,价格低廉,走时精度高,使用方便,功能多,便于集成化,而受到广大消费者的喜爱。

本文介绍了一种以AT89S51单片机为核心的秒表/时钟计时器的设计,实时时钟芯片DS1302提供实时时间,6位LED动态显示时、分、秒,并在计时过程中具有报时功能, 定时时间到时,音乐电路播放悦耳的乐曲。

该数字钟设有五个按键: K1, K2,K3,K4和K5键,使之具备了校时、定时功能,在设计中分别介绍了它们的工作特点、原理和使用方法,并给出了它们与单片机AT89S51的接口电路。

单片机和集成芯片的应用使得本设计硬件电路简化、编程方便,同时功能也更稳定。

由于单片机可以重新写入不同程序这就便于时钟功能的扩充和改变,同时时钟芯片时间精确度高可以保证系统的精度。

关键词:单片机;秒表;时钟;实时时钟芯片;动态LED显示;The Design Of Stopwatch/Electronic-Clock System Based OnSingle-Chip-MicrocomputerAbstractIn recent years, with the scientific progress and the development of the times, people’ requirements of the clock’ function and accuracy are m ore and more high. The various design of the clock also becomes increasingly important. As long as the existence of timing、counting ,the clock will be used. Meanwhile ,in daily lives, with its feature of compact, low price ,high accuracy, ease to use, multi-functional, ease of integration, the digital clock are fond of majority of consumers.This paper introduces the design of digital alarming clock ,which was based on the core of single-chip microcomputer AT89S51.Real-time clock chip DS1302 provides real-time, six bit LED display hours, minutes and seconds dynamically, the clock also having the function of timekeeping in the process of timing .When timing time, the music circuit broadcast delightful music. The digital clock with five keys: the button of K1, K2, K3, K4, with these keys, the digital clock has the function of regulating & timing. This design introduces their characteristics,principles,using methods, and gives them the interface circuit with SCM AT89S51.The circuit of hardware for this design become easy and the system function become powerful along with MCU and integrated chip used. Because the monolithic integrated circuit may reread in different procedure this at your convenience to the clock function expansion and the change, simultaneously the Real-time clock chip precision is high may guarantee the system the precision.Keywords:SCM;Stopwatch;Clock;Real-time clock chip;Dynamic LED display;目录引言----------------------------------------------------------------1第1章绪论---------------------------------------------------------------------------------------------------2 1.1概述-----------------------------------------------------------------------------------------2 1.2课题的总体设计及思路-------------------------------------------------------------------2第2章硬件电路设计---------------------------------------------------------------------------4 2.1单片机最小系统---------------------------------------------------------------------------4 2.1.1单片机的介绍及选择-------------------------------------------------------------------4 2.1.2 AT89S51单片机性能与应用---------------------------------------------------------4 2.1.3单片机的时钟电路-------------------------------------------------------------------6 2.1.4 单片机的复位电路-------------------------------------------------------------------7 2.2 实时时钟电路------------------------------------------------------------------------------7 2.3 显示电路------------------------------------------------------------------------------------8 2.3.1 LED显示的基本原理-------------------------------------------------------------------92.3.2显示电路原理图------------------------------------------------------------------------9 2.4键盘电路------------------------------------------------------------------------------------10 2.5闹铃电路------------------------------------------------------------------------------------11第3章系统软件设计-------------------------------------------------------------------------13 3.1 主程序流程图------------------------------------------------------------------------------13 3.2读DS1302程序流程图--------------------------------------------------------------------14 3.3显示程序流程图---------------------------------------------------------------------------14 3.4秒表计时子程序流程图------------------------------------------------------------------14 3.5时钟计时子程序流程图------------------------------------------------------------------15 3.6设定时间子程序流程图------------------------------------------------------------------15 3.7闹钟子程序流程图-------------------------------------------------------------------------17第4章调试--------------------------------------------------------------------------------18结论与展望----------------------------------------------------------------------------------------19致谢-------------------------------------------------------------------------------------------------20参考文献-------------------------------------------------------------------------------------------21附录A:系统原理图----------------------------------------------------------------------------22附录B:外文文献及其译文--------------------------------------------------------------------23附录C:主要参考文献题录及摘要------------------------------------------------------------29附录D:程序清单---------------------------------------------------------------------------------31插图清单图1-1 系统原理框图--------------------------------------------------------------------------------3图2-1 AT89S51的引脚结构图-----------------------------------------------------------------------5图2-2 时钟电路----------------------------------------------------------------------------------------6图2-3 复位电路----------------------------------------------------------------------------------------7图2-4 DS1302引脚图----------------------------------------------------------------------------------8图2-5 DS1302与单片机AT89S51的接口电路----------------------------------------------------8 图2-6数码管引脚图----------------------------------------------------------------------------------9图2-7 数码管的共阴和共阳接法-------------------------------------------------------------------9图2-8 显示电路----------------------------------------------------------------------------------------10图2-9 键盘电路---------------------------------------------------------------------------------------11 图2-10 LM386的引脚图------------------------------------------------------------------------------12 图2-11 闹铃电路---------------------------------------------------------------------------------------12 图3-1 主程序流程图----------------------------------------------------------------------------------13 图3-2 读DS1302时间子程序流程图----------------------------------------------------------------14 图3-3 显示程序流程图-------------------------------------------------------------------------------14 图3-4 秒表计时子程序流程图-----------------------------------------------------------------------15 图3-5 时钟计时子程序流程图-----------------------------------------------------------------------15图3-6 设定时间子程序流程图-----------------------------------------------------------------------16图3-7 调时/定时子程序流程图----------------------------------------------------------------------16图3-8 时钟闹铃子程序流程图-----------------------------------------------------------------------17插表清单表2-1 P3口的第二功能表-----------------------------------------------------------------------------------6引言近年来随着计算机技术的飞速发展,计算机也正式形成了通用计算机系统和嵌入式计算机系统二个分支。

51单片机秒表程序设计

51单片机秒表程序设计

51单片机秒表程序设计1. 简介秒表是一种用于测量时间间隔的计时器,常见于体育比赛、实验室实验等场合。

本文将介绍如何使用51单片机设计一个简单的秒表程序。

2. 硬件准备•51单片机开发板•LCD液晶显示屏•按键开关•连接线3. 程序流程3.1 初始化设置1.设置LCD液晶显示屏为8位数据总线模式。

2.初始化LCD液晶显示屏。

3.设置按键开关为输入模式。

3.2 主程序循环1.显示初始界面,包括“00:00:00”表示计时器初始值。

2.等待用户按下开始/暂停按钮。

3.如果用户按下开始按钮,则开始计时,进入计时状态。

4.如果用户按下暂停按钮,则暂停计时,进入暂停状态。

5.在计时状态下,每隔1毫秒更新计时器的数值,并在LCD液晶显示屏上显示出来。

6.在暂停状态下,不更新计时器的数值,并保持显示当前数值。

3.3 计时器控制1.定义一个变量time用于存储当前的计时器数值,单位为毫秒。

2.定义一个变量running用于标记计时器的状态,0表示暂停,1表示运行。

3.定义一个变量start_time用于存储计时器开始的时间点。

4.定义一个变量pause_time用于存储计时器暂停的时间点。

5.在计时状态下,每隔1毫秒更新time的值为当前时间与start_time的差值,并将其转换为小时、分钟、秒的表示形式。

6.在暂停状态下,保持time的值不变。

3.4 按键检测1.检测按键开关是否被按下。

2.如果按键被按下,判断是开始/暂停按钮还是复位按钮。

3.如果是开始/暂停按钮,并且当前处于计时状态,则将计时状态设置为暂停状态,并记录暂停时间点为pause_time;如果当前处于暂停状态,则将计时状态设置为运行状态,并记录开始时间点为当前时间减去暂停时间的差值。

4.如果是复位按钮,则将计时器数值重置为0,并将计时状态设置为暂停。

4. 程序代码示例#include <reg51.h>// 定义LCD控制端口和数据端口sbit LCD_RS = P1^0;sbit LCD_RW = P1^1;sbit LCD_EN = P1^2;sbit LCD_D4 = P1^3;sbit LCD_D5 = P1^4;sbit LCD_D6 = P1^5;sbit LCD_D7 = P1^6;// 定义按键开关端口sbit START_PAUSE_BTN = P2^0;sbit RESET_BTN = P2^1;// 定义全局变量unsigned int time = 0; // 计时器数值,单位为毫秒bit running = 0; // 计时器状态,0表示暂停,1表示运行unsigned long start_time = 0; // 开始时间点unsigned long pause_time = 0; // 暂停时间点// 函数声明void delay(unsigned int ms);void lcd_init();void lcd_command(unsigned char cmd);void lcd_data(unsigned char dat);void lcd_string(unsigned char *str);void lcd_clear();void lcd_gotoxy(unsigned char x, unsigned char y);// 主函数void main() {// 初始化设置lcd_init();while (1) {// 显示初始界面lcd_clear();lcd_gotoxy(0, 0);lcd_string("00:00:00");// 等待用户按下开始/暂停按钮while (!START_PAUSE_BTN && !RESET_BTN);// 判断按钮类型并处理计时器状态if (START_PAUSE_BTN) {if (running) { // 当前处于计时状态,按下按钮将进入暂停状态 running = 0;pause_time = time;} else { // 当前处于暂停状态,按下按钮将进入计时状态running = 1;start_time = get_current_time() - pause_time;}} else if (RESET_BTN) { // 复位按钮按下,重置计时器time = 0;running = 0;}}}// 毫秒级延时函数void delay(unsigned int ms) {unsigned int i, j;for (i = ms; i > 0; i--) {for (j = 110; j > 0; j--);}}// LCD初始化函数void lcd_init() {lcd_command(0x38); // 设置8位数据总线模式lcd_command(0x0C); // 显示开,光标关闭lcd_command(0x06); // 光标右移,不移动显示器lcd_command(0x01); // 清屏}// 向LCD发送指令函数void lcd_command(unsigned char cmd) {LCD_RS = 0;LCD_RW = 0;LCD_EN = 1;LCD_D4 = cmd >> 4 & 1;LCD_D5 = cmd >> 5 & 1;LCD_D6 = cmd >> 6 & 1;LCD_D7 = cmd >> 7 & 1;delay(1);LCD_EN = 0;LCD_D4 = cmd >> 0 & 1;LCD_D5 = cmd >> 1 & 1;LCD_D6 = cmd >> 2 & 1;LCD_D7 = cmd >> 3 & 1;delay(1);LCD_EN = 0;}// 向LCD发送数据函数void lcd_data(unsigned char dat) { LCD_RS = 1;LCD_RW = 0;LCD_EN = 1;LCD_D4 = dat >> 4 & 1;LCD_D5 = dat >> 5 & 1;LCD_D6 = dat >> 6 & 1;LCD_D7 = dat >> 7 & 1;delay(1);LCD_EN = 0;LCD_D4 = dat >> 0 & 1;LCD_D5 = dat >> 1 & 1;LCD_D6 = dat >> 2 & 1;LCD_D7 = dat >> 3 & 1;delay(1);LCD_EN = 0;}// 向LCD发送字符串函数void lcd_string(unsigned char *str) {while (*str) {lcd_data(*str++);delay(5);}}// 清屏函数void lcd_clear() {lcd_command(0x01);}// 设置光标位置函数void lcd_gotoxy(unsigned char x, unsigned char y) {unsigned char addr;if (y == 0)addr = x | (0x80 + y);else if (y == 1)addr = x | (0xC0 + y);lcd_command(addr);}5. 总结本文介绍了使用51单片机设计一个简单的秒表程序。

基于51单片机的9999秒倒计时器方案书

基于51单片机的9999秒倒计时器方案书

西京学院毕业设计(论文)题目: 基于51单片机倒计时器姓名:系别: 机电工程系专业: 机电一体化技术班级: 机电0809班学号: 0812090901指导老师: 张永超日期: 2011年1月20日教务处制摘要近年来随着计算机在社会领域的渗透,单片机的应用正在不断地走向深入,同时带动着传统控制检测日新月异的更新。

由于单片机具有体积小、易于产品化、面向控制、集成度高、功能强、可靠性高、价格低等特点,其在工业控制、机电一体化、智能仪表、通信等诸多领域中得到了广泛的应用。

在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用。

但是仅单片机方面知识是不够的,还应根据具体硬件结构,以及针对具体应用对象特点的软件结合,以作完善。

本论文针对倒计时系统的设计的需求,介绍了MCS-51单片机的部分基本原理,如51单片机的接口功能、中断、定时器等等。

倒计时系统需要用到锁存器、矩阵键盘、LED数码显示器等主要模块,通过不同的模块之间相互作用,完成倒计时的初步硬件结构。

对于倒计时器中的LED数码显示器来说,我为了简化线路、降低成本,采用以软件为主的接口方法,即采用Keil uVision3软件程序进行译码。

本次设计采用C语言编程,通过倒计时子程序模块、矩阵键盘扫描模块、中断等子程序的正确调用,完成了可以随时设置初值的基于51单片机控制的9999秒倒计时系统。

【关键词】倒计时器单片机矩阵键盘Keil uVision3 LED数码显示器目录前言 (1)第一章倒计时系统简介 (2)1.1设计要求 (2)1.2方案说明 (2)1.3系统功能 (3)第二章MCS-51单片机基本原理 (4)2.1 MCS-51单片机的组成原理 (4)2.1.1 80C51芯片介绍 (4)2.2 MCS-51单片机的引脚功能 (5)2.3 中断 (6)2.4 定时器与计数器 (9)第三章倒计时器系统设计与调试 (11)3.1 硬件电路设计 (11)3.2中央处理器模块 (11)3.3锁存器 (13)3.4 矩阵键盘 (15)3.5 LED数码显示模块 (16)3.6 软件设计 (18)3.7 倒计时模块子程序设计 (22)3.8 其他子程序设计 (23)结论 (25)致谢 (26)参考文献 (27)附录 (28)前言51系列单片机属于总线型单片机,具有硬件架构完整、功能强大、技术成熟、通用性强、可外部扩展、配套芯片齐全、集成开发环境好、实用子程序丰富以及价格低廉等一系列优点,无论是实际工程应用,还是学习单片机原理及其应用技术,51系列单片机都是理想的选择。

单片机60秒计时器实验报告

单片机60秒计时器实验报告

单片机60秒计时器实验报告一、实验目的本实验旨在设计并实现一个基于单片机的60秒计时器,通过学习单片机的基本原理和编程语言,掌握单片机计时器的设计和实现方法。

二、实验原理1. 单片机基础知识:单片机是一种集成电路芯片,它包含了中央处理器(CPU)、存储器(RAM、ROM)、输入输出(I/O)接口等多个功能模块。

单片机可以通过编写程序来控制各种外设,如LED灯、蜂鸣器等。

2. 计时器原理:计时器是一种用于测量时间的电子设备,它通常由一个晶振作为基准信号源,通过分频和计数来实现精确计时。

在单片机中,计时器通常由定时器(Timer)模块来实现。

3. 60秒计时器设计:本次实验需要设计一个能够精确计时60秒的计时器。

具体步骤如下:(1) 设置定时器工作模式为定时模式;(2) 设置定时时间为60秒;(3) 等待定时完成,并触发中断;(4) 在中断服务函数中输出时间到LED灯或数码管上。

三、实验材料1. STC89C52RC单片机开发板;2. 4位共阳数码管或8个LED灯;3. 杜邦线若干。

四、实验步骤1. 连接电路:将单片机开发板上的P0口连接到4位共阳数码管或8个LED灯的控制引脚,P3口连接到晶振、复位电路等。

2. 编写程序:使用Keil C51编写单片机程序,实现60秒计时器功能。

具体代码如下:#include <reg52.h>#define uchar unsigned char#define uint unsigned intsbit LED1 = P0^0; //LED灯连接到P0.0sbit LED2 = P0^1; //LED灯连接到P0.1sbit LED3 = P0^2; //LED灯连接到P0.2sbit LED4 = P0^3; //LED灯连接到P0.3void InitTimer() //初始化定时器{TMOD &= 0xF0; //设置工作模式为定时模式TH1 = 0x3C; //设置定时时间为60秒TL1 = 0xB0;ET1 = 1; //开启定时器中断允许位}void TimerInterrupt() interrupt 3 //定时器中断服务函数{static uchar cnt = 60; //计数器,初始值为60秒if(cnt > 0) cnt--; //每次中断计数器减一if(cnt == 10) { //当计数器为10秒时,LED1闪烁LED1 = ~LED1;}if(cnt == 0) { //当计数器为0秒时,所有LED灯关闭 LED1 = 0;LED2 = 0;LED3 = 0;LED4 = 0;}}void main(){InitTimer(); //初始化定时器while(1) {LED2 = 1; //LED2始终点亮if(TF1) { //如果定时器溢出,重新加载计时器TF1 = 0; //清除定时器中断标志位TH1 = 0x3C; //设置定时时间为60秒TL1 = 0xB0;ET1 = 1; //开启定时器中断允许位cnt = 60; //重置计数器}}}3. 烧录程序:将编写好的程序通过ISP或其他烧录工具烧录到单片机中。

用单片机做的倒计时15s

用单片机做的倒计时15s

用单片机设计15s倒计时器跳线设置:默认跳线位置,注意蜂鸣器选择跳线J5要选23端程序效果:利用单片机的定时/计数器设计一个15到0倒计时器,按S4后启动,要求精确显示到百分之一秒。

发挥部分:1、定时结束后有提示音报警,并可重新定时2、定时过程中按独立键盘s5可暂停,按S4继续运行环境:51hei单片机学习板*/ORG 0000HLJMP START //主程序必须避开地址000BHORG 000BH //定时器0的中段服务程序,起始地址为000BHLJMP IT00ORG 0030HSTART: MOV TH0,#0EBH //装入初始值,定时时间为10msMOV TL0,#64HMOV TMOD,#01H //工作方式1MOV 33H,#01 //显示初值为15sMOV 32H,#05MOV 31H,#00MOV 30H,#00SETB ET0 //打开定时0SETB EA //开总中断LOOP1: JB P3.6,LOOP //判断高低位,即按键KEY0是否按下LCALL DISPLAY //为低,即按键按下,延时消抖LCALL DISPLAYJB P3.6,LOOP //按键真的按下,并不是外界的干扰SETB TR0 //启动定时器HERE: LCALL DISPLAY //调用显示JB P3.7,LOOP3 //判断高低,即KEY1按键是否按下CLR TR0 //按下,关闭定时器,这里并没有消抖LJMP LOOP1 //等待KEY0的按下LOOP3: SJMP HERE //KEY1没有按下,就需显示LOOP: LCALL DISPLAY //KEY1没有按下,就需显示LJMP LOOP1//减10ms子程序SUB1: DEC 30H //百分位减1MOV A,30HCJNE A,#0FFH,LOOP2 //判断百分位减到0之后是否再减1MOV 30H,#09 //是,装入初值9DEC 31H //十分位减1MOV A,31HCJNE A,#0FFH,LOOP2 //判断百分位减到0之后是否再减1MOV 31H,#09MOV A,32HCJNE A,#0FFH,LOOP2MOV 32H,#09DEC 33HMOV A,33HCJNE A,#0FFH,LOOP2clr P2.2 //从15s减到0s后,驱动蜂鸣器 LCALL DELAY //延时LCALL DELAYSETB P2.2 //关闭蜂鸣器MOV 33H,#01 //装入初值15sMOV 32H,#05MOV 31H,#00MOV 30H,#00LOOP2: NOP //空指令RET //返回//显示子程序DISPLAY: MOV DPTR,#TAB //赋表首地址MOV A,#0FBHSETB P2.7MOV P0,A //亮最左边的数码管CLR P2.7XCH A,R0 //暂存A的值MOV A,33HMOVC A,@A+DPTR //根据表值查找所需的值 SETB P2.6MOV P0,A //显示值CLR P2.6LCALL DELAY //延时XCH A,R0 //恢复原值RL A //循环左移,为下次做准备SETB P2.7MOV P0,ACLR P2.7XCH A,R0MOV A,32HMOVC A,@A+DPTRSETB P2.6MOV P0,ACLR P2.6LCALL DELAYXCH A,R0RL AMOV P0,Aclr P2.7XCH A,R0MOV A,31HMOVC A,@A+DPTRSETB P2.6MOV P0,Aclr P2.6LCALL DELAYXCH A,R0RL ASETB P2.7MOV P0,Aclr P2.7XCH A,R0MOV A,30HMOVC A,@A+DPTRSETB P2.6MOV P0,Aclr P2.6LCALL DELAYRETTAB: DB 3FH,06H,5BH,4FH,66H ;数码管显示的数值DB 6DH,7DH,07H,7FH,6FHIT00: MOV TH0,#0EBH //装入初值,时间为10msMOV TL0,#64HLCALL SUB1 //减10msRETI //返回DELAY: MOV R7,#04 //延时子程序,时间大约为:2us*4*250DEL2: MOV R6,#250DEL1: DJNZ R6,DEL1DJNZ R7,DEL2RETEND //结束单片机AT89C51 00——99带倒计时计数器[日期:2008-01-29 ] [来源:东哥开发网() 作者:佚名] [字体:大中小] (投递新闻)1.设计任务(1.上电时显示“00”,第一次按下SP1后就开始计数。

单片机60秒计时器程序c语言

单片机60秒计时器程序c语言

一、概述计时器在日常生活和工业生产中扮演着重要的角色。

60秒计时器是一种常见的计时器类型,用于测量较短的时间间隔。

单片机作为一种微处理器,具有广泛的应用领域,其使用C语言编程可以实现各种功能,包括计时器。

本文将介绍如何使用C语言编写单片机60秒计时器程序。

二、程序框架1. 宏定义和全局变量声明在编写单片机60秒计时器程序时,首先需要定义一些宏和全局变量,用于设置计时器的工作模式和进行时间计数。

例如:```c#define FOSC xxx#define T1MS (xxx-FOSC/12/1000) 每隔1ms中断一次```全局变量声明如下:```cunsigned char g_seconds;unsigned char g_minutes;unsigned char g_flag;```2. 定时器初始化计时器的初始化是整个程序的重要步骤,需要配置计时器的工作模式、中断使能等。

在C语言中,可以通过编写相应的代码实现。

```cvoid Timer1Init() {TMOD |= 0x10; //设置计数器的工作方式为方式1TH1 = T1MS / 256; //装初值TL1 = T1MS 256;ET1 = 1; //打开定时器1中断允许TR1 = 1; //打开定时器EA = 1; //打开总中断}```3. 计时器中断处理函数计时器中断发生时,需要进行相应的处理,例如对秒数进行累加,判断是否达到60秒等。

```cvoid Timer1_ISR() interrupt 3 using 1 {TH1 = T1MS / 256;TL1 = T1MS 256;g_seconds++;if (g_seconds >= 60) {g_minutes++;g_seconds = 0;}if (g_minutes >= 60) {g_minutes = 0;}g_flag = 1;}```4. 主函数在主函数中,可以设置好计时器的初始状态,并通过不断循环等待计时器中断的触发,实现60秒计时功能。

基于单片机的时钟计时器的设计大学毕设论文

基于单片机的时钟计时器的设计大学毕设论文

摘要时钟是人类日常生活必不可少的工具,本设计从日常生活中常见的事物入手,通过对时钟计时器的设计,让我们认识到单片机已经深入到我们生活的每个领域,该设计不仅可以锻炼我们的动手能力,而且可以加深我们对单片机的认识和激发我们对未知科学领域的探索。

本文利用单片机实现数字时钟计时功能的主要内容,采用独立式按键进行时间调整,其中AT89C52是核心元件同时采用数码管LED动态显示“时”,“分”,“秒”的现代计时装置。

与传统机械表相比,它具有走时精确,显示直观等特点。

它的计时周期为24小时,显满刻度为“23时59分59秒”,另外具有校时功能,断电后有记忆功能,恢复供电时可实现计时同步等特点。

该系统同时具有硬件设计简单、工作稳定性高、价格低廉等优点。

关键字AT89C52 LED显示244AbstractHuman Clock is an essential tool for everyday life, from the design of everyday things in common start, the clock timer through the design, let us recognize that SCM has the depth to each area of our lives, not only the design Can exercise our practical ability, but can also deepen our understanding of the SCM and inspire us to explore the unknown field of science.Using MCU digital clock timing of the main contents of a stand-alone keys to time to adjust, while AT89C52 is the core component of the LED digital display dynamic "," "points" and "seconds" of modern timing devices. Compared with the traditional mechanical watches, it has a precise path that intuitive, and other characteristics. It's time for the 24-hour cycle, in full scale as "23:59:59", and a school function, memory function after power and restore power supply can be realized at the time synchronization, and other characteristics. The system also has hardware design simple, high stability work, the advantages of low prices.Keyword: AT89C52 LED display 244目录第一章前言 (3)第一节选题目的和意义 (3)第二节国内外发展情况 (4)一单片机的发展历程 (4)二单片机的发展趋势 (6)三单片机的组成及特点 (8)四单片机的分类 (9)五单片机的应用 (10)第三节本设计研究的内容和所做的工作 (11)小结 (11)第二章系统硬件的设计 (12)第一节设计方案的提出、论证和确定 (12)一时钟功能 (12)二计时功能 (12)三功能按键 (12)四中断嵌套和控制 (13)五时钟计时器的硬件电路 (14)第二节元件选择 (17)一 AT89C52芯片 (17)二显示部分 (31)三 74LS244芯片说明 (31)小结 (33)第三章控制系统的软件设计 (34)第一节设计部分 (34)一主程序 (34)二显示子程序 (35)三定时器T0中断服务程序 (35)四定时器T1中断服务程序 (36)五调试功能程序 (37)六秒表功能程序 (38)七闹钟时间设定功能程序 (38)第二节控制程序的编制和调试 (38)一硬件调试 (38)二软件调试 (38)三性能分析 (39)小结 (39)第四章参考文献 (39)第五章附录 (40)外文资料 (65)中文译文 (74)致谢语 (80)总结与展望 (81)第一章前言第一节选题目的和意义时钟,自从它发明的那天起,就成为人类的朋友,但随着时间的推移,科学技术的不断发展,人们对时间计量的精度要求越来越高,应用越来越广。

基于单片机的秒表计时器

基于单片机的秒表计时器
单片机技术课程设计
题目秒表计时器
1前言
单片机技术是人技术已经成了各种工程技术的核心,特别是进入信息时代以来,单片机技术更成了基本技术,其具体应用领域涵盖了通信领域、控制系统、测试系统、计算机等等各个领域。众所周知,秒表计时器已经在我们的现实生活中得到了广泛应运,并有涉及到各个领域中。比如手机、电脑等实用工具,又或是仓库、家庭保安系统中,都有使用秒表计时器电路。因此,计时器的种类呈现出多样化。随着科技的发展,人们对计时器的性能提出了越来越高的要求。本文设计了一种计时器,这种计时器通过运算放大器器件把电路中的电流经由放大器构成一个简单的电路系统。设计电路中应用到电阻、电容、等元器件。该计时器的设计采用模块化结构,使得设计简单明了、方便、灵活性强。同时可以根据需要在原有的基础上加以扩充,很有经济利用价值。
(4)巩固常用电子仪器的使用方法,还包括对万用表、直流稳压电源、示波器、信号发生交流毫伏表能正确使用;掌握常用电子元器件和电路的测试技能。
(5)严格的科学训练和课程设计实践。使我们逐步树立严肃认真,一丝不苟,实事求是的科学作风,并培养我们在实际工作中具有一定的生产信念、经济观念和全局观念。
4
计时器类型:根据计时器类型分目前市场常用的计时器有:秒表计时器,分钟计时器等;根据工作原理分:最简单的计时器是加开关电源来实现其功能,只能实现灯具开关;另外一种就是可以由话筒、音频放大器、选频电路、倍压整流电路、鉴幅电路、恒压源电路、延时开启电路、可控延时开关电路、可控硅电路组成。其功能可以实现被声音激活时,灯具全亮,当无声或声音达不到灯具激活要求时,可以保持低功率工作,如15的秒表计时器,未激活时只有4-5;秒表计时器的工作原理与结构:
(3)电容
电容亦称作“电容量”,是指在给定电位差下的电荷储藏量,国际单位是法拉。一般来说,电荷在电场中会受力而移动,当导体之间有了介质,则阻碍了电荷移动而使得电荷累积在导体上,造成电荷的累积储存,储存的电荷量则称为电容。

毕业论文-基于STC89C51单片机的篮球计时计分器的设计

毕业论文-基于STC89C51单片机的篮球计时计分器的设计

基于STC89C51单片机的篮球计时计分器的设计摘要随着科技的日益发展进步,单片机技术已经被广泛应用在科研、工作等重要领域内,目前也已经普及到我们的日常生活中,扮演着十分重要的角色。

本次设计是基于单片机的篮球计分器,以基本篮球规则为依据,设计结构简单且方便操作,对篮球比赛实现实时控制。

此次设计的计分器总共包括四个模块,他们是24秒显示、计时器、记分器、计节器。

实现的功能是:24秒显示能按键控制24秒计时器,当控球时间超过24秒时,可发出报警信号。

计时器可按键调节,可以随时暂停计时,暂停比赛,在每节结束和全场结束时报警。

记分器记录两队的积累分数,可通过按键分别加1、2、3分。

设计分为硬件设计和软件设计。

硬件设计的主要包括的是:LED数码管显示、按键控制系统设计以及辅助功能的设计。

软件设计包括:功能选择、倒计时的实现。

本文主要介绍了用单片机设计实现篮球计分器的整个流程,采用C语言编写程序。

设计引用MAX7219专用LED驱动芯片,解决了多位LED数码管同时显示的问题。

其中时间显示和比分显示部分由两组共阴极LED数码管显示。

时间显示部分可以以分为单位进行计时调整。

比分显示部分可以实现在半场结束后手动换场,两个显示模块均采用动态扫描方式进行显示。

按键控制部分采用独立按键,共设八个按键,实现调整分数、调整时间、比赛的开始/暂停、复位键和交换场地键等功能。

报警部分由蜂鸣器加三级管驱动,实现了发出按键声音和结束报警的功能。

采用单片机控制使这个系统按键操作使用简单,安装方便。

解决了篮球比赛计数器的安装问题,节约了线材,适合在各种规模的体育场馆使用,完全可以代替传统的用钟表进行计时的方法,当然稍加改动也可以用于其他球类比赛,是体育器材向智能化发展的一个实例。

关键词:STC89C51单片机;温度控制;恒温箱;DS18B20AbstractWith the increasing development of advances in technology, chip technology has be en widely applied in the important areas of research, work, etc., now also has spread int o our daily lives, it has developed into a more mature technology, the design will focus on SCM medical incubator temperature control system to do in-depth research. Smart th ermostat not only have a number of functions, which are extremely versatile. It can not only make the upper limit for the precise control of temperature control, but when the te mperature is not set within the range of time, but also through the relay to drive the co rresponding load of work, and at the same time the buzzer and warning lights will issue a warning signal, a very intelligent.Most of microcontroller-based incubator temperature control system is in use in lab oratory, industrial, pharmaceutical, agriculture. In the laboratory especially biological labor atories, we have to get more accurate experimental data, for constant temperature test en vironment demanding. So for the laboratory, the role of the incubator is very important. In the industrial production process, we incubator for relatively more stringent requiremen ts, such as heat, cold treatment products, etc., directly affect the quality of the product. I n medicine medical incubator is mainly used for storing drugs and reagents, transport, vaccines, Refrigerated blood, warmed dialysate, saline warming the like. From the above we can clearly see the important role of the incubator. In agriculture greenhouse, the te mperature control system is essential for the growth of crops for agriculture, so that all aspects of life in the temperature control system is always in a very important position.Keywords: MCU—80C51; Incubator; Temperature control目录摘要..................................... 错误!未定义书签。

单片机计时器设计实训报告

单片机计时器设计实训报告

一、实训目的通过本次实训,使学生了解单片机计时器的基本原理和设计方法,掌握单片机计时器的硬件设计和软件编程,提高学生动手实践能力和创新能力。

二、实训内容本次实训设计一款基于51单片机的计时器,具备计时、暂停、复位功能,计时范围0-59秒,精确到0.1秒。

三、实训原理1. 计时原理:利用51单片机的定时器/计数器功能,通过定时器中断实现计时功能。

2. 暂停功能:在计时过程中,按下暂停按钮,关闭定时器中断,计时停止。

3. 复位功能:按下复位按钮,将计时器清零,数码管显示00.0。

四、实训步骤1. 硬件设计(1)选择51单片机作为核心控制单元。

(2)选择4位共阴数码管作为显示模块,用于显示计时时间。

(3)选择按键作为控制模块,实现计时、暂停、复位功能。

(4)设计电路原理图,包括单片机、数码管、按键等模块的连接。

2. 软件设计(1)编写程序,初始化定时器/计数器,设置中断时间。

(2)编写中断服务程序,实现计时功能。

(3)编写按键扫描程序,实现计时、暂停、复位功能。

(4)编写数码管显示程序,将计时时间显示在数码管上。

3. 系统调试(1)连接电路,将程序烧录到单片机中。

(2)测试计时功能,确保计时准确。

(3)测试暂停和复位功能,确保功能正常。

(4)测试按键功能,确保按键操作正确。

五、实训结果与分析1. 硬件设计结果根据设计要求,成功设计了一款基于51单片机的计时器,包括单片机、数码管、按键等模块的连接,电路原理图如下:```+3.3V||---[单片机]||---[数码管]||---[按键]|GND```2. 软件设计结果编写了完整的程序,实现了计时、暂停、复位功能,数码管显示计时时间,计时范围0-59秒,精确到0.1秒。

3. 系统调试结果经过调试,计时器功能正常,计时准确,按键操作正确,符合设计要求。

六、实训心得1. 通过本次实训,掌握了单片机计时器的基本原理和设计方法,提高了动手实践能力和创新能力。

2. 学会了如何使用51单片机定时器/计数器功能实现计时功能,了解了中断编程的基本方法。

单片机计时器流程程序框图设计

单片机计时器流程程序框图设计

单片机计时器流程程序框图设计下载温馨提示:该文档是我店铺精心编制而成,希望大家下载以后,能够帮助大家解决实际的问题。

文档下载后可定制随意修改,请根据实际需要进行相应的调整和使用,谢谢!并且,本店铺为大家提供各种各样类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,如想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by theeditor. I hope that after you download them,they can help yousolve practical problems. The document can be customized andmodified after downloading,please adjust and use it according toactual needs, thank you!In addition, our shop provides you with various types ofpractical materials,such as educational essays, diaryappreciation,sentence excerpts,ancient poems,classic articles,topic composition,work summary,word parsing,copy excerpts,other materials and so on,want to know different data formats andwriting methods,please pay attention!1. 初始化:初始化定时器相关的寄存器,设置定时器的工作模式、预分频系数等。

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

用 很少 的资源和 i / o端 口 , 并 且 支 持 在 线 编 程 ,进 行 数 据
实 时 的存 取十 分方便 ,其 典型擦 /写 周期 为 1 0 0万次 ,数
据 保 持 有 效 时 间可 达 1 0 0年 之久 , 可 工 作 在 标 准 的 1 0 0 K H z 和快速 的 4 0 0 K H z 模 式 ,存 储 空 间 为 6 4 K , 能 够 满 足 本 设 计
序前增加相应声明 。
S T C 1 5系 列单 片机 是 1 T的 8 0 5 1 单 片机 ,为 兼 容传 统
8 0 5 1 ,定时 器 0 、 定时 器 l 和 定 时器 2 , 可 通 过 辅 助 寄 存
器A U X R 进 行设置 ,A U X R 格 式如 图 3 所 示。T 0 x l 2为定时器
够 快 ,利 用 人 的 视 觉 暂 留 现 象 及 发 光 二 极 管 的 余 辉 效 应 ,
8 0 5 1 速度 ,l 2分频 ;当速度 控制位为 1时,定时器速度 是
传统 8 0 5 1的 1 2倍 ,不 分 频 。
就 能达 到静态 显示效 果。动态 显示 的效 果和 静态显示 是一
3软件 设计
系统软件 设置 了三种 模式 ,分 别实现 定时 、计时和 查 询功 能。该系 统的流程 图如 图 2 所示 。
定时 器 设 置 在K e i l C开 发环 境 中 ,选 择 I n t eg 5 1 . h > ,即可完成对环境的配置 ;需 要用 到的新型 单片机 中新增 的寄存器 ,需在头 文件 中或程
响应系统请求 ;它支持 I S P( 在系统可编程 )/ I A P( 在应用
可 编 程 ) ,无 需 专 用 编 程 器 , 无 需 专 用 仿 真 器 ,可 通 过 串
需求 。因此 , 本设计中选用 A T 2 4 C 6 4 存储芯片作为存储设备 。
口 ( R x D / P 3 . 0 , T x D / P 3 . 1 )直接 下载 用户程序 ,数 秒 即可完 成 ,给编程人 员带来极大便利 ;它还有 共两 个普通定时器 / 计数器 ( T O 、T 2 ),三路 c c P / P w M / P c A( 可再 实现三个 定时
样 的, 但 动 态 显示 能够 节 省 大 量 的 I / O 端 口, 而且功耗更低, 故 本 设 计采 用 动 态 显 示 。
本设计 中使用 了定时 器 0的 1 6位 自动重装模式 。此模 式 下,定时器 T O的溢 出速率 的计 算公式 为式 ( 1 ),定
时器 T O的 初 值 的 计 算 公 式 为 式 ( 2 ),式 中 F o s c 为 系 统
显 示模块
L E D数码管动态显示接 口是单片机中应用最
0速度控 制位 ,T l x l 2为 定时器 1 速 度控 制位 ,T 2 x 1 2为定
时器 2速 度控制 位 。当速度控 制位 为 0时 ,定 时器 为传统
为 广泛 的一种 显示方 式。动态驱 动是指在 每个 时 间片 中只 点亮一 个数码 管,各数 码管轮 流点亮 。只要 扫描 的速 度足
主时钟 。
当8 0 5 1 单片机 的端 口总线 负载达到或超 过其最大负载
能 力 时 , 必 须 接 入 总 线 驱 动 器 。7 4 L S 2 4 5是 常 用 的 用 来 驱 动 L E D或 者 其 他 设 备 的 芯 片 ,它 是 八 路 同 相 三 态 双 向 总 线
定时器 T 0的溢 出速 率 :
器 ) ,故 能 够 更 好 地 满 足 应 用 程 序 的定 时 计 时 需 求 。因 此 , 本 设计 选 择 以 S T C 1 5 F 4 0 8 A D型 号 的单 片 机 为 控 制 芯 片 。 时 钟 模 块 S T C 1 5 F 4 0 8 A D的 片 内 高 精 度 R / C时 钟 模 块 在一 2 O ~6 5℃ 的温 漂 为 ±0 . 6 % 高精 度 石 英 晶振 在 一 2 0 ~7 O ℃ 的频 率稳 定性 为 ±2 . 5 ~ ±3 0 p p m ( p p m 为 百万 分 之 一 ) 。 在 本 设 计 中 , 对 定 时 的 精 准 要 求 较 高 , 因此 选 用 1 2 M t t z的 外 部 时 钟 电 路产 生主 时钟 ( F o s c )。
# d e i f n e T 0 x 3 c b 0
7 4 L S 2 4 5 配合单片机 的四个 I / O 端 口的方式 , 实现动态显示 。
提示模块 提示 模 块 由 一个 5 V电磁 式 有 源 蜂 鸣器 、一 个P N P型 三 极 管 和 一 个 电阻 组 成 。 电路 中 电 阻 起 限 流 保 护

传输,合理选着该端 口信号 ,可 以简化 P C B布线 。 显示 部分 使用 4位 L E D数码 管,前 两位 显示 分钟数 ,
后 两位 显 示 秒 数。为 了节 省硬 件 成 本, 设计 中采 用 一个
2 一 1 2XM
( 2 )
本设计 中只使 到定 时器 T O ,其初始 化代码 如下:
S T C 1 5系 列 单 片 机 采 用 8 T C Y 5 超 高速 C P U内 核 , 在 相 同 的 时钟 频率 下,速度又 比 S T C早 期 l T系 列 单 片 机 ( 如S T C 1 2 系 列 、S T C 1 1系 列 、 8 T C I O系 列 ) 的 速 度 快 2 0 % ,能 更快地
M :— Fo

1 2 s c / / f 、 2 一 T 1
( 1 )
收发器 ,可双 向传输 数据 。当 片选 端 / C E低 电平有 效时 ,
D I R =“ O , _ ,


信 号 由 B向 A传 输 ; D I R :“ i ” ,信 号 由 A向 B
定时器 T 0初值:
相关文档
最新文档