单片机课程设计自动打铃控制器设计

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

第1章绪论

本设计是根据我们所学习的单片机课程,按照大纲要求对我们进行的一次课程检验,是进行单片机课程训练的必要任务,也对我们掌握单片机应用有很大的帮助。掌握单片机技术是一门不可或缺的技术,对我们将来的工作以及生活和学习都有很密切的联系。近年来,随着电子技术和微机计算机的迅速发展,单片机的档次不断提高,其应用领域也在不断的扩大,已在工业控制、尖端科学、智能仪器仪表、日用家电、汽车电子系统、办公自动化设备、个人信息终端及通信产品中得到了广泛的应用,成为现代电子系统中最重要的智能化的核心部件。

当今时代是一个新技术层出不穷的时代,在电子领域尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统,正以前所未有的速度被单片机智能控制系统所取代。单片机具有体积小、功能强、成本低、应用面广等优点,可以说,智能控制与自动控制的核心就是单片机。目前,一个学习与应用单片机的高潮正在工厂、学校及企事业单位大规模地兴起。而本文是用AT89C51单片机设计的一个自动打铃系统。

第2章总体设计思想

2.1 基本原理

利用单片机的基本原理和功能,控制自动打铃控制器,掌握单片机的最小电路和单片机最常见的外围扩展电路,利用C语言编程并结合单片机开发板上的功能设计实现一个综合程序“单片机多功能打铃器控制器”,完成常见外围组件的驱动。

2.2 设计框图

图2.1 硬件电路设计

设定51单片机工作在定时器工作方式1,每100ms产生一次中断,利用软件将基准100ms单元进行累加,当定时器产生10次中断就产生1S信号,这时秒单元加1。同理,对分单元时单元和上下午单元计数,从而产生秒,分,时,上下午的值,通过五位七段显示器进行显示。

本系统采用四个按键,1键为功能键,另外三个做控制键。按一下1键进入

时间设置,接着按2键选择需要调整的位,按3键进行加数,按4键进行减数,

按两下1键调整结束时钟继续走动。当时钟时间与设置时间一致时,驱动电路动

作进行打铃,按时间点不同打铃规则不同,此时按2键强制灭铃。

第3章 系统主要硬件电路设计

3.1 各功能模块程序实现原理分析

图3.1 3.1.1 七段式数码管驱动模块

采用动态扫描方式,通过一组单片机端口驱动并联在一起的LED 发光管的

一端(共阴或共阳端),LED 发光管的另一脚接通用I/O 口,控制其亮灭。该方法

能驱动较多的LED ,控制方式较灵活,而且节省单片机的资源。

3.1.2 蜂鸣器驱动模块

采用压电式蜂鸣器,压电式蜂鸣器主要由多谐振荡器、压电蜂鸣片、阻抗匹

配器及共鸣箱、外壳等组成。多谐振荡器由晶体管或集成电路构成,当接通电源

后(1.5-15V 直流工作电压),多谐振荡器起振,输出1.5~2.5kHZ 的音频信号,

阻抗匹配器推动压电蜂鸣片发声。

图3.2 蜂鸣器驱动电路

3.1.3 按钮控制模块

四个按钮的一端分别接地,另一端接单片机一个端口的四个引脚,当某一个按钮按下的时候,其对应的引脚就由高电平变成低电平,然后通过单片机扫描读取引脚的电平来判断按钮是否按下。

3.2 AT89C51单片机性能介绍

AT89C51是一种带4K字节闪烁可编程可擦除只读存储器的低电压,高性能CMOS8位微处理器,俗称单片机。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

引脚说明:

VCC:供电电压。

P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写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.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入) P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通) P3口同时为闪烁编程和编程校验接收一些控制信号。

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

ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。硬件电路包括七段式数码管驱动模块、蜂鸣器驱动模块、按钮控制模块等三大模块。

P1.0 1 40 Vcc

P1.1 2 39 P0.0

P1.2 3 38 P0.1

P1.3 4 37 P0.2

P1.4 5 36 P0.3

P1.5 6 35 P0.4

P1.6 7 34 P0.5

P1.7 8 33 P0.6

RST/Vpd 9 32 P0.7

RXD P3.0 10 31 EA/Vpp

TXD P3.1 11 30 ALE/-P

INT0 P3.2 12 29 PSEN

INT1 P3.3 13 28 P2.7

T0 P3.4 14 27 P2.6

T1 P3.5 15 26 P2.5

WR P3.6 16 25 P2.4

RD P3.7 17 24 P2.3

X2 18 23 P2.2

X1 19 22 P2.1

GND 20 21 P2.0

图3.3 AT89C51引脚图

相关文档
最新文档