单片机单脉冲计数设计讲解

单片机单脉冲计数设计讲解
单片机单脉冲计数设计讲解

新疆农业大学机械交通学院

《单片机技术与应用》

课程设计说明书

题目:定时脉冲计数器电路设计

专业班级:电气092班

学号:

学生姓名:

指导教师:

时间: 2012年6月

设计9、定时脉冲计数器电路设计

小组成员:

任务分配如下:

四人:调研、查找资料

:整合资料、硬件电路组成框图

:各单元电路及工作原理、绘制原理图(原理仿真)

:元件参数计算、元件清单列表(元件参数)(该篇论文侧重点):绘制程序流程图、汇编程序

四人:程序仿真(整体Proteus和Keil)

四人:调试与仿真

四人:硬件搭建调试

:设计说明书

目录

1 设计目的 (1)

2 设计内容 (1)

3 设计过程 (1)

3.1 硬件电路框图 (1)

3.2 搜集元件资料 (2)

3.3 各个单元及电路原理 (3)

3.4 绘制原理图 (5)

3.5 元件参数计算 (6)

3.6 元件清单列表 (10)

3.7 绘制程序流程图 (10)

3.8 汇编程序 (10)

3.9 调试与仿真 (11)

3.10 硬件调试结果 (12)

4 心得体会 (12)

参考文献 (13)

定时脉冲计数器电路设计

1设计目的

课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.随着科学技术发展的日新日异,单片机已经成为当今计算机应用中空前活跃的领域,在生活中可以说得是无处不在。因此作为二十一世纪的大学来说掌握单片机的开发技术是十分重要的。通过典型实际问题的实际,训练学生的软硬件的综合设计、调试能力以及文字组织能力,建立系统设计概念,加强工程应用思维方式的训练,同时对教学内容做一定的扩充。

2设计内容

以小组为单位用AT89C51单片机的定时/计数器产生1 s的定时时间,作为秒计数时间,当1 s产生时,秒计数器加1:秒计数器到60时,自动复位从0开始。要求:(1)用LM7805CT设计交流220 V转5 V直流电源。

(2)用单片机AT89C51的定时器实现60 s计时。

(3)用PROTEUS设计,仿真基于AT89C51单片机的60 s计时实验。

(4)用面包板搭建设计电路,实际运行调试。

3 设计过程

3.1 硬件电路框图

根据实验要求,结合已有的元件绘制实验框图(图3-1)

图3-1 实验框图

实验框图大体上可以分为晶振电路、复位电路、单片机、驱动电路、及电源电路五个部分:

晶振电路:为单片机提供时钟信号。

复位电路:当需要复位时,为单片机提供复位信号。 驱动电路:为了驱动负载,本实验中负载为共阳极数码管。 电源电路:为整个系统提供电源。

单片机:系统的核心部分,用于运行用户程序,实现控制目的。 3.2 搜集元件资料 (1)AT89C51(图3-2) 基本参数:

晶振电路

复位电路

单 片

电源电路

驱动电路

共阳极数

磁芯尺寸:8bit

输入/输出数:34

程序存储器大小:64 KB

EEPROM存储器容量:2 KB

存储器容量, RAM:256 Byte

处理器速度:60 MHz

振荡器类型:External

计时器数:3

周边设备:Timer, PWM

接口:SPI, UART

PWM通道数:5

电源电压范围:2.7V to 5.5 V

工作温度范围:-40°C to +85°C

工作温度最低:-40°C

工作温度最高:85°C

封装形式:VQFP

针脚数:44

位数:8位

存储器容量:64 KB

存储器类型:闪存

定时器位数:16

封装类型:管装

接口类型:UART

电源电压最大:5.5 V 电源电压最小:2.7 V

微处理器/控制器特点:80C52兼容, 2048字节启动ROM, 1792字节XRAM, POR, PFD, ISP, SPI

图 3-2 AT89C51管脚图

(2)共阳极数码管

共阳极数码管(图3-3),电流:静态时,10-15 mA;动态时,16/1动态扫描时,平均电流为4-5 mA,峰值电流50-60 mA。平时使用时,不能让LED一直工作在最大额定值。所以正向电流IF小于最大额定值(一般是30 mA)。根据常识可以知道,电流大,LED发光强,但消耗的功率大。电流小,LED发光小,消耗的功率小。通常电路用LED 是做指示用途,电路的总体功耗要控制,不能都消耗在指示灯上,当然还要考虑电源的功率要满足后面电路功耗的要求,并且最好要有富裕。所以这个LED的正向电流选取

20 mA,正向压降为3.3 V。

图3-3 共阳极数码管

(3)7407驱动器

7407同相驱动器,用于放大功率,从而驱动数码管点亮。

图 3-4 7407封装图图 3-5 7407逻辑图

3.3 各个单元电路及工作原理

(1)220 V转5 V直流电源电路(图3-6)

电源电路采用LM7805集成稳压器作为稳压器件,用典型接法,220 V交流电源整流滤波后送入LM7805稳压,在输出端接一个电容进一步滤除纹波,得到5 V直流稳压电源。

图3-6 220V转5V直流电源原理图

(2)晶振电路

图 3-7晶振电路

晶振电路(图 3-7)是给单片机提供工作信号脉冲的,这个脉冲就是单片机的工作速度。比如 12 MHz晶振,单片机工作速度就是每秒 12 MHz,和电脑的 CPU概念一样,当然,单片机的工作频率是有范围的,不能太大.一般 24 M就不上往了,不然不稳定。

(3)复位电路

复位电路(图 3-8),在单片机启动0.1 S后,电容C两端的电压持续充电为5 V,这是时候电阻两端的电压接近于0 V,RST处于低电平所以系统正常工作。当按键按下的时候,开关导通,这个时候电容两端形成了一个回路,电容被短路,所以在按键按下

的这个过程中,电容开始释放之前充的电量。随着时间的推移,电容的电压在0.1 S内,从5 V释放到变为了1.5 V,甚至更小。根据串联电路电压为各处之和,这个时候电阻两端的电压为3.5 V,甚至更大,所以RST引脚又接收到高电平,单片机系统自动复位。而且,随着Vcc电压由0V增加到5V,电容C3的上极板电位随之增加,电容的内电场增强,使C3能吸引更多的电子通过R1到达下极板,从外面看就电流通过C3 和R1入地。按电压在随着电流方向逐惭降低的原则,电流的出现会在R1端形成一大于0的电位。由于电容的充电逐渐饱和,所以电流会逐渐减小,电位也会逐渐减小。该电位的大小和持续的时间将直接影响到我们的系统能否上电复位。

图 3-8 复位电路

(4)数码管显示驱动电路

图 3-9 驱动电路

驱动电路(图 3-9),当系统输出低电平时,低电平信号经驱动器功率放大驱动共阳极数码管点亮,显示不同的数字,电阻起限流作用防止电流过大。单片机输出低电平时的电流为1.6 mA的灌电流,数码管的驱动电流为20 mA,用7407功率放大器匹配的驱动电流,7047的额定电流为40 mA大于20 mA,符合要求。

3.4 系统原理图的绘制

把以上各个电路图按照逻辑关系组合起来,接在单片机上就形成原理图(图

3-10)。

图 3-10 系统原理图

3.5 元件参数计算

(1)晶振电路的电容选择

图 3-11 晶振电路与单片机连接部分

图(3-11)中:

XTAL1(19 脚):芯片内部振荡电路输入端。

XTAL2(18 脚):芯片内部振荡电路输出端。

XTAL1 和XTAL2 是独立的输入和输出反相放大器,它们可以被配置为使用石英晶

振的片内振荡器,或者是器件直接由外部时钟驱动。图中采用的是内时钟模式,即采用利用芯片内部的振荡电路,在XTAL1、XTAL2 的引脚上外接定时元件(一个石英晶体和两个电容),内部振荡器便能产生自激振荡。一般来说晶振可以在1.2 ~ 12 MHz 之间任选,甚至可以达到24 MHz 或者更高,但是频率越高功耗也就越大。51系列单片机常用11.0592 MHz 的晶振设计,因为它能够准确地划分成时钟频率,与UART(通用异步接收器/发送器)量常见的波特率相关,特别是较高的波特率(19600,19200),不管多么古怪的值,这些晶振都是准确,常被使用的。故本实验套件中采用的11.0592 MHz 的石英晶振,而和晶振并联的两个电容的大小对振荡频率有微小影响,可以起到频率微调作用。当采用石英晶振时,根据经验电容可以在20 ~ 40pF 之间选择(本实验套件使用30pF )。

(2)复位电路(图3-12)的参数计算

图3-12 复位电路

注:以下计算选用的AT89C51的系统电压为5 V ,晶振为11.0529 MHz (计算时以12 MHz 计算),高电平复位。

根据AT89C51的规格技术资料,如果当AT89C51 Rest Pin (复位输入端)有两个机器周期的时间是高电平,那么系统就会被复位,

震荡频率震荡周期1

=

12*震荡周期机器周期=

所以对于采用12 MHz 晶振时,使系统复位的时间t 应大于

us M t 212*121

*

2==

两个机器周期的时间求出来了,由AT89C51是规格书中关于其DC 特性的描述中可

以知道,当Rest Pin 上的电压超过Min=0.7Vcc 时Rest Pin 就会认为是高电平。事先假设的系统电压为5 V ,Vcc 在这里可以看成5 V ,所以如果Rest Pin 上的电压超过0.7Vcc=3.5 V ,就可以看成Rest Pin 为高电平,如果这超过3.5 V 的电平持续时间超过2 us ,那么系统就会复位。

最后一步就是计算RST_H 处的电位了。不考虑流入Rest Pin 内电流,该电路就是一阶RC 电路。电容两端暂态电流与电压的关系式如下:

()()()()[]

RC

t

C C C C U U U t U -

+

∞-+∞=e

因为()V U C 5=∞;()V U C 00=+;所以

设Rest Pin 电压为()t U R ,那么:

()()t U V t U C CC R -= 所以,

()RC

t R t U -

=5e

, 当()V t U R 4.3=的时,

RC t 357.0=

当且仅当 us RC t 2357.0≥=时,系统才会复位,即满足条件。 所以用R =1 K Ω、C =22 μF 符合要求。 (3)驱动电路参数计算

电源5 V ,数码管正向压降为3.3 V ,正向电流最大额定值(一般是30 mA ),静态时,10-15 mA ,其值小于7407输出低电平电流40 mA ,限流电阻R 满足:

Ω=-=.3113015.0/)3.35(R

故取R =200Ω符合要求。 (4)电源电路中的参数确定

()RC

t

C t U -

-=5e

5

图 3-12 电源电路

变压器后面由4个二极管组成一个桥式整流电路(图3-12),整流后就得到一个电压波动很大的直流电源,所以在这里接一个电解电容C1在这个电路中,三端稳压器后面接一个电容C2,这个电容有进一步滤波和阻尼作用,使最终得到平滑的直流5 V 电压 。

7805芯片电压输出电压为标准的5 V ,应此选7805作为电源稳压芯片,78系列的稳压集成块的极限输入电压是36V ,最低输入电压比输出电压高3-4V 。还要考虑输出与输入间压差带来的功率损耗,所以一般输入为9-15 V 之间。取LM7805的输入端电压为10 V 。

变压器二次侧电压的有效值 V U U 1.1119

.00

==

考虑到变压器二次侧绕组及管子上的压降,变压器的二次侧电压大约要高10%,即

V 2.2121.111.11=?

V U RM 8.2172.2122=?=

单片机及其他芯片引脚最大灌电流之和约为100 mA ,所以,流经二极管的平均电流

mA mA I I L D 050012

1

21=?==

因此,可选择2C251D 整流二极管(其允许的最大电流If=150 mA ,最大反向电压

VRM=100V )。

变压器变比138

.217220

≈=

K 二次侧电流的有效A I 11.09

.01

.0==

取变压器的效率η=0.95

变压器的容量VA UI S 415.108.11.022.12/=÷?==η 选择容量为20 V A 的变压器。

一般滤波电容的设计原则是,取其放电时间常数R L C 是其充电周期的确3~5倍。对于桥式整流电路,滤波电容C 的充电周期等于交流周期的一半,即

2

53C R L T

)~(≥

其中 Ω==

10005

.05L R ,s f T 02.01

==

令uF T 400R 2/4C L =?≥ 取C=500 uF 。

为了使输出的电压的脉动更小,可在LM7805CT 之前并联一个1000 uF 的滤波电容,构成π形滤波器。

3.6 元件清单列表

根据原理图,汇总元件清单列表(表3-1)

表 3-1 元件清单列表

名称数量

AT89C51单片机1片

7407芯片3片

共阳极数码管2个

100KΩ电阻1个

200Ω电阻14个

30pF陶瓷电容2个

20uF电解电容1个

触电开关1个

12MHz晶振1个

220-30变压器1个

二极管整流桥1个

电解电容2个

7805芯片1个

导线若干

3.7绘制程序流程图

程序流程图由小组其他成员绘制。

3.8汇编程序

SECOND EQU 30H

TCOUNT EQU 31H

ORG 00H ;开始

START: MOV SECOND,#00H

MOV TCOUNT,#00H

MOV TMOD,#01H ;T1工作在方式0,T0工作在方式1

MOV TH0,#(65536-50000) / 256 ;送50ms初值3CB0H

MOV TL0,#(65536-50000) MOD 256

SETB TR0 ;定时器TR0启动DISP: MOV A,SECOND ;数码管十位数字显示MOV B,#10

DIV AB

MOV DPTR,#TABLE

MOVC A,@A+DPTR

MOV P1,A

MOV A,B ;数码管个位数字显示

MOVC A,@A+DPTR

MOV P2,A

WAIT: JNB TF0,WAIT ;等待定时器T0中断CLR TF0 ;清除中断标志位

MOV TH0,#(65536-50000) / 256 ;重装1ms初值

MOV TL0,#(65536-50000) MOD 256

INC TCOUNT

MOV A,TCOUNT

CJNE A,#20,NEXT ;等待计时1s

MOV TCOUNT,#00H ;重新计时1s

INC SECOND

MOV A,SECOND

CJNE A,#60,NEX ;等待计时60次

MOV SECOND,#00H ;重新计60次NEX: LJMP DISP

NEXT: LJMP WAIT

TABLE: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H END

3.9调试与仿真

1.首先用Keil软件将程序编译成HEX文件。

AT89C51单片机设计的音乐倒数计数器

塔里木大学《单片机原理与外围电路》课程论文基于单片机设计的音乐倒数计数器 姓名:古再丽努尔·阿卜来提 学号: 5021212125 班级:通信工程16-1

摘要:单片机技术是一门不可或缺的技术,对我们将来的工作以及生活和学习都有很密切的联系。近年来,随着电子技术和微机计算机的迅速发展,单片机的档次不断提高,其应用领域也在不断的扩大,已在工业控制、尖端科学、智能仪器仪表、日用家电、汽车电子系统、办公自动化设备、个人信息终端及通信产品中得到了广泛的应用,成为现代电子系统中最重要的智能化的核心部件。 单片机由CPU、一定容量的RAM和ROM构成,定时、计数和多种接口于一体的微控制器。它体积小,成本低,功能强,广泛应用于智能产业和工业自动化上。而51系列单片机是各单片机中最为典型和最有代表性的一种。这次课程设计通过对它的学习、应用,从而达到学习、设计、开发软、硬的能力。 本设计利用AT89C51单片机结合字符型LCD显示器设计一个简易的倒数计数器。用4个按键操作来设置当前想要倒计数的时间。做一小段时间倒计数,当倒计数为0时,则发出一段音乐声响,通知倒计数终了,该做应当做的事。应用Proteus的ISIS软件和Keil uVision3来实现该计数器的设计与仿真。该方法仿真效果真实、准确,节省了硬件资源。 该多功能计数器可以应用于一般的生活和工作中,也可以通过改装,提高性能,增加新功能,从而给人们的生活和工作带来更多的方便。 关键词:AT89C51,计数器,键盘控制,LCD显示,protues,Keil 。

目录 1绪论 (4) 1.1课题背景及研究意义 (4) 1.2国内外现状 (4) 1.3课题的设计目的 (4) 1.4课题的主要工作 (4) 2系统概述 (5) 2.1方案论证 (5) 2.2系统设计原理 (5) 3系统硬件设计 (5) 3.1主控电路设计 (5) 3.2LCD液晶显示器接口电路设计 (6) 4系统软件设计 (6) 4.1主程序设计 (6) 4.2硬件调试 (8) 4.3仿真结果 (16) 结论 (16) 参考文献 (17) 系统整体电路.......................................................................................... 错误!未定义书签。全部程序清单. (8) - III -

对外部脉冲计数系统的设计计数器课程设计(单片机)

湖南工业大学 课程设计 资料袋 理学学院(系、部)2012 ~ 2013 学年第 1 学期 课程名称单片机应用系统指导教师周玉职称副教授学生姓名张思远专业班级电子科学102 学号 题目对外部脉冲计数系统的设计 成绩起止日期2013 年01 月06 日~2013 年01 月10 日 目录清单 湖南工业大学 课程设计任务书 2012 —2013 学年第1 学期

理学院学院(系、部)电子科学专业102 班级 课程名称:单片机应用系统 设计题目:对外部脉冲计数系统的设计 完成期限:自2013 年01 月06 日至2013 年01 月10 日共 1 周 指导教师(签字):年月日 系(教研室)主任(签字):年月日

附件三 (单片机应用系统) 设计说明书 (题目) 对外部脉冲计数系统的设计 起止日期:2013 年01 月06 日至2013 年01 月10 日学生姓名张思远 班级电子科学102 学号 成绩 指导教师(签字) 电气与信息工程学院 2012年12 月10 日 一、设计任务: 1.1 外部脉冲自动计数,自动显示。 1.1.1设计一个255计数器:0-255计数,计满后自动清0,重 新计数(在数码管中显示)。 1.1.2设计一个50000计数器:0-50000计数,计满后自动清0, 重新计数(在数码管中显示)。 注:要求首先采用PROTEUS完成单片机最小系统的硬件电路 设计及仿真;程序仿真测试通过后,再下载到单片机实训 板上执行。

二、硬件设计介绍: ※STC89C52单片机; ※6位共阴或者共阴极数码管; ※外部晶振电路; ※ISP下载接口(In system program,在系统编程); ※DC+5V电源试配器(选配); ※ISP下载线(选配) ※6个PNP(NPN)三极管 ※12个碳膜电阻 三、硬件设计思路 方案一:五个1位7段数码管,无译码器 方案二:五个1位7段数码管,译码器 方案三:1个6位7段数码管,译码器 方案四:1个6位7段数码管,无译码器 考虑实际中外围设备、资金、单片机资源利用率、节省端口数量,可实行性以及连接方便等问题,采用6为数码管(共阳或者共阴极)由于实际中没买到6位的,采用2个三位数码管并接组合一个6位数码管形式;由于实际P口驱动能力有限,故采用6位三极管增大驱动能力,已便足以使得6位数码管亮度明显正常工作,增加6个电阻限流保护数码管不被烧坏。让数码管a-g7段分别接P1.6—P1.0,6位位选分别接P2.5—P2.0。 方法一:共阴极数码管 硬件图1.0所示:通过npn管放大后,段选高电平有效,位选低电平有效 图1.0共阴极数码管硬件原理图 方法二:共阳极数码管 原理图如图2.0:段选低电平有效,位选低电平有效(通过pnp管连接,不再是高电平有效了,由于特意此接法,共阳极共阴极数码管只是差别段选控制,为程序修改提供极大的方便之处,故程序只需要修改段选地址即可,实现共阳极共阴极互换) 图2.0共阳极数码管硬件原理图 三、程序设计思路: 由于设计是255和50000计数器,对于计数器工作模式二,TL最大值为255,可以实现对255计数,但是对于50000得另寻他路,为了建立不限制计数器模型,改进程序的可更改性可移植性可读行,对计数器模式二另TL1=0FFH(以

51单片机的光电计数器电路设计原理

51单片机的光电计数器电路设计原理 1.前言 21世纪是信息时代,获取信息,处理信息,运用信息。传感与检测技术的重要性在于它是获得信息并对信息进行必要处理的基础技术,是获取信息和处理加工信息的手段,无法获取信息则无法运用信息。 传感与检测技术是一门知识面广、综合程度高、实用性很强的专业课程。它从传感器的基本理论入手,着重讲叙传感器的结构与感测原理,传感器是一个二端口的装置,不同的传感器输入-输出特性不同,同一传感器适应不同的被测信号呈现的特性也有所不同。尤其当被测信号为静态信号时两种状态下,传感器的输入-输出特性完全不同。感测技术在许多新技术、新器件里都有应用,在课程安排上,以信息的传感、转换、处理为核心,从基本物理概念入手,阐述热工量、机械量、几何量等参数的测量原理及方法。 光电式传感器是将光信号转化为电信号的一种传感器。它的理论基础是光电效应。这类效应大致可分为三类。第一类是外光电效应,即在光照射下,能使电子逸出物体表面。利用这种效应所做成的器件有真空光电管、光电倍增管等。第二类是内光电效应,即在光线照射下,能使物质的电阻率改变。这类器件包括各类半导体光敏电阻。第三类是光生伏特效应,即在光线作用下,物体内产生电动势的现象,此电动势称为光生电动势。这类器件包括光电池、光电晶体管等。光电效应都是利用光电元件受光照后,电特性发生变化。敏感的光波长是在可见光附近,包括红外波长和紫外波长。 本课题利用AT89C51单片机,探讨一种简易光电计数器的设计思路。 2光电计数器的系统设计 2.1系统硬件设计 2.1.1方案选择 由于单片机所具有的特性,它特别适用于各种智能仪器仪表,家电等领域中,可以减少硬件以减轻仪表的重量,便于携带和使用,同时也可能低存本,提高性能价格之比。

基于单片机的计数器设计

湖南科技大学 单片机课程设计 题目基于单片机的计数器设计 姓名李建雄 学院机电工程学院 专业测控技术与仪器 学号09030303 指导教师戴巨川 成绩

二〇一二年六月二日 摘要 本设计是根据我们所学习的单片机课程,按照课程要求进行的课程检验。单片机技术是一个不可或缺的技术,尤其是对于我们测控技术与仪器专业来说它是我们必须要掌握的技能之一,使我们未来工作和生活的根本。现在的社会是一个信息科技高速发展的社会,也是一个电子技术和微机计算机迅速发展的时代,单片机的档次和水平在不断的提高,其应用的领域和X围也越来越广,成为现代电子系统中最重要的智能化核心部分。 随着计数器技术的不断发展与进步,计数器的种类越来越多,应用的X围越来越广,随之而来的竞争也越来越激烈。过硬的技术也成为众多生产厂商竞争的焦点之一。厂商为了在竞争中处于不败之地,从而不断地改进技术,增加产品的种类。 现计数器的种类以增加到:电磁计数器、电子计数器、机械计数器(拉动机械计数器、转动机械计数器、按动机械计数器、测长机械计数器)、液晶计数器等。计数器的应用X围也遍布印刷、纺织、印染、针织、电缆、电讯、军工、轻工、机械、开关、断路器、矿山、实行多班制的纺织行业的织布机、织带机、制线、

制带、造纸、制革、薄膜、高压开关电器产品、试验设备,印刷设备、短路器、医疗、纺织、机械、仓库和码头的货运、行人及车辆过往的数量计数、冶金、食品、国防、包装、配料、石油、化工、发电、机床、仪表、自动化控制等行业。 目录 第一章系统的功能要求 (4) 1.1系统设计的要求及主要内容应解决的问题 (4) 第二章方案论证 (4) 2.1设计方案选择 (4) 2.2设计原理 (5) 第三章系统硬件电路设计 (6) 3.1最小系统设计 (6) 3.2原理图 (9)

单片机脉冲计数器程序汇编

单片机脉冲计数器 1、设计内容 用单片机实现对一路脉冲计数和显示的功能。硬件包括单片机最小系统、LED显示、控制按钮;软件实现检测到显示 2、要求 计数范围0~2000; 脉冲输入有光电隔离整形, 有清零按钮 程序如下: ORG 0000H LJMP MAIN ORG 0003H LJMP 0100H ORG 0013H LJMP 0150H ORG 0050H MAIN: CLR A MOV 30H , A ;初始化缓存区 MOV 31H , A MOV 32H , A MOV 33H , A MOV R6 , A MOV R7 , A SETB EA SETB EX0 SETB EX1 SETB IT0 SETB IT1 SETB PX1 NEXT1: ACALL HEXTOBCDD ;调用数制转换子程序 ACALL DISPLAY ;调用显示子程序 LJMP NEXT1 ORG 0100H ;中断0服务程序 MOV A , R7 ADD A , #1 MOV R7, A MOV A , R6 ADDC A , #0 MOV R6 , A CJNE R6 , #07H , NEXT CLR A MOV R6 , A MOV R7 , A NEXT: RETI

ORG 0150H ;中断1服务程序 CLR A MOV R6 , A MOV R7 , A RETI ORG 0200H HEXTOBCDD:MOV A , R6 ;由十六进制转化为十进制PUSH ACC MOV A , R7 PUSH ACC MOV A , R2 PUSH ACC CLR A MOV R3 , A MOV R4 , A MOV R5 , A MOV R2 , #10H HB3: MOV A , R7 ;将十六进制中最高位移入进位位中RLC A MOV R7 , A MOV A , R6 RLC A MOV R6 , A MOV A , R5 ;每位数加上本身相当于将这个数乘以2 ADDC A , R5 DA A MOV R5 , A MOV A , R4 ADDC A , R4 DA A ;十进制调整 MOV R4 , A MOV A , R3 ADDC A , R3 DJNZ R2 , HB3 POP ACC MOV R2 , A POP ACC MOV R7 , A POP ACC MOV R6 , A RET ORG 0250H DISPLAY: MOV R0 , #30H MOV A , R5

基于单片机的简易计算器设计

2013 - 2014 学年_一_学期 山东科技大学电工电子实验教学中心 创新性实验研究报告 实验项目名称__基于51单片机的简易计算器设计_ 2013 年12 月27 日

四、实验内容

2、实验内容 (一)、总体硬件设计 本设计选用AT89C52单片机为主控单元。显示部分:采用六位LED动态数码管显示。按键部分:采用2*8键盘;利用2*8的键盘扫描子程序,读取输入的键值。 (二)、键盘接口电路 计算器输入数字和其他功能按键要用到很多按键,如果采用独立按键的方式,在这种情况下,编程会很简单,但是会占用大量的I/O 口资源,因此在很多情况下都不采用这种方式,而是采用矩阵键盘的方案。矩阵键盘采用两条I/O 线作为行线,八条I/O 线作为列线组成键盘,在行线和列线的每个交叉点上设置一个按键。这样键盘上按键的个数就为2×8个。这种行列式键盘结构能有效地提高单片机系统中I/O 口的利用率。 矩阵键盘的工作原理: 计算器的键盘布局如图2所示:一般有16个键组成,在单片机中正好可以用一个P口和另一个P口的两个管脚实现16个按键功能,这种形式在单片机系统中也最常用。 矩阵键盘布局图: 矩阵键盘内部电路图如下图所示:

(三)、LED显示模块 本设计采用LED数码显示来显示输出数据。通过D0-D7引脚向LED写指令字或写数据以使LED实现不同的功能或显示相应数据。 (四)运算模块(单片机控制) MCS-51 单片机是在一块芯片中集成了CPU、RAM、ROM、定时器/计数器和多功能I/O等一台计算机所需要的基本功能部件。如果按功能划分,它由如下功能部件组成,即微处理器(CPU)、数据存储器(RAM)、程序存储器(ROM/EPROM)、并行I/O 口、串行口、定时器/计数器、中断系统及特殊功能寄存器(SFR)。 单片机是靠程序运行的,并且可以修改。通过不同的程序实现不同的功能,尤其是特殊的独特的一些功能,通过使用单片机编写的程序可以实现高智能,高效率,以及高可靠性!因此我们采用单片机作为计算器的主要功能部件,可以很快地实现运算功能。

基于单片机脉冲度测量

基于单片机脉冲度测量

————————————————————————————————作者:————————————————————————————————日期:

山东科技大学电工电子实验教学中心创新性实验研究报告 课程名称:单片机原理及应用 实验项目名称脉冲宽度测量 姓名学号_________________ 专业_____________ 班级____________ 指导教师及职称________________________ 开课学期2011 至2012 学年第一学期 提交时间2012 年 1 月 3 日

一、实验摘要 通过采用STC89C52RC单片机为中心器件来设计脉冲宽度测量器,并运用MCS—51/52单片机计数 功能,选择好工作模式,对脉宽进行计数。在现有的单片机仿真机系统上掌握相关软硬件设计与调试 知识,并在计算机上编写汇编程序调试运行。 二、实验目的 (1)基于STC89C52RC单片机测量脉冲宽度; (2)研究分别使用定时计数器0,1 的GATE 模式和定时计数器 2 的捕捉功能完成外部 脉冲宽度测量; (3)通过6位LED显示计数值,时间精确到0.1秒。并熟悉了解试验箱的应用,提高动手能力。 三、实验场地及仪器、设备和材料: 实验场地:J11#324 设备:PC机一台STC89C52RC单片机试验箱一台 教材:1. MCS51/52单片机原理与实践公茂法黄鹤松等编著北京航空航天大学出版 2. 单片机原理及应用张毅刚主编高等教育出版社 3. 其它相关的参考资料及实验教材 四、实验内容 1、实验原理 (1)T0工作方式 通过设置TMOD,使其为定时器模式。在做定时器使用时,将T0定时为0.001S。 当GATE=1时,为门控方式。只有TR0设置为1,且同时外部中断引脚也为高电平时,才能启动T0开始计数工作。 把脉冲信号从P3.2脚引入,T0设为定时器方式工作,并工作在门控方式(GATE=1)。在待测信号高电平期间,T0对内部周期脉冲进行计数。在待测脉冲高电平结束时,其下降沿向P3.2发中断,在外部中断0的中断服务程序中,读取TH0、TL0的计数值,该值就是待测脉冲的脉宽。随后,清零TH0和TL0,以便下一个脉宽的测量。 计算方法:脉冲宽度=计数值*0.01s,将脉冲宽度的数值转换为压缩BCD码,再将压缩BCD码转换为非压缩BCD码用于显示,最后调用显示程序,读取脉冲宽度。

单片机课程设计外部脉冲计数器

目录 摘要:单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能集成到一块硅片上构成的一个小而完善的计算机系统。本课程设计的指导思想是控制单片机实现从0到99的计数功能,其结果显示在两位一体的共阳极数码管上。 关键词:脉冲计数器数码管单片机 本设计基于单片机技术原理,以单片机芯片STC89C52作为核心控制器,通过硬件电路的制作以及软件程序的编制,设计制作出一个计数器,包括以下功能:输出脉冲,按下键就开始计数,并将数值显示在两位一体的共阳极数码管上。 1课题原理 PCB板上设置开始计数按键和清零按键,以上按键与89C52单片机的P1口连接,通过查询按键是否被按下来判断进行计数或者清零。若按下计数健,则单片机控制两位一体的共阳极数码管显示从00开始的数字,按下一次,则数字加一,一次类推;若按下清零键,则程序返回程序开始处,并且数码管显示00。

2 硬件及软件设计 2.1 硬件系统 2.1.1 硬件系统设计 此设计是在单片机最小系统的基础上进行开发和拓展,增加了按键电路和和数码管显示电路,由于单片机输出电流不足以驱动数码管发光,所以数码管需要驱动电路。我们采用了三极管对数码管电流进行放大,使电流大小达到要求值。 2.1.2 单元电路设计 基本框架如下图2.1 2.1基本框架

1.STC89C52芯片 STC89C52RC芯片包括: 8k字节 Flash,512字节RAM, 32位I/O口 线,看门狗定时器,两个数据指针, 三个16位定时器/计数器,一个6向 量2级中断结构,全双工串行口,片 内晶振及时钟电路。STC89C52RC芯片 可降至0Hz静态逻辑操作,时钟频率 0-80MHz,支持2种软件可选择节电 模式。空闲模式下,CPU停止工作, 允许RAM、定时器/计数器、串口、中 断继续工作。掉电保护方式下,RAM 内容被保存,振荡器被冻结,单片 机一切工作停止,直到下一个中断或 硬件复位为止。8位微控制器8K字节 在系统可编程。芯片如图2.4所示。 图2.4 STC89C52芯片 2.按键电路 K1键为启动键,K2键为清零键,K3键为计数键,通过按钮的连接,实现开始、计数清零功能,连接电路如图2.5所示。 图2.5 按键电路

基于单片机的计数器设计

百度文库- 让每个人平等地提升自我 - 1 - 湖南科技大学 单片机课程设计 题目基于单片机的计数器设计姓名李建雄 学院机电工程学院 专业测控技术与仪器 学号09030303 指导教师戴巨川 成绩 二〇一二年六月二日

百度文库- 让每个人平等地提升自我 - 2 - 摘要 本设计是根据我们所学习的单片机课程,按照课程要求进行的课程检验。单片 机技术是一个不可或缺的技术,尤其是对于我们测控技术与仪器专业来说它是我们必须要掌握的技能之一,使我们未来工作和生活的根本。现在的社会是一个信息科技高速发展的社会,也是一个电子技术和微机计算机迅速发展的时代,单片机的档次和水平在不断的提高,其应用的领域和范围也越来越广,成为现代电子系统中最重要的智能化核心部分。 随着计数器技术的不断发展与进步,计数器的种类越来越多,应用的范围越来越广,随之而来的竞争也越来越激烈。过硬的技术也成为众多生产厂商竞争的焦点之一。厂商为了在竞争中处于不败之地,从而不断地改进技术,增加产品的种类。 现计数器的种类以增加到:电磁计数器、电子计数器、机械计数器(拉动机械计数器、转动机械计数器、按动机械计数器、测长机械计数器)、液晶计数器等。 计数器的应用范围也遍布印刷、纺织、印染、针织、电缆、电讯、军工、轻工、机械、开关、断路器、矿山、实行多班制的纺织行业的织布机、织带机、制线、制带、造纸、制革、薄膜、高压开关电器产品、试验设备,印刷设备、短路器、医疗、纺织、机械、仓库和码头的货运、行人及车辆过往的数量计数、冶金、食品、国防、包装、配料、石油、化工、发电、机床、仪表、自动化控制等行业。

百度文库- 让每个人平等地提升自我 - 3 - 目录 2.2设计原理 (6) 数码管的介绍 ............................................................................................................................... - 11 -3.3电路仿真. (11)

脉冲计数

实验九脉冲计数(定时/计数器实验) 1、实验目的:熟悉单片机内部定时/计数器功能,掌握初始化编程方法。 2、实验内容:把定时器0外部输入的脉冲进行计数,并送显示器显示 3、实验程序框图: 4、实验接线图:

5、实验步骤:P3.4 依次接T0~T7或单脉冲输出孔,执行程序,观察数码管上 计数脉冲的速度及个数。 6、思考:修改程序使显示器上可显示到999999个脉冲个数。 7、程序清单文件名:SW09.ASM;脉冲计数实验 ORG 0000H LJMP SE15 ORG 06E0H SE15: MOV SP,#53H MOV P2,#0FFH MOV A,#81H MOV DPTR,#0FF23H MOVX @DPTR,A ; 1 MOV TMOD,#05H MOV TH0,#00H MOV TL0,#00H SETB TR0 LO29: MOV R2,TH0 MOV R3,TL0 LCALL ZOY0 MOV R0,#79H MOV A,R6 LCALL PTDS MOV A,R5 LCALL PTDS MOV A,R4 LCALL PTDS LCALL SSEE SJMP LO29 ZOY0: CLR A MOV R4,A MOV R5,A MOV R6,A MOV R7,#10H LO30: CLR C MOV A,R3 RLC A MOV R3,A MOV A,R2 RLC A MOV R2,A MOV A,R6 ADDC A,R6 DA A MOV R6,A MOV A,R5 ADDC A,R5 DA A MOV R5,A MOV A,R4 ADDC A,R4 DA A MOV R4,A DJNZ R7,LO30 RET PTDS: MOV R1,A

51单片机计数程序

/**************程序说明********************* 硬件说明只需要将15脚接口接入外部的脉冲信号,15脚为定时器T1的外部信号输入引脚 通过定时器T0定时指定的时间来测取脉冲的个数并在1602液晶上显示出来 假设定时1s则数据变成为信号的频率 *************************************************** *****/ #include #include //定时器0负责定时30s 定时器1负责计数功能 #define uint unsigned int #define uchar unsigned char sbit RS=P2^6; //液晶的电路定义 sbit E=P2^5; unsigned char table[3]; unsigned int t0;

void delay_ms(uint z) //毫秒级延时 { uint x,y; for(x=z;x>0;x--) for(y=110;y>0;y--); } /******液晶部分子程序*************************/ void write_com(unsigned char com) { //操作时序 RS=0; P0=com; delay_ms(5); E=1; delay_ms(5); E=0; } void write_data(unsigned char shuju) { //操作时序

RS=1; P0=shuju; delay_ms(5); E=1; delay_ms(5); E=0; } void LCDintial() { delay_ms(5); E=0; write_com(0x38); write_com(0x0c); write_com(0x06); write_com(0x01); write_com(0x80); } /**********定时器初始化程序***************/ void T0T1_init() { EA=1;

基于单片机的计数器课程设计资料

课程设计(论文)说明书 题目:计数器 院(系):信息与通信学院 专业:电子信息工程 学生姓名: ******* 学号: ************ 指导教师:唐 * * 职称:讲师 2013 年 12 月 24 日注:论文附有原理图和PCB图。点击下载

摘要 随着计数器技术的不断发展与进步,计数器的种类越来越多,应用的范围越来越广,现计数器的种类以增加到:电磁计数器、电子计数器、机械计数器(拉动机械计数器、转动机械计数器、按动机械计数器、测长机械计数器)、液晶计数器等。 本课设设计的是由AT89S52单片机控制的计数器.通过驱动电路驱动两个共阴数码管进行显示数字。另外,在计数的方式上通过两个轻触开关进行控制是手动计数还是自动计数。在计数过程中可以通过复位按键进行复位,然后在进行下一次的计数。计数范围00~59,进行软件编程是本课设设计的是手动计数时从59开始,没按一次P3^7所接的轻触开关就减一,直到减到00又跳回59依次进行。而当P3^6外接的轻触开关按下一次就进行自动从00~59的加一计数。再按一次数值停止自动,保持显示原数,再按下接着进行自动计数。 关键词:单片机;计数器;数码管;

Abstract As technology continues to counter the development and progress, the type of the counter more and more increasingly wide range of applications, in order to counter the kind now: electromagnetic counters, electronic counters, mechanical counters (pulling mechanical counter, counter rotating machinery , pressing the mechanical counter, length measuring mechanical counter), LCD counters. This course is designed to set up controlled by the microcontroller AT89S52 counter through the drive circuit to drive two common cathode LED display numbers. Further, the count mode switch via two touch controls are counted manually or automatically counting. In the counting process can be reset by a reset button, and then during the next count. Count range 00 to 59, is a software program designed for this course is set up from the 59 to start the manual count, not the connected by a P3 ^ 7 touch switch on minus one, until reduced to 00 and 59 to jump back in turn. When P3 ^ 6 external touch switch is pressed once automatically from 00 to 59 plus one count. Press again to stop the automatic value, maintaining the original number is displayed, press followed by automatic counting. Keywords: microcontroller; counters; digital;

单片机的定时及计数器实验-脉冲计数器

实验六单片机定时、计数器实验2——脉冲计数器 一、实验目的 1.AT89C51有两个定时/计数器,本实验中,定时/计数器1(T1)作定时器用,定时1s;定时/计数器0(T0)作计数器用。被计数的外部输入脉冲信号从单片机的P3.4(T0)接入,单片机将在1s内对脉冲计数并送四位数码管实时显示,最大计数值为0FFFFH。 2.用proteus设计、仿真基于AT89C51单片机的脉冲计数器。 3.学会使用VSM虚拟计数/计时器。 二、电路设计 1.从PROTEUS库中选取元件 ①AT89C51:单片机; ②RES:电阻; ③7SEG-BCD- GRN:七段BCD绿色数码管; ④CAP、CAP-ELEC:电容、电解电容; ⑤CRYSTAL:晶振; SEG-COM- GRN为带段译码器的数码管,其引脚逻辑状态如图所示。

对着显示的正方向,从左到右各引脚的权码为8、4、2、1。 2.放置元器件 3.放置电源和地 4.连线 5.元器件属性设置 6.电气检测 7.虚拟检测仪器 (1)VSM虚拟示波器 单击小工具栏中的按钮,在对象选择器列表中单击COUNTER(计 数/计时器),打开其属性编辑框,单击运行模式的下拉菜单,如图所示,可选择计时、频率、计数模式,当前设置其为频率计工作方式。 (2)数字时钟DCLOCK 单击按钮,在对象选择器中选择DCLOCK(数字时钟)。在需要添加信 号的线或终端单击即可完成添加DCLOCK输入信号。当前信号设置为DIGITAL型的时钟CLOCK,频率为50K。 三、源程序设计、生成目标代码文件 1.流程图 2.源程序设计 通过菜单“sourc e→Add/Remove Source Files…”新建源程序文件:DZC36.ASM。 通过菜单“sourc e→DZC36.ASM”,打开PROTEUS提供的文本编辑器SRCEDIT,在其中编辑源程序。 程序编辑好后,单击按钮存入文件DZC32.ASM。 3.源程序编译汇编、生成目标代码文件 通过菜单“sourc e→Build All”编译汇编源程序,生成目标代码文件。

基于51单片机的零件计数器设计

单片机课程设计报告 题目零件计数器 专业通信工程 学号 姓名 指导教师刘玉宏 学校河海大学常州校区

摘要: 零件计数器生产实践中具有很实际的用途,我们所设计的零件计数器的功能是把接在INT0上的单稳信号当作零件信号,每来一个零件,单片机计数一次,当计满10次时,蜂鸣器发出一声警告音,并使继电器闭合一次,产生零件打包动作,要求LED上显示当前一共生产了多少零件,并能通过串口将零件数目发送给PC机。选择这个项目可以帮助我们更加了解中断、定时器及串口是如何工作的,提高对实际问题的动手操作能力以及解决问题的能力。 本课程采用C51编写程序,通过Keil C编写为机器代码,烧写入单片机中,在实验箱上进行操作,完成单片机这种实用工具的整体的学习。 关键字:单片机零件计数器LED显示串口通信

目录 一、系统设计 1.1主要组件及电路框图··4 1.2软件设计方框图及流程图··5 1.3电路功能··7 二、实验过程及结果 2.1 程序设计··9 2.2调试过程··13 2.3问题及解决··13 2.4调试结果·13 三、结论 3.1课程设计特点及贡献··14 3.2改善建议··14 3.3心得体会··14

参考文献··15 附录··16 一、系统设计 1.1 主要组件及电路框图 本课程设计使用的实验箱主要由单片机最小系统,LED数码管显示部分,外部中断控制部分,独立式与行列式键盘按键输入部分,串行口通信部分,蜂鸣器与继电器等部分组成。

电路总图与功能如图所示,每当来一次外部中断时,内部计数一次,并将数值通过4位共阴数码管动态显示出来。而单片机的P2口可以选择四根不同的数码管来动态显示,通过视觉暂留达到同时显示的效果。同时内部程序检测每当计数十次时,会形成一个继电器闭合的零件打包动作,并通过程序使得蜂鸣器发出警报。 1.2 软件设计框图及流程图 零件计数器系统由多个函数构成,其中包括主函数,初始化函数,延时函数,串口发送函数,蜂鸣器函数,继电器函数等。

单片机课程设计(24秒篮球计数器)

1.引言 目前,单片机正朝着高性能和多品种方向发展趋势将是进一步向着CMOS化、低功耗、小体积、大容量、高性能、低价格和外围电路内装化等几个方面发展。 单片机模块中最常见的是数字钟,数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更长的使用寿命,因此得到了广泛的使用。 数字钟是采用数字电路实现对时,分,秒。数字显示的计时装置,广泛用于比赛,车站, 码头办公室等公共场所,成为人们日常生活中不可少的必需品,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表, 钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。因此,研究数字钟及扩大其应用,有着非常现实的意义。 2 设计要求 1、具有24s计时功能。 2、设置外部操作开关,控制计时器的直接清零、启动和暂停 /连续功能。 3、计时器为24秒递减时,计时间隔为1秒。 4、计时器递减到零时,数码显示器不能灭灯,同时发出光电报警信号。 5、有直接清零然后恢复到24秒,准备重新开始计数。 学生在教师指导下,综合运用所学知识完成基于单片机的篮球比赛24秒计时器设计。要求设计一个24秒计时电路,并具有时间显示的功能。 要求: 1、设置外部操作开关,控制计数器的直接清零、启动和暂停/连续计时。

2、要求计时电路递减计时,每隔1秒钟,计时器减1。 3、当计时器减到0时,显示器上显示00,同时发出光电报警信号。 3设计思路: 选用AT89C51作为主控芯片,晶振是6KHz,机械周期为1ms,所以循环10次为1s。P0口作为段码输出,P2.0、P2.1作为位控,高电平有效。数码管是液晶显示,采用动态显示,两个串行口作为中断入口,高电平有效,启动T0定时器/计数器进行计数,低电平有效。图2.2.1是系统硬件设计电路图一。 时间设置完后,启动定时器T0开始定时计数。计时采用倒计时,比如:设置的时间为24秒钟,则在LED上显示24两位数。定时T0计数24秒后中断返回,继续定时计数下一个24秒;同时则在2位LED显示器上显示,表示时间已经过去1秒钟,即为23秒。这样一直持续下去。知道变为“00”时表示赛程结束。如果比赛中裁判叫停,则只要按下键,即可暂停计时。

单片机脉冲计数

单片机实验报告 班级:自动0903 姓名:

一.软件实验 实验题目:脉冲计数(定时/计数器实验) 1,实验目的:熟悉单片机内部定时/计数器功能,掌握初始化编程方法。 2,实验内容:把外部中断0输入的脉冲进行计数,并送数码管显示。 仿真电路图如下所示:设定频率发生器为50Hz 程序如下: #include sbit P2_0=P2^0; //数码管选定位 sbit P2_1=P2^1; sbit P2_2=P2^2; sbit P2_3=P2^3; unsigned char code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,

0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e}; unsigned int motorspeed; unsigned char GE,SHI,BAI,QIAN; unsigned int counter=0; //脉冲数 unsigned int calsp; //设定多长时间计算一次 void display(); //数码管显示 void delay(); //延迟函数 void calspeed(); void main() { EA=1; //开启总中断 EX0=1; //开启外部中断0 IT0=1; //设置成下降沿触发方式 TMOD=0x01; //设置定时器0为模式1,即16位计数模式 TH0=(65536-10000)/256; //计数时间为10ms TL0=(65536-10000)%256; ET0=1; //开启定时器0中断 TR0=1; //启动定时器0 P2=P2&0xf0; while(1) { display(); calspeed(); } } void calspeed() { if(calsp>=100) //100*10ms=1s计算一次 { motorspeed=counter; counter=0; //清零脉冲数 calsp=0; //清零标志 } } void _TIMER0() interrupt 1 { TH0=(65536-10000)/256; //重新装入初值,计数时间为10ms TL0=(65536-10000)%256; calsp++; }

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

目录 目录 (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口驱动蜂鸣器发声报警。为了简化电路,降低成本,采用以软件为主的的接口方法。 该系统实用、功能灵活多样,可以对计时时间进行实时控制,可以广泛的应用于各种场所的控制设备。 【关键词】单片机;LED数码管显示器;倒计时;报警

单片机实验 脉冲计数和电脑时钟程序

南昌航空大学实验报告 二0一一年九月二十九日 课程名称:单片微型机实验名称:脉冲计数和电脑时钟程序 班级: 080611 学生姓名:学号: 08061108 指导教师评定:签名: 一、实验目的 1、熟悉8031定时/计数功能,掌握定时/计数初始化编程方法; 2、熟悉MCS—51定时器、串行口和中断初始化编程方法,了解定时器应用在实时控制中程序的设计技巧; 3、编写程序,从DVCC系列单片机实验仪键盘上输入时间初值,用定时器产生0.1S定时中断,对时钟计数器计数,并将数值实时地送数码管显示。 二、实验内容及要求 1、脉冲计数 对定时器0外部输入的脉冲进行计数,并送显示器显示。程序框图如下: 图1 二进制转换子程序 2、电脑时钟程序程序 程序框图如下:

图2 定时中断服务程序 三、实验步骤及操作结果 1、脉冲计数程序 (1) 当DVCC 单片机仿真实验系统独立工作时 1) 把8032CPU 的P3.4插孔接T0—T7任一根信号线或单脉冲输出空“SP ”。 2)用连续方式从起始地址02A0H 开始运行程序(按02A0后按EXEC 键)。 3)观察数码管显示的内容应为脉冲个数。 (2) 脉冲计数程序(源文件名:Cont .Asm )。汇编程序代码如下: ORG 02A0H CONT: MOV SP,#53H MOV TMOD,#05H ;初始化定时/计数器 MOV TH0,#00H MOV TL0,#00H SETB TR0 ;允许定时/计数中断 CONT1: MOV R2,TH0 ;取计数值 MOV R3,TL0 LCALL CONT2 ;调二转十进制子程序 MOV R0,#79H MOV A,R6 LCALL PWOR MOV A,R5 LCALL PWOR MOV A,R4 LCALL PWOR LCALL DISP ;调显示子程序 SJMP CONT1 ;循环 CONT2: CLR A ;清R4、R5、R6 MOV R4,A MOV R5,A MOV R6,A MOV R7,#10H CONT3: CLR C ;R2、R3左移,移出的位送CY MOV A,R3 RLC A

基于51单片机的计数器设计 (2)

单片机课程设计题目基于51单片机的计数器设计

目录 1课程设计的目的 (1) 2设计思路 (1) 3设计过程 (2) 3.1方案论证 (2) 3.2电路的设计 (4) 4应用程序 (6) 5电路焊接 (8) 5.1标准锡点 (8) 5.2不标准锡点判定 (8) 6系统调试与结果 (9) 7结论 (10) 8心得体会 (11) 参考文献 (13) 附录1:总体电路原理图 (14) 附录2:实物图 (15) 附录3:元器件清单 (16)

1 课程设计的目的 1.利用单片机定时器/计数器中断设计计数器,0到99的累加。 2.综合运用所学的《单片机原理与应用》理论知识,通过实践加强对所学知识的理解,具备设计单片机应用系统的能力。 3.通过本次课程设计加深对单片机掌握定时器、外部中断的设置和编程原理的全面认识复习和掌握,对单片机实际的应用作进一步的了解。 4.通过本次试验,增强自己的动手能力。认识单片机在日常生活中的应用的广泛性,实用性。明确学习目的,端正学习态度,提高对课程设计重要性的认识,以积极认真的态度参加课程设计工作,按要求完成规定的设计任务。 2 设计思路 本实验利用单片机的定时器/计数器定时和计数的原理,通过采用仿真软件来模拟实现。模拟利用AT89C2052单片机、LED数码管以及各种控制器件来控制表的计数以及计数的开启/计数与复位等。利用单片机AT89S51单片机来制作一个手动计数器,在AT89S51单片机的P3.7管脚接一个轻触开关,作为手动计数的按钮,用单片机的P2.0-P2.7接一个共阴数码管,作为00-99计数的个位数显示,用单片机的P0.0-P0.7接一个共阴数码管,作为00-99计数的十位数显示,用单片机P1.0-P1.6接一个并排的7个LED灯,作为00-99计数的二进制显示。设计总图如图2-1所示 1

相关文档
最新文档