基于单片机的叮咚门铃(4)

2019-03-27 23:48

为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FLASH编程时,P0口作为原码输入口,当FLASH进行校验时,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的一些特殊功能口:

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。此时, ALE只有在执行MOVX,MOVC指令时ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效;

PSEN:外部程序存储器的选通信号。在由外部程序存储器取址期间,每个机器周期PSEN两次有效。但在访问内部部数据存储器时,这两次有效的PSEN信号将不出现;

EA/VPP:当EA保持低电平时,访问外部ROM;注意加密方式1时,EA将内部锁定为RESET;当EA端保持高电平时,访问内部ROM。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP);

XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入; XTAL2:来自反向振荡器的输出;

图5.2.2 STC89C52最小系统电路图

3.5 键盘输入设计

13

3.5.1器件描述

键盘是人机交互中不可缺少的部分,在该系统中,由于温度报警上下限需要手动输入,因此,我给系统配备了6个独立按键。在整个系统中需要有完善的人机交互接口,在前面的系统的方案选择中确定了机械式按键作为输入设备,下面是独立按键的电路图。

3.5.2电路设计

图5 独立按键电路图

3.6 声音播放设计

3.6.1器件描述

声音播放部分,我选用的是8Ω扬声器。扬声器是一种把变化的电信号转变为声信号的换能器件,扬声器的性能优劣对音质的影响很大。扬声器在音响设备中是一个最薄弱的器件,而对于音响效果而言,它又是一个最重要的部件。扬声器的种类繁多,而且价格相差很大。音频电能通过电磁,压电或静电效应,使其纸盆或膜片振动并与周围的空气产生共振(共鸣)而发出声音。他是一种常用电磁发声器件,在该设计中,我给它配备一个三极管进行驱动,使它的声音更加响亮。

3.6.2电路设计

图3.6.2 声光报警电路图

第4章 系统软件设计

15

系统软件主要负责驱动各个硬件模块工作,使它稳定的运行。对于可编程的硬件系统来说,底层硬件是系统的基础,驱动软件的作用是让系统在这基础上使各个硬件模块正常工作。在整个软件编程中要时刻扫描键盘的输入以便获得用户的操作,另外,还要控制声音播报模块的发声。在这一系统中,编写代码任务量确实不小,这一过程让我花了不少的精力。以下是我对这一系统中由我完成的软件设计。 4.1系统软件总体设计

本系统的软件由集成开发工具Keil C51进行开发,它具有强大的编译、链接和调试功能。本系统的工作过程大致为: 单片机实时扫描按键的输入,获取用户的操作,从而判断门铃是否被按下。如果门铃被按下,则使声音播报模块发声。软件整体流程图如图4.1 所示:

开始系统初始化打开定时器按键被按下?Y单片机输出700Hz的方波N声音播放模块发出“叮”声单片机输出500Hz的方波声音播报模块发出“咚”声

图6 接收端软件流程图

4.2 Keil C51环境的介绍

本课题的软件开发环境为Keil C51,它可以对C或者C++进行编译,是嵌入式应


基于单片机的叮咚门铃(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:ZJ17卷烟机职业技能初级知识点

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: