单片机课设数码管计时器

合集下载

单片机设计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. 功能测试:经过多次测试,计时器功能稳定可靠,能够实现计时、暂停和复位功能。

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

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

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

二、实训内容本次实训设计一款基于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单片机定时器/计数器功能实现计时功能,了解了中断编程的基本方法。

单片机课程设计_基于单片机的数字秒表设计

单片机课程设计_基于单片机的数字秒表设计

单片机课程设计_基于单片机的数字秒表设计在当今科技迅速发展的时代,电子设备的应用无处不在,其中数字秒表作为一种常见的计时工具,具有广泛的应用场景,如体育比赛、科学实验、工业生产等。

本次课程设计旨在基于单片机技术实现一个数字秒表,通过对硬件电路的设计和软件程序的编写,掌握单片机系统的开发流程和方法,提高实践动手能力和解决问题的能力。

一、设计要求1、能够实现秒表的启动、暂停、复位功能。

2、计时精度达到 001 秒。

3、能够通过数码管显示计时结果。

二、系统方案设计1、硬件设计单片机选型:选用常见的 STC89C52 单片机作为核心控制器,其具有性能稳定、价格低廉、易于编程等优点。

显示模块:采用 8 位共阴极数码管作为显示器件,通过动态扫描的方式实现数字的显示。

按键模块:设置三个独立按键,分别用于启动、暂停和复位操作。

时钟模块:使用单片机内部的定时器/计数器产生精确的时钟信号,实现计时功能。

2、软件设计主程序:负责系统的初始化、按键扫描和计时处理等。

中断服务程序:利用定时器中断实现 001 秒的定时,更新计时数据。

三、硬件电路设计1、单片机最小系统包括单片机芯片、晶振电路和复位电路。

晶振频率选择 12MHz,为单片机提供时钟信号。

复位电路采用上电复位和手动复位相结合的方式,确保系统能够可靠复位。

2、显示电路将 8 位数码管的段选引脚通过限流电阻连接到单片机的 P0 口,位选引脚通过三极管连接到单片机的 P2 口。

通过动态扫描的方式,依次点亮每个数码管,实现数字的显示。

3、按键电路三个按键分别连接到单片机的 P10、P11 和 P12 引脚,采用低电平有效。

当按键按下时,相应引脚的电平被拉低,单片机通过检测引脚电平的变化来判断按键的操作。

四、软件程序设计1、主程序流程系统初始化后,进入主循环。

在主循环中,不断扫描按键状态,如果检测到启动按键按下,则启动计时;如果检测到暂停按键按下,则暂停计时;如果检测到复位按键按下,则将计时数据清零。

单片机课程设计计时器

单片机课程设计计时器

单片机课程设计计时器一、课程目标知识目标: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课时)教学内容与课本紧密关联,遵循科学性和系统性原则,确保学生能够掌握单片机计时器设计的全过程。

单片机课程设计-篮球计时器

单片机课程设计-篮球计时器

绪论篮球比赛中除了有总时间倒计时外,为了加快比赛的节奏,规则还要求进攻方在24秒内有一次投篮动作,否则视为违例。

以下为一个篮球比赛计时器,该计时器采用按键操作、数码管显示,非常实用。

此计时器也可作为其他球类比赛的计时器。

本课程设计介绍了一个基于单片机的篮球比赛计时器硬件设计,包括STC89C51, 2个八段共阳数码管显示、上电复位电路、时钟发生电路等基本模块的设计。

其功能土要有:一场篮球比赛共分四节,每节12分:每次进攻为24秒,计时器的显示均为倒计时方式,24秒计时用两位数码管显示;所有的计时都要具有暂停、继续、复位;当球员的持球时间超过24秒时,24秒倒计时减为零且有蜂鸣器报警提示。

本次课程设计是采用单片机C语言实现倒计时24秒篮球比赛计时器。

1系统工作原理1.1 功能说明随着信息时代的到来,电子技术在社会生活中发挥着越来越重要的作用,运用模电和数电知识设计的电子产品成为社会生活中不可缺少的一部分。

在篮球比赛中,规定了球员的持球时间不能超过24秒,否则就犯规了。

大多数篮球计时器的主控芯片为AT89C51,采用12MHz 晶振,P0.0-P0.7作数码显示端。

24秒计时开始,A3为24秒复位开启键(投篮或交换控球时按下此键);A4为24秒计时停止键(有违例时按下此键); A5为24秒计时启动键;A6为总复位键。

而此次我们设计的是1个简易篮球比赛计时器。

最简单的篮球球计时器是24秒倒计时计时器。

也就是本次课程设计的课题。

24秒篮球计时器要求设置外部操作开关,控制计数器的直接复位、启动和暂停,并且计时电路递减计时,每隔1秒钟,计时器减1,当计时器减0时,显示器上显示00,同时发出蜂鸣器报警信号。

1.2基本原理24秒计时器的总体参考方案框图如图1所示,它包括秒脉冲发生器、计数器、译码显示电路、报警电路和辅助时序控制电路等五个模块组成。

其中计数器和控制电路是系统的主要模块。

计数器完成24秒倒计时功能,而控制电路完成计数器的直接复位、启动技术、暂停以及连续计数、译码显示电路的显示与灭灯、定时时间到报警等功能。

AT89C51单片机LED数字倒计时器—课程设计

AT89C51单片机LED数字倒计时器—课程设计

课题: AT89C51单片机LED数字倒计时器专业:班级:学号:姓名:指导教师:设计日期:成绩:重庆大学城市科技学院电气学院目录一、设计目的作用 (3)二、设计要求 (3)三、设计的具体实现 (3)1、设计原理 (3)(1)系统设计方案 (3)(2)功能模块 (4)(3)工作原理: (4)2、系统设计 (4)(1)显示模块 (4)(2)晶振模块 (5)(3)复位电路: (5)(4)按键模块: (6)(5)报警模块: (7)3、系统实现 (7)(1)实物图 (7)(2)分析 (8)四、总结 (8)五、附录 (9)附录1: (9)附录2: (10)附录3: (10)六、参考文献 (17)LED数字倒计时器设计报告一、设计目的作用1、掌握51单片机最小系统的设计;2、掌握按键电路设计、LED数码管的使用;3、掌握C51的编程方式。

二、设计要求基于AT89C51单片机的LED数字倒计时器主要具有如下功能,具体要求如下:1、LED数码管显示倒计时时间。

2、倒计时过程中能设置多个闹钟,当倒计时值倒计到设定值时会发出2s 的报警声音。

(K1设置小时,K2设置分钟,K3设置秒钟,K4完成退出)3、通过按键可以对倒计时设定处置。

倒计时初值范围在24:00:00~00:00:60之间,设置成功后复位初始值为成功设定值。

三、设计的具体实现1、设计原理(1)系统设计方案:基于AT89C51单片机的数码管显示模块显示的倒计时器。

主要是以单片机来控制,用按键来设定倒计时初始时刻的值,数码管作为显示模块来显示剩余的时间。

此电路对于倒计时器中的LED数码管示器来说,采用以软件为主的接口方法,即不使用专门的硬件译码器,而采用软件程序进行译码。

晶振模块图1 LED 数字倒计时器设计框图(2)功能模块:倒计时器的总体包括显示电路,按键电路,复位电路,晶振电路和报警电路等五个模块。

显示模块显示计数与灭灯,复位模块控制电路完成计数的直接清零,暂停/连续技术,用按键模块来设定倒计时初始时刻的值,报警模块实现定时时间到报警等功能。

基于单片机的倒计时器(计数器)课程设计)

基于单片机的倒计时器(计数器)课程设计)

目录目录 (1)摘要 (3)ABSTRACT (4)第一章设计要求与方案确定 (5)1.1设计意义 (5)1.2设计要求 (5)1.3方案确定 (5)第二章硬件电路 (6)2.1单片机概述 (6)2.1.1 单片机基础 (6)2.1.2单片机与单片机系统 (7)2.1.3 单片机的产生与发展 (7)2.2MCS-51系列单片机介绍 (8)2.2.1 80C51 芯片介绍 (8)2.2.3 最小系统 (9)2.2.4 定时与中断的概念 (10)2.4LED显示电路设计与器件选择 (12)2.4.1.LED显示器的选择 (13)2.4.2LED驱动芯片选择 (13)2.5按键电路设计 (13)2.6蜂鸣器电路的设计 (14)第三章倒计时器的设计 (15)3.1倒计时器系统设计方案及框图 (15)3.2程序设计 (15)3.2.1主程序设计 (15)3.2.2倒计时模块设计 (17)3.2.3键盘扫描数码管显示程序 (17)第四章倒计时器设计仿真 (18)4.1设置倒计时初值 (18)4.2开始倒计时 (18)4.3倒计时结束并报警 (18)总结 (20)参考文献 (21)致谢 (22)附录1 倒计时器设计源程序 (23)附录2 所用元器件清单 (23)摘要近年来随着计算机在社会领域的渗透,单片机的应用正在不断的走向深入,同时带动传统控制检测日新月异更新。

在实时控制和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及针对具体应用对象特点的软件结合,以作完善。

本系统由单片机系统、矩阵式键盘、蜂鸣器和LED数码管显示系统组成。

装置利用AT89C51单片机与74LS245驱动器驱动LED数码管显示。

通过按键控制设定倒计时时间,再通过中断控制系统开始倒计时。

当倒计时时间到时,由P1.0口驱动蜂鸣器发声报警。

为了简化电路,降低成本,采用以软件为主的的接口方法。

单片机设计倒计时器

单片机设计倒计时器

单片机设计倒计时器在我们的日常生活中,倒计时器有着广泛的应用,比如体育比赛、烹饪、考试等等。

通过单片机来设计倒计时器,不仅能够实现精准的计时功能,还能根据不同的需求进行灵活的定制和扩展。

接下来,让我们一起深入了解一下如何用单片机设计一个实用的倒计时器。

首先,我们需要明确倒计时器的基本功能和要求。

一般来说,倒计时器应该具备以下几个主要功能:1、设定倒计时的时间,时间范围可以根据实际需求进行调整,比如从几分钟到几小时。

2、能够清晰地显示剩余的时间。

3、具有启动、暂停和复位等操作按钮。

4、在倒计时结束时,能够发出提示信号,比如声音或者灯光提示。

为了实现这些功能,我们选择合适的单片机作为核心控制单元。

常见的单片机如 51 系列、STM32 系列等都可以满足需求。

以 51 单片机为例,它具有价格低廉、编程简单、资源丰富等优点。

在硬件设计方面,我们需要以下几个主要的组件:1、单片机最小系统:包括单片机芯片、晶振电路、复位电路等,为单片机的正常运行提供必要的条件。

2、显示模块:可以选择数码管或者液晶显示屏(LCD)来显示倒计时的时间。

数码管显示简单直观,适用于对显示效果要求不高的场合;LCD 显示屏则能够提供更丰富的信息显示,比如同时显示时间、日期等。

3、按键模块:用于输入操作指令,如设置时间、启动、暂停、复位等。

4、报警模块:可以使用蜂鸣器或者发光二极管(LED)在倒计时结束时发出提示信号。

下面我们来详细介绍一下各个模块的设计和实现。

单片机最小系统的设计是整个硬件系统的基础。

晶振电路为单片机提供时钟信号,保证其正常运行的时序。

复位电路则在系统出现异常时,能够将单片机恢复到初始状态。

对于显示模块,如果选择数码管,需要通过驱动芯片(如74HC595)来控制数码管的显示。

如果选择 LCD 显示屏,则需要根据显示屏的接口类型(如并行接口或串行接口)来进行相应的连接和编程。

按键模块可以采用独立按键或者矩阵按键的方式。

51单片机4位数码管秒表代码

51单片机4位数码管秒表代码

主题:51单片机4位数码管秒表代码内容:1. 介绍51单片机51单片机是一种通用的单片机系列,广泛应用于各种电子设备中。

它具有稳定性好、成本低、易于编程等优点,因此备受电子爱好者和专业工程师的青睐。

2. 4位数码管秒表4位数码管秒表是一种常见的电子计时器,通过LED数码管显示出当前的时间,可以用于各种计时应用,比如比赛计时、实验计时等。

3. 代码编写以下是一段简单的51单片机4位数码管秒表代码:```c#include <reg52.h>#include <intrins.h>// 数码管位选端口sbit wei1 = P2^2;sbit wei2 = P2^3;sbit wei3 = P2^4;sbit wei4 = P2^5;// 数码管显示段选端口sbit se2 = P0^2;sbit se1 = P0^3;sbit se4 = P0^4;sbit se3 = P0^5;unsigned char code smgduan[17] = {0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71,0x00}; // 显示0~9,A,b,C,d,E,F,无的值void delay(unsigned int i) { // 延时while(i--);}void display(unsigned char *tab) { // 数码管显示 unsigned char i;for(i=0; i<7; i++) {P0=0; // 清除段选,以选中所显示的数码管 switch(i) { //确定位选case(0):wei1=0;wei2=wei3=wei4=1;break;case(1):wei2=0;wei1=wei3=wei4=1;break;case(2):wei3=0;wei1=wei2=wei4=1;break;case(3):wei4=0;wei1=wei2=wei3=1;break;default:break;}P0=tab[i]; //段码输出delay(5); // 数码管微秒级延迟}}void m本人n() {unsigned char a=0,b=0,c=0,d=0; //时钟的4位数据 unsigned int i=0;wei1=wei2=wei3=wei4=1; //段选、位选初始化while(1) {a++; // 微秒级的计数if(a==100) { //达到100a=0; b++; //b加1if(b==60) { //当b=60时b=0; c++; //c加1if(c==60) { //当c=60时c=0; d++; //d加1if(d==24) { //当d=24时d=0; //归零}}}}display(smgduan+d10); //显示个秒wei1=1;wei2=wei3=wei4=0; //位选delay(500); //延时display(smgduan+c/10+10); //显示十秒wei2=1;wei1=wei3=wei4=0; //位选delay(500); //延时display(smgduan+b10); //显示个分wei3=1;wei1=wei2=wei4=0; //位选delay(500); //延时display(smgduan+b/10+10); //显示十分wei4=1;wei1=wei2=wei3=0; //位选delay(500); //延时if(i++==200) { //当i=200时i=0;}}}```4. 代码分析该代码通过对51单片机的引脚进行控制,实现了4位数码管秒表的计时功能。

单片机计时器实训报告

单片机计时器实训报告

一、前言随着科技的不断发展,单片机技术在我国得到了广泛的应用。

为了提高我国单片机技术人才的综合素质,我们学校特开设了单片机实训课程。

本次实训,我们以设计一个单片机计时器为课题,通过实际操作,加深对单片机原理及编程的理解,提高我们的动手能力和团队协作能力。

二、实训目的1. 掌握单片机的基本原理和编程方法;2. 学会使用单片机外围设备,如数码管、按键等;3. 提高动手能力和团队协作能力;4. 熟悉单片机在实际工程中的应用。

三、实训内容1. 计时器硬件设计(1)单片机选择:本次实训选用STC89C52单片机作为核心控制单元。

(2)数码管显示:选用共阴型4位数码管,用于显示计时器的计时值。

(3)按键控制:选用4个轻触开关,分别控制计时器的开始、暂停、复位功能。

(4)时钟电路:选用晶振作为时钟源,产生稳定的时钟信号。

2. 计时器软件设计(1)主程序:负责初始化硬件资源、扫描按键、处理按键事件、更新数码管显示等。

(2)计时功能:通过定时器中断,实现计时器的计时功能。

(3)按键处理:根据按键事件,控制计时器的开始、暂停、复位功能。

(4)数码管显示:根据计时器的计时值,更新数码管显示。

四、实训步骤1. 硬件制作:根据设计图纸,焊接电路板,安装元器件。

2. 硬件调试:检查电路连接是否正确,测试电路功能。

3. 软件编写:使用C语言编写程序,实现计时器功能。

4. 软件调试:在单片机上编译、烧录程序,测试程序功能。

5. 集成调试:将硬件和软件结合,进行整体调试。

五、实训成果1. 成功设计并实现了一个单片机计时器。

2. 掌握了单片机的基本原理和编程方法。

3. 学会了使用单片机外围设备,如数码管、按键等。

4. 提高了动手能力和团队协作能力。

六、心得体会1. 通过本次实训,我对单片机技术有了更深入的了解,认识到理论知识与实际操作相结合的重要性。

2. 在实训过程中,我学会了如何查阅资料、解决问题,提高了自己的自学能力。

3. 在团队协作方面,我学会了如何与他人沟通、分工合作,提高了自己的团队协作能力。

单片机课程设计秒倒计时

单片机课程设计秒倒计时

单片机课程设计秒倒计时概述在单片机课程设计中,秒倒计时是一个常见的实践项目。

本文将介绍如何使用单片机设计一个简单的秒倒计时电路,并使用Markdown文本格式进行说明。

硬件设备•单片机(例如STC89C52)•七段数码管•按钮•电阻、电容等基础元器件功能设计本文设计的秒倒计时电路具有以下功能: 1. 系统上电后,自动开始倒计时; 2. 使用按钮控制启动/暂停倒计时; 3. 使用按钮控制归零操作; 4. 显示倒计时的秒数。

硬件连接七段数码管将7个IO口分别连接到七段数码管的对应引脚,使用共阳极数码管时,将数码管的共阳极引脚连接到VCC,使用共阴极数码管时,将数码管的共阴极引脚连接到GND。

按钮使用一个按钮作为启动/暂停倒计时的按键,使用另一个按钮作为归零操作的按键。

将按钮引脚连接到单片机的GPIO口,并通过上拉电阻将按钮引脚连接到VCC。

软件设计引脚定义首先,需要定义单片机的输入输出引脚。

根据硬件连接,假设七段数码管的引脚分别连接到P0口,启动/暂停按钮连接到P1.0口,归零按钮连接到P1.1口。

可以使用以下代码进行引脚定义:// 引脚定义sbit LED = P0; // 七段数码管连接到P0口sbit KEY1 = P1^0; // 启动/暂停按钮连接到P1.0口sbit KEY2 = P1^1; // 归零按钮连接到P1.1口然后,需要设计倒计时的逻辑。

在每个时钟周期,需要判断是否需要启动/暂停倒计时,以及是否需要进行归零操作。

具体的倒计时逻辑可以使用以下代码实现:// 秒倒计时逻辑void countdown() {static unsigned int seconds = 60; // 倒计时的秒数,默认为60秒static bit running = 0; // 表示倒计时是否运行中,默认为停止状态if (running) {if (seconds > 0) {seconds--;} else {running = 0;}}if (KEY1 == 0) { // 按下启动/暂停按钮running = !running;delay(10); // 延时去抖动}if (KEY2 == 0) { // 按下归零按钮seconds = 60;running = 0;delay(10); // 延时去抖动}}最后,需要设计显示倒计时的逻辑。

三位数字显示计时定时器课程设计

三位数字显示计时定时器课程设计

三位数字显示计时定时器课程设计一、引言计时定时器是一种常见的电子设备,它能够准确地显示时间并进行定时操作。

本文将介绍一种以三位数字显示的计时定时器的课程设计方案,通过这个课程设计,学生将学习到数字显示、定时器控制等相关知识。

二、设计目标本次课程设计的目标是设计一个以三位数字显示的计时定时器,能够实现精确的时间显示和定时操作。

具体要求如下:1. 使用三位数的数码管进行显示,能够显示小时、分钟和秒数;2. 能够通过按钮进行时间的设置和调整;3. 能够进行定时操作,到达设定时间后能够触发相应的提示或动作。

三、硬件设计1. 数码管:使用三位数的数码管进行显示,每位数码管能够显示0-9的数字。

2. 按钮:使用按钮进行时间的设置和调整,包括设置小时、分钟和秒数。

3. 定时器:使用定时器芯片进行定时操作,能够精确计时,并能够触发相应的提示或动作。

四、软件设计1. 数字显示:通过控制数码管的引脚,将需要显示的数字发送到数码管上进行显示。

2. 时间设置:通过按钮进行时间的设置和调整,包括设置小时、分钟和秒数。

3. 定时操作:使用定时器芯片进行定时操作,到达设定时间后触发相应的提示或动作。

五、实验步骤1. 连接硬件:将数码管、按钮和定时器芯片连接到单片机开发板上。

2. 编写代码:使用合适的编程语言编写程序,实现数字显示、时间设置和定时操作的功能。

3. 调试程序:将程序下载到单片机开发板上,进行调试,确保各个功能正常运行。

4. 测试功能:通过设置不同的时间和定时操作,测试程序的功能是否符合设计要求。

5. 优化设计:根据测试结果对程序进行优化,提高其稳定性和可靠性。

六、实验效果经过实验,我们成功实现了以三位数字显示的计时定时器。

通过按钮可以设置时间,并且能够精确显示当前的时间。

在设定的时间到达后,定时器能够触发相应的提示或动作,实现了定时操作的功能。

七、实验总结通过本次课程设计,学生掌握了数字显示、时间设置和定时操作等相关知识。

单片机实验报告二-数码管显示实验

单片机实验报告二-数码管显示实验

单片机实验报告二-数码管显示实验摘要:本实验使用单片机控制数码管的显示,在实验过程中通过学习单片机的GPIO口的编程,调试程序、调节电路来达到正确的显示效果。

最终按照要求实现了单片机控制数码管的计数器。

关键词:单片机、数码管、GPIO口、计数器一、实验介绍数码管是一种介于机械仪表和液晶显示器之间的电子显示器件,广泛应用于计时器、计数器、仪表等电子产品中。

本实验旨在通过单片机控制数码管的显示来加深对GPIO口的使用和调试程序的理解,同时了解数码管的原理。

本实验主要分为两部分:数码管显示基础实验和数码管控制开关实验。

通过这两部分的实验可以了解数码管的工作原理和单片机的基本控制方式。

二、实验原理2.1 数码管的基本原理数码管显示器将数字显示为一组符号,例如“0”到“9”。

表示不同数字的符号被编码成一个数字码。

七段数码管用一个七段数码字母来表示数字,如下表所示:| 数字 | a | b | c | d | e | f | g || ---- | - | - | - | - | - | - | - || 0 | 1 | 1 | 1 | 1 | 1 | 1 | 0 || 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 || 2 | 1 | 1 | 0 | 1 | 1 | 0 | 1 || 3 | 1 | 1 | 1 | 1 | 0 | 0 | 1 || 4 | 0 | 1 | 1 | 0 | 0 | 1 | 1 || 5 | 1 | 0 | 1 | 1 | 0 | 1 | 1 || 6 | 0 | 0 | 1 | 1 | 1 | 1 | 1 || 7 | 1 | 1 | 1 | 0 | 0 | 0 | 0 || 8 | 1 | 1 | 1 | 1 | 1 | 1 | 1 || 9 | 1 | 1 | 1 | 1 | 0 | 1 | 1 |通过控制数码管的七个LED灯的亮灭,可以实现不同符号显示。

单片机 秒表计时器 课程设计8

单片机 秒表计时器 课程设计8

单片机秒表计时器课程设计8-CAL-FENGHAI.-(YICAI)-Company One1一.设计题目:秒表计时器二.设计目的1.进一步加深对MCS-51单片机内部结构和程序设计方法的理解。

2.提高综合运用MCS-51单片机的软硬件进行程序设计的能力。

三.总体设计1.所能实现的功能:1)计时,计时数值最大为99分59秒99;2)停止或继续;3)清零。

2.总体设计方案:用LED数码管显示计时的时间,显示的时间应有百分之一秒位、十分之一秒位、秒个位、秒十位、分个位、分十位;利用单片机的外中断,某键为低时产生中断开始计时,再一次为低时产生中断停止计时;另一键为低时产生中断使时间清0。

四.硬件系统设计1.所需设备:DICE-5013S实验系统一个,并行接口8155一个,PC微机(P4)一台。

2.接线设计:1)将接到按钮开关1上,作为STOP中断;2)外部中断0的引脚INT0接按钮开关2,作为CLEAR中断。

五.软件系统设计1.软件功能模块设计及流程图先利用计时中断产生百分之一秒基时,将百分之一秒位、十分之一秒位、秒个位、秒十位、分个位、分十位分别存于片内RAM地址79H,7AH,7BH,7CH,7DH,7EH中,再由主程序显示程序将其显示在LED显示器上;开始/继续通过STOP中断对进行取反,然后在计时中断中对输入口的位进行判断来实现;清零通过在清零中断中设置各位初值来实现。

YN计时中断程序流程图:电路图:2.程序清单和注释;秒表计时源程序ORG 0000HAJMP MAINORG 0003HAJMP CLEAR ;停止或开始计时ORG 000BHAJMP START ;计时中断ORG 0013HAJMP STOP ;清零中断MAIN: MOV TMOD,#01HMOV IE, #87HMOV TL0, #78HMOV TH0, #0ECHSETB TR0SETB IT0SETB IT1MOV R4, #00H ;1/100秒置初值MOV R3, #00H ;秒置初值MOV R2, #00H ;分置初值MOV 79H, #00H ;1/100秒位置初值MOV 7AH, #00H ;1/10秒位置初值MOV 7BH, #00H ;秒位置初值MOV 7CH, #00H ;十秒位置初值MOV 7DH, #00H ;分位置初值MOV 7EH, #00H ;十分位置初值SETBDISP: MOV SP,#5FHMOV A,#03HMOV DPTR,#0FF20HMOVX @DPTR,ADISP4: MOV R5,#01HMOV R0,#79HMOV A,R5LD0: MOV DPTR,#0FF21HMOVX @DPTR,AMOV DPTR,#0FF22HMOV A,@R0ADD A,#0EHMOVC A,@A+PCMOVX @DPTR,AACALL DLAYINC R0MOV A,R5JB ,LD1RL AMOV R5,AAJMP LD0LD1: SJMP DISP4DB 0C0H,0F9H,0A4H,0B0H,99H,92HDB 82H,0F8H,80H,90H,88H,83H,0C6HDB 0A1H,86H,8EH,0FFH,0CH,89HDB 0C8H,0C1H,7FH,0BFHDLAY: MOV R7,#02HDL1: MOV R6,#0FFHDL2: DJNZ R6,DL2DJNZ R7,DL1RETSTART: MOV TL0, #78HMOV TH0, #0ECHPUSH ACCJNB ,NEXT ;为0则返回不计时INC R2MOV A, R2MOV B, #10DIV ABMOV 7AH, AMOV 79H, BCJNE R2, #100, NEXT ;1/100秒到100则秒加一MOV R2, #00HMOV 79H, #00HMOV 7AH, #00HINC R3MOV A, R3MOV B, #10DIV ABMOV 7CH, AMOV 7BH, BCJNE R3, #60, NEXT ;秒到60则分加一MOV R3, #00HMOV 7BH, #00HMOV 7CH, #00HINC R4MOV A, R4MOV B, #10DIV ABMOV 7EH, AMOV 7DH, BCJNE R4, #100, NEXT ;分到100则还原MOV R4, #00HMOV 7DH, #00HMOV 7EH, #00HNEXT: POP ACCRETICLEAR: MOV R2, #00H ;计时器清零MOV R3, #00HMOV R4, #00HMOV 79H,#00HMOV 7AH,#00HMOV 7BH,#00HMOV 7CH,#00HMOV 7DH,#00HMOV 7EH,#00HRETISTOP: CPL ;停止或开始RETIEND六.调试:电路连接正确,运行成功后,获得老师通过。

单片机课程设计 基于数码管的电子钟

单片机课程设计 基于数码管的电子钟

摘要AT89S52单片机是一款应用广泛、功能强大的八位单片机。

本设计是由单片机AT89S52作为核心,通过单片机使电子钟具有调节显示时分秒的功能,电子钟是一种利用数字电路来显示秒、分、时的计时装置,与传统的机械钟相比,它具有走时准确、显示电子钟直观、无机械传动装置等优点。

它的计时周期为24小时,显示满刻度为23时59分59秒,另外应有校时功能。

本设计在原来电子钟的基础上,增加了年月日显示、闹铃、整点提示等功能。

使用时S8键为控制键,控制运行的调时,S4键为翻页查看键,S5、S6、S7键为调时状态下的控制键,分别为减一、加一、移格功能。

关键词电子钟;单片机;定时;闹铃;ABSTRACTAT89S52 SCM is a eight bit microcontroller of wided applicationan and powerful. Core’s this design is by monolithic AT89S52 SCM . it has adjust display by that electric clock.electric clock is a device that use of digital circuit to display seconds, points and the timer. compare of the tradition, , display electric clock intuitive, no mechanical transmission device etc. its timing cycle be for 24 hour, the full scale is hour of 23,minutes of 59, second of 59, another reset function is also the function. The foundation of clock display year month day and other functions. S8 keys control tone. S4 keys scroll view. On the state of adjust, S5、S6、S7control functions of minus one,plus one, move lattice function.Key words :electronic clock; single-chip; timing;alarm目录。

单片机数码管秒表程序

单片机数码管秒表程序

单片机数码管秒表程序
数码管秒表是一种常见的计时工具,它利用单片机控制数码管的显示来实现计时功能。

下面我将为大家介绍一种基于单片机的数码管秒表程序。

程序的实现思路如下:首先,我们需要使用单片机的定时器来实现时间的计数。

通过设置定时器的计数周期和中断处理函数,我们可以在每个固定的时间间隔内进行一次计数。

然后,我们需要将计数的结果通过数码管进行显示。

为了方便显示,我们可以将计数结果分为小时、分钟和秒三个部分,分别显示在数码管的不同位上。

程序的具体实现步骤如下:
1. 初始化单片机的定时器,并设置计数周期为1秒。

2. 设置一个全局变量来保存计数的结果,初始值为0。

3. 在定时器的中断处理函数中,每次中断时将计数结果加1。

4. 在主函数中,设置一个循环来不断检测计数结果的变化,并将其转换为时、分、秒的形式。

5. 将转换后的时、分、秒分别显示在数码管的不同位上,通过控制数码管的引脚来实现。

通过以上步骤,我们就可以实现一个简单的数码管秒表程序。

当程序运行时,数码管会不断地显示计时结果,从0开始递增,以秒为单位。

当需要停止计时时,可以通过外部按键等方式来暂停或重置计数结果。

这种数码管秒表程序可以广泛应用于各种计时场景,比如运动比赛、实验计时等。

它的实现简单、成本低廉,并且可以精确地显示时间,非常实用。

希望通过以上介绍,大家对基于单片机的数码管秒表程序有了更深入的了解。

希望这个简单的程序能够帮助大家更好地实现计时功能,提高工作和学习的效率。

谢谢大家!。

单片机控制8位数码管显示秒表课程设计

单片机控制8位数码管显示秒表课程设计

长沙学院《单片机原理及应用》课程设计说明书题目 LED数码管显示电子秒表设计系(部) **系专业(班级) *************姓名邹部长9931学号******指导教师***起止日期 2016.12.19—2016.12.24《单片机原理及应用》课程设计任务书1系(部):**系专业:******长沙学院课程设计鉴定表目录摘要 (5)第一章概述 (6)1.1电子秒表的设计要求 (6)1.2电子秒表的电路图 (6)1.3电子秒表的设计原理及方案 (7)第二章电子秒表的程序设计 (8)2.1 程序设计流程图 (8)2.2程序设计源代码 (10)第三章程序的调试 (16)第四章设计总结 (17)参考文献 (18)摘要随着经济与社会的发展对智能化和信息化技术要求的不断提高,单片机作为智能控制的核心,逐渐渗透到社会生产和生活的各个方面。

而本文则主要阐述基于单片机设计的数码管秒表,这次设计所采用的的单片机为stc89c52单片机,数码管则是使用2个4位共阴LED数码管组成的8位。

为减少I/O口,而使用了SM74HC138 和74HCT573这2片芯片实现数码管显示8位数据。

利用单片机内部定时器实现计时功能,分别显示为:分—秒—0.01秒。

控制则是使用一键控制,可实现计时开始,计时暂停,计时清零3个功能的循环。

本次的程序设计采用C语言编写,包括显示程序,定时中断服务程序,延时程序。

最后在单片机电路板来观察工作状态。

第一章概述1.1电子秒表的设计要求○1显示要求在初始状态显示的是00—00—00,最左边的2位显示分钟,中间2位显示秒,左边2位显示十分之一秒和百分之一秒,还有个2个LED数码管只显示中间那一段,用作间隔符。

○2然后还的有一个键用来控制秒表,要求按第一下开始计时,按第二下暂停计时,按第三下清零,以此往复循环控制。

○3使用单片机T0方式实现计时0.01秒。

1.2电子秒表的电路图1.3电子秒表的设计原理及方案设计原理根据单片机本身的定时计数器实现1秒的计时。

单片机,电子秒表计时器.

单片机,电子秒表计时器.

课程设计说明书课程名称:?单片机技术?设计题目:电子秒表计时器院〔部〕:电子信息与电气工程学院学生姓名:学号:专业班级:指导教师:2021年 5月 17日课程设计任务书设计题目电子秒表计时器学生姓名电子信息与电专业、年级、班所在院部气工程学院设计要求:用 AT89S52 设计一个 3 位的 LED 数码作为“秒表〞。

利用单片机的定时器、计数器定时和记数的原理,结合显示电路、LED 数码管以及按键来设计计时器。

将软、硬件有机的结合起来,使得系统能够正确的进行加计时,数码管能够正确的显示时间,显示时间为 0.0-99.9 秒,每 0.1 秒自动加 1,另外设计一个“开始〞键、一个“复位〞键、一个“停止〞键和一个翻页键。

秒表可单独分别计时,且最多可计 5次。

学生应完成的工作:1、通过单片机原理课程设计,了解单片机应用系统的根本设计方法,设计步骤,熟悉和掌电路参数的计算。

2、设计多个方案,进行论证比较选出最优方案。

3、通过查阅手册和文献资料,提高自己分析和解决实际问题的能力与技巧。

4、进一步熟悉软件的正确使用方法,原理图设计。

5、认真撰写课程设计总结报告。

6、本次设计我主要负责软件设计局部。

参考文献阅读:[1]张毅刚 .单片机原理及应用 .北京:高等教育出版社,[2]杜树春.单片机C语言和汇编语言混合编程实例详解.北京:北京航空航天大学出版社,[3]谢嘉奎 .电子线路〔第四版〕 .北京 :高等教育出版社, 2004.[4]臧春华 .电子线路设计与应用 .北京 :高等教育出版社 ,2005.工作方案: 5 月 7 日:听老师关于此次设计要求及流程的讲座。

5 月 8 日:查阅相关资料,拟定方案。

5月 9 日— 10 日:确定硬件方案并论证。

5 月 11 日:进行软件编程,画出硬件电路图并进行仿真和调试。

5月 14 日— 16 日:焊接并调试。

5月17 日:写课程设计报告。

5月18 日:交课程设计报告及实物。

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

第1章设计方案 (1)1.1 设计目的 (1)1.2 设计要求 (1)1.3 设计原理 (1)第2章硬件设计 (2)2.1 器件说明 (2)2.1.1 51单片机简述 (2)2.1.2 DS12C887实时时钟芯片简介 (4)2.1.3 MAX7219共阴极数码管显示驱动芯片简介 (6)2.2 硬件构造说明 (7)2.2.1复位及震荡电路 (8)2.2.2 时间获取电路 (8)2.2.3 显示驱动电路 (9)第3章软件设计 (10)3.1 软件设计简要思路 (10)3.2 时间获取及定时计数器程序 (11)3.2.1定时/计数器初值计算 (11)3.2.2 计数运算程序 (11)3.3 显示驱动程序 (12)3.4利用数码管显示的倒计时装置设计程序 (14)3.5 软件调试仿真 (18)3.5.1 系统调试工具keil C51 (18)3.5.2 系统调试工具PROTEUS (19)第4章课程设计总结 (20)致谢 (21)参考文献: (22)1.1 设计目的本次课程设计的主要概况是了解单片机控制15秒倒计时的过程与MAX7219基本工作原理及软件设计方法,是利用时钟芯片和定时计数器的原理将倒计时过程显示在MAX7219芯片驱动的八位共阴LED数码管上;最后应用Profassional软件设计,仿真基于AT89c51单片机的倒计时实验。

以到达进一步熟悉和掌握单片机的结构及工作原理;掌握单片机的接口技术及相关外围芯片的外特性与控制方法;掌握以单片机核心的电路设计的基本方法和技术;通过实际程序设计和调试,逐步掌握模块化程序设计方法和调试技术以及通过完成一个包括电路设计和程序开发的完整过程,了解开发一单片机应用系统的全过程,为今后从事相应开发打下基础的目的。

1.2 设计要求STC12C5A60S2(引脚排序及基本功能同AT89S51)作为主控芯片,设计利用数码管显示的倒计时时间装置。

一是扩展DS12C887时钟电路设计;二是利用MAX7219驱动LG3641AH(或同型号共阴极)数码管,显示倒计时剩余时间;三是在倒计时时间减为零以后,进行加1时间显示。

1.3 设计原理在单片机获取DS12C887时钟芯片中的秒时间后,进行数据处理和驱动MAX7219芯片驱动数码管完成显示倒计时功能。

2.1 器件说明2.1.1 51单片机简述AT89C51是一种带4K字节FLASH存储器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低电压、高性能CMOS 8位微处理器,俗称单片机。

AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。

单片机的可擦除只读存储器可以反复擦除1000次。

该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。

由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。

AT89C 单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

AT89C51引脚说明:图2.1 AT89C51引脚分布图VCC:供电电压。

GND:接地。

P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。

当P0口的管脚第一次写1时,被定义为高阻输入。

P0能够用于外部程序数据存储器,它可以被定义为数据/地址的低八位。

在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须接上拉电阻。

P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。

P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。

在FLASH编程和校验时,P1口作为低八位地址接收。

P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。

并因此作为输入时,P2口的管脚被外部拉低,将输出电流。

这是由于内部上拉的缘故。

P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。

在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。

P2口在FLASH编程和校验时接收高八位地址信号和控制信号。

P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。

当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。

作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。

P3口也可作为AT89C51的一些特殊功能口,如表2.2所示:P3口同时为闪烁编程和编程校验接收一些控制信号。

RST:复位输入。

当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。

ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的低位字节。

在FLASH编程期间,此引脚用于输入编程脉冲。

在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。

因此它可用作对外部输出的脉冲或用于定时目的。

然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。

如想禁止ALE的输出可在SFR8EH地址上置0。

此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。

另外,该引脚被略微拉高。

如果微处理器在外部执行状态ALE禁止,置位无效。

/PSEN:外部程序存储器的选通信号。

在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。

但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。

/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。

注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。

在FLASH 编程期间,此引脚也用于施加12V编程电源(VPP)。

XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。

XTAL2:来自反向振荡器的输出。

2.1.2 DS12C887实时时钟芯片简介DS12C887 能够自动产生世纪、年、月、日、时、分、秒等时间信息,其内部又增加了世纪寄存器,从而利用硬件电路解决子“千年”问题;DS12C887中自带有锂电池,外部掉电时,其内部时间信息还能够保持10年之久;对于一天内的时间记录,有12小时制和24小时制两种模式。

在12小时制模式中,用AM 和PM区分上午和下午;时间的表示方法也有两种,一种用二进制数表示,一种是用BCD码表示;DS12C887中带有128字节RAM,其中有11字节RAM用来存储时间信息,4字节RAM用来存储 DS12C887 的控制信息,称为控制寄存器,113字节通用RAM使用户使用;此外用户还可对DS12C887 进行编程以实现多种方波输出,并可对其内部的三路中断通过软件进行屏蔽。

引脚功能:DS12C887 的引脚排列如图 1 所示,各管脚的功能说明如下:图2.2 DS12C887引脚分布GND、VCC:直流电源,其中VCC接+5V输入,GND接地,当VCC输入为+5V时,用户可以访问DS12C887内RAM中的数据,并可对其进行读、写操作;当VCC的输入小于+4.25V时,禁止用户对内部RAM进行读、写操作,此时用户不能正确获取芯片内的时间信息;当VCC的输入小于+3V时,DS12C887会自动将电源发换到内部自带的锂电池上,以保证内部的电路能够正常工作。

(1)MOT:模式选择脚,DS12C887有两种工作模式,即Motorola模式和Intel模式,当MOT接VCC时,选用的工作模式是Motorola模式,当MOT接GND时,选用的是Intel模式。

本文主要讨论Intel模式。

(23)SQW:方波输出脚,当供电电压VCC大于4.25V时,SQW脚可进行方波输出,此时用户可以通过对控制寄存器编程来得到13种方波信号的输出。

AD0~AD7:复用地址数据总线,该总线采用时分复用技术,在总线周期的前半部分,出现在AD0~AD7上的是地址信息,可用以选通DS12C887内的RAM,总线周期的后半部分出现在AD0~AD7上的数据信息。

(14)AS:地址选通输入脚,在进行读写操作时,AS的上升沿将AD0~AD7上出现的地址信息锁存到DS12C887上,而下一个下降沿清除AD0~AD7上的地址信息,不论是否有效,DS12C887都将执行该操作。

(17)DS/RD:数据选择或读输入脚,该引脚有两种工作模式,当MOT接VCC时,选用Motorola工作模式,在这种工作模式中,每个总线周期的后一部分的DS为高电平,被称为数据选通。

在读操作中,DS的上升沿使DS12C887将内部数据送往总线AD0~AD7上,以供外部读取。

在写操作中,DS的下降沿将使总线AD0~AD7上的数据锁存在DS12C887中;当MOT接GND时,选用Intel工作模式,在该模式中,该引脚是读允许输入脚,即Read Enable。

(15)R/W:读/写输入端,该管脚也有2种工作模式,当MOT接VCC时,R/W工作在Motorola模式。

此时,该引脚的作用是区分进行的是读操作还是写操作,当R/W为高电平时为读操作,R/W为低电平时为写操作;当MOT接GND时,该脚工作在Intel模式,此时该作为写允许输入,即Write Enable。

(13)C——S——:片选输入,低电平有效。

(19)I——R——Q——:中断请求输入,低电平有效,该脚有效对DS12C887内的时钟、日历和RAM中的内容没有任何影响,仅对内部的控制寄存器有影响,在典型的应用中,RESET可以直接接VCC,这样可以保证DS12C887在掉电时,其内部控制寄存器不受影响。

2.1.3 MAX7219共阴极数码管显示驱动芯片简介MAX7219是美国MACIM(美信)公司生产的串行输入/输出共阴极显示驱动器。

它采用了3线串行接口, 传送速率达到10M数据,能驱动8位七段数字型的LED显示也可以连接条线图显示器或者64个独立的LED。

其上包括一个片上的B型BCD编码器、多路扫描回路,段字驱动器,而且还有一个8*8的静态RAM用来存储每一个数据。

只有一个外部寄存器用来设置各个LED的段电流。

MAX7219允许用户对每一个数据选择编码或者不编码。

整个设备包含一个150μA的低功耗关闭模式,模拟和数字亮度控制,一个扫描限制寄存器允许用户显示1-8位数据,还有一个让所有LED发光的检测模式。

相关文档
最新文档