单片机30秒倒计时1

更新时间:2023-11-02 21:30:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

陕西理工学院课程设计

基于单片机30秒倒计时设计

宋溪宽

(陕理工物理与电信工程学院电子信息科学与技术专业电信XX班,陕西汉中 723001)

指导教师:宋卫星

[摘要] 本设计由硬件设计和软件设计两部分组成,总电路如图1所示,硬件设计主要包括单片

机芯片选择,数码管选择及晶振,电容,电阻等元器件的选择及其参数的确定;软件设计主要是实现30秒倒计时程序的编写,包括利用中断实现1秒的定时及30秒的倒计时。

[关键词] 芯片 晶振 电源接口 电容 排阻 电阻 数码管 电解电容 蜂鸣器 发光二极管

Design of Based on single chip 30 seconds countdown

Song Xikuan

(Grade06,Class2,Major Electronic Information Science and Technology,Physics Dept.,Shaanxi

University of Technology,Hanzhong 723000,Shaanxi)

Tutor:Song Weixing

Abstract : The two part of the design from the hardware design and software composition, The

total circuit as shown in Figure 1, the hardware design mainly includes single chip digital tube selection, selection and crystal, capacitors, resistors and other components selection and parameters determine the; software design is mainly 30 seconds to achieve the countdown program, including the use of interrupt a second time and 30 second countdown.

Key words :chip crystal oscillator power interface capacitance exclusion resistance of

electrolytic capacitor buzzer LED digital tube

陕西理工学院课程设计

目 录

引言 .................................................................................................................................................. 2

1 基本硬件电路 ................................................................................................................... 2

1.1 AT89C51的芯片概述 ......................................................................................... 2 1.2 AT89C51主要特性 ............................................................................................... 2 1.3 LED数码管显示器概述 .................................................................................... 2

2 软件设计方法 ................................................................................................................... 3

2.1 定时/计数器初值计算 ..................................................................................... 3

3 软件调试过程 ................................................................................................................... 4

3.1 系统调试工具keil C51.................................................................................. 4 3.2 系统调试工具PROTEUS .................................................................................... 4

4 元器件清单 ........................................................................................................................ 5

附录1 .................................................................................................................................... 6 附录2 .................................................................................................................................... 6

第 1 页 共 9 页

陕西理工学院课程设计

引言

数字显示30秒定时器是一个简单的数字电路,然而它可以扩展到很多实际应用当中来,比如篮球倒计时器,交通灯倒计时器等。随着数字技术的发展,定时器产品不断推陈出新,适应不断发展的市场需求。现今的 产品因质量优良、使用方便、功能齐全、样式美观、实用性强、经久耐用等优点,而满足了如今市场的各种需求。

1 基本硬件电路

1.1 AT89C51的芯片概述

AT89C51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89S52可为许多嵌入式控制应用系统提供高性价比的解决方案。AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。 其工作电压在4.5-5V,一般我们选用+5V电压。外形及引脚排列如图1所示 :

1.2 AT89C51主要特性

图1:AT89C51的核心电路框图

1.3 LED数码管显示器概述

本设计中采用的是7SEG–MPX2 –CA型号7段共阳数码管,它是一种半导体发光器件,

第 2 页 共 9 页

陕西理工学院课程设计

其基本单元是发光二极管。实物如图2所示:

图2 7SEG–MPX2–CA型号数码管

程序框图

2 软件设计方法

2.1 定时/计数器初值计算

第 3 页 共 9 页

陕西理工学院课程设计

(1)本电路应用TIMER0 MODE 16位计数器的计时中断法。 (2)12M的晶振每秒可以产生1M个机器周期,1秒等于1000000微秒,而每一计时脉冲是1微秒,因此需输入100000个计时脉冲,方可达到1秒的时间。本设计中,设定中断每次溢出时间50ms。

(3)由上式得知,循环20次即可达到1秒定时,即: N=t/Tcy=0.05s/0.000001=5000 X=65536-5000=15536=3CB0H

(4)由上式得知5000个脉冲,首先需设定TL0=3CH,TH0=0B0H,此时第1次只要输入5000个脉冲输入,就会溢出;第2次至第20次,则需每1000000个计时脉冲,定时1秒。

(5)上电时,显示30,开始倒数计时按下开关实现复位。

3 软件调试过程

3.1 系统调试工具keil C51

Keil C51 仿真器是一款利用KEIL C51 的IDE 集成开发环境作为仿真环境的廉价仿真器,是利用SST公司具有IAP功能的单片机SST89C58制作而成,主要是利用了SST89C58的IAP功能,所谓IAP功能是In application program 的英文缩写,是在应用编程的意思,通俗一点讲就是:它可以通过串口将用户的程序下载到单片机中,可以通过串口对单片机进行编程。它之所以具有这种功能,实际上它有两块程序flash区,其中一块flash中运行的程序可以更改另外的一块程序flash区中的程序,正是利用这一特性才用它作成了仿真器,我们把仿真器的监控程序事先烧入SST89C58,监控程序通过SST89C58的串口和PC通讯,当使用KEIL C51的IDE环境仿真时,用户的程序通过串口被监控程序写入flash程序区中,当用户设置断点等操作仿真程序时,flash程序中的用户程序也在相应的更改,从而实现了仿真功能 。

调试的主要方法 : 1. 启动Keil c51

2. 新建一个工程。Project菜单—〉New project ,选择好我们要保存的文件夹后,键入Frist 保存。接着弹出CPU类型选择框,我们选择最常用的AT89C51,按确定。

3. 在工程中加入文件。新建一个文件,文件菜单File—〉New,我们再选择:文件菜单File—〉Save As? (另存为)弹出 对话框后,我们文件名框中键入First.c(注意文件后缀名是 .ASM)保存.ASM文件建好啦。现在我们把文件加入到工程中去。 点击Target 1前面的+号,右键单击Source Group 1—〉选择Add Files to Group,Source Group 1,选择添加 Add。编译运行,检查程序是否有错误。

3.2 系统调试工具PROTEUS

Proteus是一款EDA软件,该软件具有模拟电路仿真,数字电路仿真,单片机以及外围电路组成的系统的仿真,RS-232动态仿真,I2C调试器,SPI调试器,键盘和LCD系统的仿真,以及各种虚拟仪器,如示波器,逻辑分析仪,信号发生器等。该软件目前支持的单片机类型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列、ARM以及各种外围芯片。该软件还支持大量的存储器和外围芯片,所以,该软件是一款集单片机和SPICE分析于一身的仿真软件。

调试方法:首先用Keil软件将C编译成HEX文件,打开Keil软件,新建一个文档,输入C程序,保存成C格式文件,然后新建工程,连接单片机为AT89C51,选择Options for target,选择OUTPUT子菜单,在Create HEX Fi前打钩,DeBug子菜单中,Settings选择ProteusVSM Simulator,USE前打钩,再次运行文件,成功后在目录下会生成HEX文件,打开Proteus软件,或直接点击DSN文件,双击单片机模板,点击文件夹式样的图标选择对应的HEX驱动文件,然后点击开始,进行调试。

第 4 页 共 9 页

本文来源:https://www.bwwdw.com/article/y552.html

Top