可编程倒计时装置

  • 格式:doc
  • 大小:4.48 MB
  • 文档页数:16

目 录 1、设计原理......................................................... 1 1.1、系统框图........................................................................................................... 1 1.2、倒计时原理 ....................................................................................................... 1 1.3、数码管显示原理 ............................................................................................... 2 1.4、时钟电路与复位电路 ......................................................................................... 2 1.5、音频输出电路.................................................................................................... 3 2、系统电路连接图................................................... 4 3、程序设计......................................................... 4 3.1主程序流程图 ...................................................................................................... 5 3.2数码管显示程序流程图 ........................................................................................ 5 3.3、倒计时模块程序流程图...................................................................................... 6 3.4分秒置数程序设计 ............................................................................................... 7 4、资源分配......................................................... 7 5、源程序........................................................... 8 6、硬件调试........................................................ 12 7、小结与体会...................................................... 14 8、参考文献........................................................ 15 武汉理工大学《单片机原理与应用》课程设计说明书

1 1、设计原理

1.1、系统框图 倒计时系统草图设计如下,主要由有四个部分组成,单片机AT89c51模块、4位7段数码管模块、蜂鸣器音频输出模块、控健电路模块。单片机模块为核心,其他三个模块通过IO并口与单片机相连。控键电路控制单片机的复位,分秒置数,和倒计时的开始和暂停。数码管模块显示显示倒计时数,由单片机控制。蜂鸣器模块在计时完毕为零时输出一音频信号。

数码管显示模块

音频输出模块控键电路模块单片机模块At89c51

1.2、倒计时原理 利用定时器T0工作于方式1下,为16位定时计数方式,由TH提供高8位,TL提供低8位的计数初值,最大计数为65536个脉冲,当0/TC时,工作于定时方式,以振荡源的12分频信号作为计数脉冲;当1/TC时,工作于计数方式,对外部脉冲输入端输入的脉冲计数。计数脉冲能否加到计数器上,受启动信号的控制,当GATE=0时只要TR=1则定时/计数器启动工作。当GATE=1时,TR=1和1INT同时满足才能启动,此时启动受到双重控制。每启动定时、计数前,需预置计数初值。启动后计数器立即加1计数,TL低8位的计数满回零后向TH进位,当16位计数满回零后,中断溢出标志TF置1,产生中断请求,表示定时时间到或计数次数到。若允许中断ET=1且CPU开中断(EA=1),则CPU响应中断,转向中断服务程序,同时TF自动清零。 此次设计TMOD=01h,设置定时器T0工作于方式1且为定时方式。时钟频率为12Mhz,所以每个计数脉冲的周期为1us,计数50000个脉冲时间为50ms,即武汉理工大学《单片机原理与应用》课程设计说明书 2 每50ms中断一次,中断20次为1s。计数初值为65536-50000=15536,化为16进制3cb0h, TH=#3ch,TL=#b0h。

1.3、数码管显示原理

七段数码管实由7个条形发光二极管和一个小圆点二极管组成。根据气com段是高电平还是低电平可分为共阳极和共阴极两种,共阳极的二极管a、b、c、d、e、f、g、h为低电平亮,公阴极则相反。数码管显示有两种方法:即静态显示和动态显示。静态显示占用单片机端口资源多,但控制程序简单,动态显示可节约端口资源,只占用两个IO口可显示多位数码管。由于本次设计需要显示4位数码管,故采用动态显示。其显示原理是首先显示一个数,然后关掉,显示第二数数,再关掉,那么将看到连续的数字显示,轮流点亮扫描过程中,每位显示器的点亮时间是极为短暂的。由于人的视觉暂留现象及发光二极管的余辉作用,尽管实际上各位显示器并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据。在设计时,每个数码管的扫描停留时间不能过长,也不能过短。过长则会有数码管闪烁的效果,过短则数码管不显示。根据经验最佳停留时间为毫秒级,本次设计每个数码管停留时间为1ms,即用延时程序延时1ms实现。

1.4、时钟电路与复位电路

8051单片机的时钟信号通常由两种电路方式得到:内部震荡方式和外部震荡方式。内部震荡方式多用于使单片机时钟与外部信号一致,内部振荡所得的时钟信号比较稳定,故本采用内部震荡方式,其电路如图: 武汉理工大学《单片机原理与应用》课程设计说明书

3 XTAL1XTAL2X1

CRYSTALC120pFC220pF

复位操作完成单片机内部电路的初始化,使单片机从一种确定的状态运行。 复位操作有两种基本形式:上电复位、开关复位。上电复位是接通电源后,自动实现复位操作,当系统通电时VCC 上电压从无到有在RESET处会先处于高电平一段时间,然后由于该点通过 电阻接地则RESET该点的电平会逐渐的改变为低电平,从而达到给单片机复位的功能。其电路如图

RESTR710k

C310uf

1.5、音频输出电路 当计时到零时,通过p3.6口输出一段方波信号,该方波信号有程序产生,周期约为20ms。蜂鸣器由一pnp型三极管驱动,电路如图:

p3.6BUZ1BUZZERQ1NPN

D1BAS16

R5200

R610k 武汉理工大学《单片机原理与应用》课程设计说明书

4 2、系统电路连接图

p3.6p00p01p02p03p04p05p06p07

XTAL218XTAL119ALE30EA31PSEN29RST9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78P3.0/RXD10P3.1/TXD11P3.2/INT012P3.3/INT113P3.4/T014P3.7/RD17P3.6/WR16P3.5/T115P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427U1AT89C51R110kBUZ1BUZZERQ1NPNX1CRYSTALC120pFC220pFR210kR310kR410k23456789

1RP1

RESPACK-8D1BAS16

R5200

R610k

U2NOTU3

NOTU4

NOTU5

NOT

R710k

C310uf

3、程序设计 系统的核心是控制程序的设计,该程序可分为子四个模块,通过主程序调用子模块,或子模块之间的相互调用实现。

主程序

数码管显示模块

到计时模块

置数分秒模块音频输出模块