智能家居门禁系统的研制项目研究报告.docx

上传人:牧羊曲112 文档编号:1709969 上传时间:2022-12-15 格式:DOCX 页数:41 大小:848.13KB
返回 下载 相关 举报
智能家居门禁系统的研制项目研究报告.docx_第1页
第1页 / 共41页
智能家居门禁系统的研制项目研究报告.docx_第2页
第2页 / 共41页
智能家居门禁系统的研制项目研究报告.docx_第3页
第3页 / 共41页
智能家居门禁系统的研制项目研究报告.docx_第4页
第4页 / 共41页
智能家居门禁系统的研制项目研究报告.docx_第5页
第5页 / 共41页
点击查看更多>>
资源描述

《智能家居门禁系统的研制项目研究报告.docx》由会员分享,可在线阅读,更多相关《智能家居门禁系统的研制项目研究报告.docx(41页珍藏版)》请在三一办公上搜索。

1、 1 项目研究报告 智能家居门禁系统的研制智能家居门禁系统的研制 项项 目目 研研 究究 报报 告告 项 目 批 准 号 XZ0701 项 目 名 称 智能家居门禁系统的研制 项 目 负 责 人 李 辉 所 在 单 位 石家庄经济学院 2 目目 录录 一、研究的主要意义和目的 3 二、研究的主要内容、方法及过程 3 第一节 研究主要内容 3 第二节 研究方法 3 第三节 研究过程 3 三、主要研究的成果介绍 4 第一节 智能门禁系统概述 4 第二节 语音提示模块设计 4 第三节 智能拨号报警 12 第四节 自动照明模块设计 21 第五节 电子门锁模块设计 26 第六节 设置无人状态模块设计 3

2、0 第七节 单片机汇编程序设计 31 四、学术价值的的自我评价 39 五、成果的社会影响 39 第一节 课题研究取得的主要业绩 39 第二节 课题研究的应用前景和社会影响 39 六、研究中尚存在的问题 41 参考文献41 3 项目编号:项目编号:XZ0701XZ0701 智能家居门禁系统的研制智能家居门禁系统的研制 项项 目目 研研 究究 报报 告告 项目组负责人项目组负责人:李 辉 主要成员:主要成员:张立亚 摘摘要:要:为了给人们提供一个安全,舒适和谐的家居环境,本文采用单片机 AT89C51、语音芯片 ISD2560 等,构成一个具有语音留言、警告、笛声报警、智能电子门锁、人体红外线感应

3、自动照明灯等功能的家居系统,用户可根据家庭的实际需要方便地进行扩展,此系统的设计体现了人性化,个性化和趣味化三大特点,使用方便,快捷,稳定,安全。 关键词:关键词:单片机;语音芯片;门禁系统 一、研究的主要意义和目的 众所周知,高科技带给我们生活的不断改善,更为我们提升需求层次,尽快达到马斯洛人类需求理论的第四层次,体验尊贵的价值提供了保障。如何把高科技尽快转化为产品,是世界各国技术人才追求的目标。随着社会的发展进步,家居门禁的研制也已成规模。门禁系统又称出入口控制系统,是一种高度智能化既可实时控制又可脱机使用的通道监管、报警安全系统。它是安全防范系统中非常重要的组成部分。在家庭防盗和智能控制

4、中起到非常重要的作用,受到现代家庭的亲睐。如何使家居的门禁系统设计变的人性化、个性化、趣味化、实现智能性已经成为家居门禁设计的一个值得研究拓展和有市场价值的方向,本文就是基于这样的思想,以 AT89C51 单片机为核心结合一些传感器、其它智能芯片,以模块化、积木式的原则设计了一种家居门禁系统,其功能性,实用性,价值性都得到相当完善的理论研究。 二、研究的主要内容、方法及过程 第一节第一节 研究研究主要主要内容内容 单片机是一个集成在一块芯片上的完整计算机系统。它具有体积小、功耗低、控制功能强、扩展灵活、微型化和使用方便等优点,而且价值不断被扩大,广泛应用于仪器仪表、家用电器、医用设备、航空航天

5、、专用设备的智能化管理及过程控制等领域。我们结合目前所学知识和市场上应用最普遍的 AT89C51 单片机, 集合其他的接口芯片和辅助设备, 组成了一个智能智能家居门禁系统。目前,我们已经对该系统进行了理论上的可行性分析和一些实验验证,得到了有关老师和专家的指导,并且于 2008 年四月份在科学技术与工程杂志社发表有关成果论文一篇。该门禁系统有五大功能模块组成:语音提示设计模块、计智能拨号报警设计模块、自动照明设计模块、电子门锁设计模块、设置无人状态设计模块。构成了一个性能上良好,功能上齐全的家居门禁。 第二节第二节 研究方法研究方法 我们采用理论、实验相结合方法,对智能门禁系统各个模块进行了认

6、真的研究。 第三节第三节 研究过程研究过程 1、实验准备阶段(2007 年 4 月2007 年 4 月)总结经验,调整方向。 我们结合自己的基本情况以及老师的建议,通过对该项目的内容和原理进行了系统的分析,初步形成了项目研究方案和明确的努力方向。 2、初步实验阶段(2007 年 5 月2007 年 7 月)重点学习,努力提高 完成课题实验的各项准备后, 我们对处于核心地位的单片机的有关知识进行了系统学习, 4 努力提高自己的综合能力,为项目的开展和研究做充分的准备。在此期间我们了解了单片机的硬件结构如定时器/计数器、中断系统、存储器、并行和串行 I/O 口等,然后是指令和软件编程,对于单片机的

7、一些简单控制和编程有了一定的掌握。对于实验所用到的各中芯片资料进行大量收集,提取我们所需要的技术性资料。 3、全面研究阶段(2007 年 8 月2007 年 10 月)理论实验,全面推进 具备一定的研究基本条件,我们进行了有关元器件的购买,进入实验和理论结合的阶段。完成了单片机的焊接和测试,并利用其进行语音控制的实验等。 4、项目总结阶段(2007 年 10 月2008 年 3 月)提炼精华,成果展示 根据项目研究方案和结题要求,本项目组认真开展了结题工作,对实验过程和主要内容进行了总结提炼,对该智能门禁系统进行深度的理论分析,以便形成有价值的研究成果。我们把一些模块的实验验证和理论分析的结果

8、进行了汇总,然后进行了论文的撰写。于 2008年年初在科学技术与工程杂志社发表有关成果论文一篇。 三、主要研究的成果介绍 第一节第一节 智能智能门禁系统概述门禁系统概述 智能家居门禁系统把自动照明、语音提示录音、设置无人状态、智能电子门锁和智能语音拨号报警系统通过 AT89C51 单片机连接在一起,构成一个智能化、智能的家庭实用型门禁系统。其系统框图见图 1.1。 以单片机 AT89C51 为核心, 把语音芯片 ISD2560 接口所构成的外设电路以及其他智能设备电路与单片机的数据存储器(RAM)和程序存储器(EPROM)统一编制址的方式把两片器件挂入数据地址总线中,构成了一个智能家居门禁系统

9、。图 1.2 给出的是智能门禁系统模块原理。 第二节第二节 语音提示模块设计语音提示模块设计 2.1 简述简述 过去,数码语音的开发设计不但结构设计复杂、编程录制麻烦、开发生产成本高,而且音质欠佳,难以实用。现在,一切都发生了彻底的改变:单芯片设计、任意语言音乐随录随放、断电语音不丢失、音质接近磁带效果、控制功能强大、价格低廉等等,这一切就是ISD 数码语音电路给我们带来的变革。在多媒体技术广泛应用、市场竞争日益激烈的今天,几乎所有的产品都更注重人机界面的友好性、易用性和安全性,人性化的语音提示是最自然、最廉价、最有效的手段,它可以为您设计的产品升级换代,让您的新产品“开口说话”,使它更具说服

10、力、竞争力。 ISD 系列语音电路是美国 ISD(Information Storage Device)公司的专利新产品,它打破了传统的先 A/D 再 D/A 的模式,而采用独特的直接存储模拟信号技术,从而大大提高了存储密度,且使模拟信号得到永久保存。ISD 系列电路以其音质自然、使用方便、单片存储、图 1.2: 智能门禁系统模块原理电路结构简图 AT89C51 语音 模块 报警 模块 照明 模块 辅助 模块 图 1.1: 多功能门禁系统 智能门禁系统 自动照明系统 智能电子门锁 无人状态功能 语音拨号系统 语音提示录音 5 反复录放、低功耗、抗断电等众多优点立即在语音应用领域确立了其不可争辩

11、的霸主地位,它在通讯设备、智能仪表、治安报警、语音报站、报数报价、语音讲解、语音记录、语音复读、教学仪器、智能玩具、电子礼品等场合获得了广泛的应用。 2.2 电路特点与性能电路特点与性能 ISD 语音电路主要有 1200、1400、2500、3300、4000 五大系列产品,它们的主要存贮时间及性能如下表 2.1 所示: 器件型号 存储时间 采样频率 最大段数 控制方式 电压 ISD1210 10 秒 6.4 80 地址并行 5V ISD1420 20 秒 6.4 160 地址并行 5V ISD2560/90/120 60/90/120 秒 8.0/5.3/4.0 600/600/600 地址

12、并行 5V ISD33060/120/240 60/120/240 秒 8.0/8.0/4.0 400/800/800 SPI 串行 3V ISD4002-2/3/4 2/3/4 分钟 8.0/5.3/4.0 600 SPI 串行 3V ISD4003-4/6/8 4/6/8 分钟 8.0/5.3/4.0 1200 SPI 串行 3V ISD4004-8/12/16 8/12/16 分钟 8.0/5.3/4.0 2400 SPI 串行 3V (1)DIP 封装图及各引线端功能 如图 2.1 及表 2.2 所示。 下图 2.2 为 ISD 系列芯片的内部基本结构框图,由图可知,在这种 CMOS

13、器件内部,MIC 前置放大器、自动增益控制电路、抗干扰滤波器、平滑滤波器、扬声器、放大器和振荡器、模拟量存储器等全部集成在该单片内,只要外接 MIC、扬声器和几个电阻、电容、开关,再加上电源(电池),这就构成了一个完整的语音录/放系统。而与此有明显不同的是,前述的 T6668 等系列语音芯片则需外接扬声器、放大器、石英晶振、动态存储器等电路。 引线端 名称 功能 17 AO/MOA6/M6 地址 810 A7A9 地址 11 AUX IN 辅助输入 12、13 VSSD、VSSA 数字和模拟地 14、15 SP+、SP- 扬声器输出 16、28 VCCA、VCCD 模拟、数字信号电源正极 17

14、、18 MIC、MIC REF 麦克风输入与输入参考端 19 AGC 自动增益控制 20、21 ANA IN、OUT 模拟信号输入和输出 22 OVF 溢出 23 CE 片选(低电平允许芯片工作) 24 PD 芯片低功耗状态控制 25 EOM 录放音结束信号输出 26 XCLK 外部时钟 27 P/R 录/放控制选择 表 2.1 ISD 语音电路主要存贮时间及性能 图 2.1 DIP 封装图 表 2.2 DIP 各引线端功能 6 图 2.2 中,管脚 MIC(17 脚)为麦克风输入端。MICREF(18 脚)为麦克风参考输入端。ANAOUT(21 脚)为模拟输出端,ANAIN(20 脚)为模拟

15、输入端。AGC(19 脚)为自动增益控制输入端,SP+、 SP-(14、15 脚)为扬声器输出端,可接 816的扬声器。PD(24 脚)为低功耗输入端。CE(23 脚)为片选输入端,低电平有效。P/R(27 脚)为录/放音选端,接高电平时芯片放音,低电平时芯片录音。XCLK(26 脚)为外部时钟输入端。EOM(25 脚)为信息录/放结束输出端,放音结束时自动输出一个负脉冲。OVF(22 脚)为溢出输出端,本管脚可被用来进行器件的串联,以加长录/放音的时限。AUXIN(11 脚)为辅助输入端。Vcca、Vccd(16、18 脚)为电源输入端。Vssa、Vssd(12、13 脚)为地输入端。A0

16、至 A9 为地址输入端。 ISD 录/放技术与 80 年代的 T6668 等语音芯片最大差别在于 ISD 芯片内不存在 A/D 和 D/A转换器。其工作原理是采用直接模拟存储技术,把模拟量成功的存入半导体存储器中。即在对输入的音频模拟量每作一次取样时,电压数据被暂存在芯片内的取样保持电路中并最后被存储在片内的 EEPROM 存储单元中。该 EEPROM 存储单元构成模拟量存储阵列(如图 1 所示)。在将模拟量信息写入模拟存储单元 EEPROM 时,ISD 线路采用闭环方式。取样保持电路将保持的取样电压值提供给比较器的一个输入端,而模拟量存储单元则将其电压输入至比较器的另一端。在多次写入中,电子

17、被“泵入”存储单元,并使存储电平反馈到比较器,当模拟存储单元的输出电压等于取样保持电平时,则停止写入。 (2)操作模式 当最高位地址(MSB)A8、A9 都为高电平时,地址端 就作为操作模式选择端 (高电平有效)如下表 2.3 所示。 模式控制 功能 典型应用 A0/M0 信息检索 快速检索信息 A1/M1 删除 EOM 标志 在全部语音录放结束时, 给出EOM 标志 A2/M2 未用 当工作模式 操作时, 此端应接低电平 图 2.2 ISD2500 系列结构图 表 2.3 7 使用操作模式时需要注意两点: 1、所有操作模式下的操作都是从 0 地址开始,以后的操作根据模式的不同,而从相应的地址

18、开始工作。当电路中录音转放音或进入省电状态时,地址计数器复位为 0。 2、操作模式位不加锁定,可以在 MSB(A8、A9)地址位为高电平时,CE 电平变低的任何时间执行操作模式操作。如果下一片选周期 MSB(A8、A9)地址位中有一个(或两个)变为低电平,则执行信息地址,即从该地址录音或放音,原来设定的操作模式状态丢失。 3)分段录放音 2500 系列最多可分为 600 段, 只要在分段录/放音操作前(不少于 300 纳秒), 给地址 A0A9赋值,录音及放音功能均从设定的起始地址开始,录音结束由停止键操作决定,芯片内部自动在该段的结束位置插入结束标志(EOM);而放音时芯片遇到 EOM 标志

19、即自动停止放音。 2500 系列地址空间是这样分配的: 地址 0599 作为分段用(见下表 2.4), 地址 600767未使用,地址 7681023 为工作模式选择。 2.3 电路的应用开发电路的应用开发 ISD 系列单片语音录放电路中,目前使用最广泛的是 ISD1420、ISD2560/90/120、ISD4002/4003/4004三大类芯片, 大多数的应用系统或OEM都是由它们构成的, 这里对ISD2500常用电路的应用开发进行说明。 ISD2500 系列芯片按录放时间 60 秒、75 秒、90 秒和 120 秒分成 ISD2560、2575、2590和 25120 四个品种。ISD2

20、500 系列和 1400 系列语音电路一样,具有抗断电、音质好,使用方便,无需专用的语音开发系统等相同优点。它的最大特点在于片内 E2PROM 容量为 480K(1400系列为 128K),所以录放时间长;有 10 个地址输入端(1400 系列仅为 8 个),寻址能力可达1024 位;最多能分 600 段;设有 OVF(溢出)端,便于多个器件级联。 1、典型应用电路: A3/M3 循环放音 从 0 地址开始连续重复放音 A4/M4 连续寻址 可录放连续的多段信息 A5/M5 CE 电平触发 允许信号中止 A6/M6 按钮控制 简化器件接口 十进制 二进制 信息时间(秒) A9 A8 A7 A6

21、 A5 A4 A3 A2 A1 A0 2560 2575 2590 0 0 0 0 0 0 0 0 0 0 0 0 0 0 50 0 0 0 0 1 1 0 0 1 0 5.0 6.25 7.50 100 0 0 0 1 1 0 0 1 0 0 10.0 12.5 15.0 250 0 0 1 1 1 1 1 0 1 0 25.0 31.25 37.5 300 0 1 0 0 1 0 1 1 0 0 30.0 37.5 45.0 400 0 1 1 0 0 1 0 0 0 0 40.0 50.0 60.0 500 0 1 1 1 1 1 0 1 0 0 50.0 62.5 75.0 599 1

22、 0 0 1 0 1 0 1 1 1 59.9 74.87 89.85 表 2.4 2500 系列地址空间分配 8 图 2.4 按键模式应用电路 3、和微处理器配合使用电路 图 2.3 典型应用电路 9 图 2.5 和微处理器配合使用电路 ISD2560/90/120P 地址功能表如下表 2.5 所示。 表 2.5 ISD2560/90/120P 地址功能表 以上给出的只是 ISD 的基本电路,因 ISD 的功能较强,如果需要应用 ISD 的更多功能,可在此基础上加以改进。 例如,在对单独 ISD 芯片使用时,还可选择 ISD 所特有的工作模式来实现信息提示、循环或连续放音控制、按键模式等多项

23、功能。总之,ISD 系列芯片是功能强,很 地址状态 功能状态 DIP 开关 1 2 3 4 5 6 7 8 9 10 11 12 (ON=0,OFF=1) 地址位 A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 P/R CE (1 为高电平,0 为低电平,*为高或低电平) 0 0 0 0 0 0 0 0 0 0 一段式最长 60 秒录放音,从首地址开始。 1 0 0 0 0 0 0 0 0 0 以十位二进制表示地址,每个地址代表 100 毫秒。 地址模式 0 0 0 0 0 0 0 0 1 0 一段从A6地址开始的12秒录放音。 * * * * * * * * * 0 只要 A8、

24、A9 有一位是 0,就处于地址模式。 * * * * * * * * 0 * 0 0 0 1 0 0 0 0 1 1 循环放音操作,按住 CE 键不放循环放音第一段。 操作模式 0 0 0 0 1 0 0 0 1 1 按顺序连续分段录放音,录音时压住 CE 键不放,放音时每触发一次 CE 键即放音一段,按 PD 键复位。每段语音长度不限。 按钮模式 0 0 0 0 0 0 1 0 1 1 10 有实用价值的语音芯片。由该芯片组成的语音电路系统保真、可靠、简易。适合在智能测控系统中应用推广。 2.4 本系统中的应用本系统中的应用 在对 ISD 的开发应用中,可分两类电路。一类是只单独应用 ISD

25、 芯片进行语音录/放。另一类是 ISD 与微机相接合电路,用微机控制 ISD 进行录/放。 我们现提出三种单独应用 ISD 的基本电路。当然,根据需要也可以在该三种电路的基础上设计出更完美的电路。 (1)单放电路 该电路仅有放音功能。电路很简单,只要将图 2.2 中的 A0 至 A9 及 PD、CE 等相连一起接地,再在 SP+、SP-接扬声器,即可进行放音,当电源接通时,即放音。当电源关断时,即停止放音,使用者可根据需要,预先将该芯片放入图 2.6 所示的电路中进行录音储存,然后取出,再进行单放。 图 2.6 最简单的录/放电路 (2)录/放电路 图 2.6 为最基本的录/放电路,在这种电路

26、中,只是执行录音和放音功能,没有地址的分段应用。芯片工作时,CE 信号开始为高电平,在录音时,将 P/R-脚通过开关 S 时接高电平,将 CE开关瞬时接地再放开,则已录制的内容将回放。 (3)分段录/放电路 可将 ISD 划分为几段,录进不同的内容,然后根据需要播放某段内容。 11 图 2.7 分段录/放电路 图 2.7 即为分段录/放电路,该电路的功能是用一片录/放时间为 20S 的 ISD1020A 芯片存储 4 段(每段 5S 长)的语音信息。每一段用一个按钮控制。用该芯片的 8 位地址线确定每段录/放的起始位置。该芯片共有 160 个有效地址(即:A0A7 的有效分段范围为 00000

27、00010011111)。由于该芯片录放时间为 20S,每个地址语音分辨率为 0.125S。这就是说,每 8 个地址计数等于 1S 的录/放时间。 由于 8 个计数等于 1S,8 又是二进制的偶次倍率,小于 8 的数可忽略不计,这样就可把 A0、A1 和 A2 都接地,用剩余的 A3A7 来编程。用按钮和二极管,我们可以在第 1S 和第 19S 之间选择任一间隔启动语音录/放。 在图 3 电路中,4 个启动信息的位置是第 0S(存储列阵的起点)、5S、10S 和 15S,每个信息长度为 5S。表 2 给出了上述时间间隔的二进制起始地址。例如当按下第二段的按钮时,该段语音信息的起始地址为 001

28、01000。显然,可以用改变二极管的连线来选择不同的地址。二、ISD 与微机接口电路 当今,以语音芯片为核心的语音系统正为计算机所采用,逐渐形成计算机的一个功能接口系统,如同计算机的常用外围设备如键盘、打印机等一样,正成为计算机的一个重要外围设备,实现真正的“人机”语音对话。特别是以微电脑为核心的智能测控仪表,如配接上 ISD 等语音系统,可实现测控参数的“视听”效果一体化,即仪器可视、听并用,效果十分美妙。下面我们提出 ISD1020A 与单片微机 8031 的连接电路。单片微机与 ISD 芯片的电路连接十分简单而且调试方便。其优点是:(1)可很方便的用单片机的 I/O 口线对 ISD 地址

29、线编程分段,省略了如图 3 所示的机械开关 S1S4 和众多的分段二极管。(2)可很方便地用软件实现一次、多次、循环和定时放音,代替了人工对 ISD 工作模式的选择。(3)ISD 的分段编码电平及控制信号与微机总线的 TTL 电平完全兼容,而且两者均使用同一电源。 将ISD1020A的A0A2接地,A3A7和CE端分别与8031的I/O接口P1.0-P1.5相接。于是,ISD1020A 被分为 20 个语音段,每段时间长度为 1S。由单片机控制 ISD 的录/放,可用同一个录放子程序实现,将录/放开关 S 拨至相应位置,然后运行录/放子程序,就可将分段或全程段随意录/放。 我们正是采用 ISD

30、2560 芯片, 通过程序将 ISD2560 分成 5 段每段 8 秒,分别录入三段代表不同状态的话。正常工作时,单片机根据各个传感器和内部定时的状态,操作 ISD2560 调出不同的声音段播放。其它语音地址留给来访者按键录音,单片机采用自动加一方式,最多可 12 有 2 段留言。当没有按下“无人”时,单片机根据红外传感器判断是否有人。自动调用不同的语音、提示、警告或致欢迎辞。原理图见图 2.8。 图 2.8 录/放原理图 第三节第三节 智能拨号报警智能拨号报警 3.1 简述简述 随着人们生活水平的提高和安防意识的增强,急需开发面向大众、价格低廉、运行可靠的自动报警系统。鉴于住宅电话和移动通信

31、设备的普及,以及电话语音报警的快捷、有效及价格低廉等优点,公共通信网成了报警系统的最佳传输媒介。本文介绍的报警系统就是在此基础上发展起来的一种智能语音拨号报警系统,该系统可广泛用于各种对安防要求较高的场合,如智能楼宇、商场、银行和工厂等。 电话自动报警的主要功能为:用户根据需要把自己的手机号码、办公室电话或报警监控中心的电话预存入报警主机。报警主机不断地对所监控的设备(门禁、烟雾探测器、窗磁、摄像头等)状况进行巡检,当有不安全情况(如火灾、非法入室、视频丢失等)发生时,报警主机拨通预先存入的电话号码,播放相应的警情语音。若电话占线或者无人接听,可拨下一个预存的电话号码,如果所有预存的电话都占线

32、或者无人接听,则会自动把所有的预存电话重拨一遍,保证了报警的有效性和可靠性。 3.2 系统组成和工作原理系统组成和工作原理 系统组成框图如图 3.l 所示。采用 AT89C51 单片机作为控制核心,外接 E2PROM 用于存储电话号码、设置参数(定时布/撤防、联动、视频等)以及警情信息等。当 AT89C51 单片机实时巡检到新的警情信号(防区故障、视频丢失、主电断电或上位机死机)时,报警主机就会自动进行警情处理(声光报警、启动相应联动、记录警情以及拨号报警等)。拨号报警的工作原理如下: 系统自动地控制摘挂机电路模拟摘机, 同时 AT89C51 单片机通过可编程并行接口 8255将 MT8880

33、 置为呼叫模式,检测是否有拨号音。若有拨号音,则将 MT8880 设为突发方式,并按用户预设的电话号码自动拨号。拨完电话号码以后立即检测对方是否摘机,一旦检测到对方摘机,就启动语音提示电路发送与警情相一致的语音信息,完成自动拨号报警。 A01A12A23A34A45A56A67A78A89A910MUXIN11VSSD12VSSA13SP+14SP-15VCCA16MIC 17MICREF18AGC19ANA IN20ANA OUT21OVF22CE23PD24EOM25XCLK26P/R27VCCD28ISD25605.1kBL4.7u0.1u0.1u0.22u0.1u220u10k470k

34、10K10K10KVCCMICVCC1122 13 图 3.1 系统原理框图 AT89C51 简介简介 AT89C51 是一种带 4K 字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory) 的低电压, 高性能 CMOS8 位微处理器, 俗称单片机。 AT89C2051是一种带 2K 字节闪烁可编程可擦除只读存储器的单片机。 单片机的可擦除只读存储器可以反复擦除 100 次。该器件采用 ATMEL 高密度非易失存储器制造技术制造,与工业标准的 MCS-51指令集和输出管脚相兼容。由于将多功能 8 位 CPU

35、 和闪烁存储器组合在单个芯片中,ATMEL的 AT89C51 是一种高效微控制器,AT89C2051 是它的一种精简版本。AT89C 单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。 (1)主要特性: 与 MCS-51 兼容 4K 字节可编程闪烁存储器 寿命:1000 写/擦循环 数据保留时间:10 年 全静态工作:0Hz-24Hz 三级程序存储器锁定 1288 位内部 RAM 32 可编程 I/O 线 两个 16 位定时器/计数器 5 个中断源 可编程串行通道 低功耗的闲置和掉电模式 片内振荡器和时钟电路 (2)管脚说明: VCC:供电电压。 GND:接地。 P0 口:P0 口为一

36、个 8 位漏级开路双向 I/O 口,每脚可吸收 8TTL 门电流。当 P1 口的管脚第一次写 1 时,被定义为高阻输入。P0 能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在 FIASH 编程时,P0 口作为原码输入口,当 FIASH 进行校验时,P0 输出原码,此时 P0 外部必须被拉高。 14 P1 口: P1 口是一个内部提供上拉电阻的 8 位双向 I/O 口, P1 口缓冲器能接收输出 4TTL门电流。P1 口管脚写入 1 后,被内部上拉为高,可用作输入,P1 口被外部下拉为低电平时,将输出电流, 这是由于内部上拉的缘故。在 FLASH 编程和校验时,P1 口作为第八位

37、地址接收。 P2 口:P2 口为一个内部上拉电阻的 8 位双向 I/O 口,P2 口缓冲器可接收,输出 4 个TTL 门电流,当 P2 口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2 口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2 口当用于外部程序存储器或 16 位地址外部数据存储器进行存取时,P2 口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2 口输出其特殊功能寄存器的内容。P2 口在 FLASH 编程和校验时接收高八位地址信号和控制信号。 P3 口:P3 口管脚是 8 个带内部上拉电阻的双向

38、 I/O 口,可接收输出 4 个 TTL 门电流。当 P3 口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3 口将输出电流(ILL)这是由于上拉的缘故。 P3 口也可作为 AT89C51 的一些特殊功能口,如下表 3.1 所示:P3 口同时为闪烁编程和编程校验接收一些控制信号。 表 3.1 P3 口也可作为 AT89C51 的一些特殊功能口 口管脚 备选功能 P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 /INT0(外部中断 0) P3.3 /INT1(外部中断 1) P3.4 T0(记时器 0 外部输入) P3.5 T1(记

39、时器 1 外部输入) P3.6 /WR(外部数据存储器写选通) P3.7 /RD(外部数据存储器读选通) RST:复位输入。当振荡器复位器件时,要保持 RST 脚两个机器周期的高电平时间。 ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在 FLASH 编程期间,此引脚用于输入编程脉冲。在平时,ALE 端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的 1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个 ALE 脉冲。如想禁止 ALE 的输出可在 SFR8EH 地址上置 0。此时, ALE 只有在执行

40、 MOVX,MOVC 指令是 ALE 才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态 ALE 禁止,置位无效。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN 有效。但在访问外部数据存储器时,这两次有效的/PSEN 信号将不出现。 /EA/VPP:当/EA 保持低电平时,则在此期间外部程序存储(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式 1 时,/EA 将内部锁定为 RESET;当/EA 端保持高电平时,此间内部程序存储器。在 FLASH 编程期间,此引脚也用于施加 12V 编程电源(VPP)。 XTAL1:反向

41、振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。 (3)振荡器特性: XTAL1 和 XTAL2 分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2 应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。 (4)芯片擦除: 15 整个 PEROM 阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持 ALE 管脚处于低电平 10ms 来完成。在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,

42、该操作必须被执行。 此外,AT89C51 设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下,CPU 停止工作。但 RAM,定时器,计数器,串口和中断系统仍在工作。在掉电模式下,保存 RAM 的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。 串口通讯:单片机的结构和特殊寄存器,这是你编写软件的关键。至于串口通信需要用到那些特殊功能寄存器呢,它们是 SCON,TCON,TMOD,SCON 等,各代表什么含义呢? SBUF 数据缓冲寄存器这是一个可以直接寻址的串行口专用寄存器。有朋友这样问起过“为何在串行口收发中,都只是使用到同一个寄存器

43、SBUF?而不是收发各用一个寄存器。”实际上 SBUF 包含了两个独立的寄存器,一个是发送寄存,另一个是接收寄存器,但它们都共同使用同一个寻址地址99H。CPU 在读 SBUF 时会指到接收寄存器,在写时会指到发送寄存器,而且接收寄存器是双缓冲寄存器,这样可以避免接收中断没有及时的被响应,数据没有被取走,下一帧数据已到来,而造成的数据重叠问题。发送器则不需要用到双缓冲,一般情况下我们在写发送程序时也不必用到发送中断去外理发送数据。 操作 SBUF 寄存器的方法则很简单,只要把这个 99H 地址用关键字 sfr 定义为一个变量就可以对其进行读写操作了,如sfr SBUF = 0 x99;当然你也

44、可以用其它的名称。通常在标准的 reg51.h 或 at89x51.h 等头文件中已对其做了定义,只要用#include 引用就可以了。 SCON 串行口控制寄存器通常在芯片或设备中为了监视或控制接口状态, 都会引用到接口控制寄存器。SCON 就是 51 芯片的串行口控制寄存器。它的寻址地址是 98H,是一个可以位寻址的寄存器,作用就是监视和控制 51 芯片串行口的工作状态。51 芯片的串口可以工作在几个不同的工作模式下,其工作模式的设置就是使用 SCON 寄存器。它的各个位的具体定义如下: SM0 SM1 SM2 REN TB8 RB8 TI RI SM0、SM1 为串行口工作模式设置位,这

45、样两位可以对应进行四种模式的设置。串行口工作模式设置。 SM0 SM1 模式 功能 波特率 0 0 0 同步移位寄存器 fosc/12 0 1 1 8 位 UART 可变 1 0 2 9 位 UART fosc/32 或 fosc/64 1 1 3 9 位 UART 可变 在这里只说明最常用的模式 1,其它的模式也就一一略过,有兴趣的朋友可以找相关的硬件资料查看。表中的 fosc 代表振荡器的频率,也就是晶振的频率。UART 为(Universal Asynchronous Receiver)的英文缩写。 SM2 在模式 2、模式 3 中为多处理机通信使能位。在模式 0 中要求该位为 0。 R

46、EM 为允许接收位,REM 置 1 时串口允许接收,置 0 时禁止接收。REM 是由软件置位或清零。如果在一个电路中接收和发送引脚 P3.0,P3.1 都和上位机相连,在软件上有串口中断处理程序,当要求在处理某个子程序时不允许串口被上位机来的控制字符产生中断,那么可以在这个子程序的开始处加入 REM=0 来禁止接收, 在子程序结束处加入 REM=1 再次打开串口接收。大家也可以用上面的实际源码加入 REM=0 来进行实验。 TB8 发送数据位 8,在模式 2 和 3 是要发送的第 9 位。该位可以用软件根据需要置位或清除,通常这位在通信协议中做奇偶位,在多处理机通信中这一位则用于表示是地址帧还

47、是数据帧。 16 RB8 接收数据位 8,在模式 2 和 3 是已接收数据的第 9 位。该位可能是奇偶位,地址/数据标识位。在模式 0 中,RB8 为保留位没有被使用。在模式 1 中,当 SM2=0,RB8 是已接收数据的停止位。 TI 发送中断标识位。在模式 0,发送完第 8 位数据时,由硬件置位。其它模式中则是在发送停止位之初,由硬件置位。TI 置位后,申请中断,CPU 响应中断后,发送下一帧数据。在任何模式下,TI 都必须由软件来清除,也就是说在数据写入到 SBUF 后,硬件发送数据,中断响应(如中断打开),这时 TI=1,表明发送已完成,TI 不会由硬件清除,所以这时必须用软件对其清零

48、。 RI 接收中断标识位。在模式 0,接收第 8 位结束时,由硬件置位。其它模式中则是在接收停止位的半中间, 由硬件置位。 RI=1, 申请中断, 要求 CPU 取走数据。 但在模式 1 中, SM2=1时,当未收到有效的停止位,则不会对 RI 置位。同样 RI 也必须要靠软件清除。常用的串口模式 1 是传输 10 个位的,1 位起始位为 0,8 位数据位,低位在先,1 位停止位为 1。它的波特率是可变的,其速率是取决于定时器 1 或定时器 2 的定时值(溢出速率)。AT89C51 和AT89C2051 等 51 系列芯片只有两个定时器,定时器 0 和定时器 1,而定时器 2 是 89C52

49、系列芯片才有的。 波特率在使用串口做通讯时,一个很重要的参数就是波特率,只有上下位机的波特率一样时才可以进行正常通讯。波特率是指串行端口每秒内可以传输的波特位数。有一些初学的朋友认为波特率是指每秒传输的字节数,如标准 9600 会被误认为每秒种可以传送 9600 个字节,而实际上它是指每秒可以传送 9600 个二进位,而一个字节要 8 个二进位,如用串口模式 1 来传输那么加上起始位和停止位,每个数据字节就要占用 10 个二进位,9600 波特率用模式 1 传输时,每秒传输的字节数是 960010960 字节。51 芯片的串口工作模式 0 的波特率是固定的,为 fosc/12,以一个 12M

50、的晶振来计算,那么它的波特率可以达到 1M。模式2 的波特率是固定在 fosc/64 或 fosc/32, 具体用那一种就取决于 PCON 寄存器中的 SMOD 位,如 SMOD 为 0,波特率为 focs/64,SMOD 为 1,波特率为 focs/32。模式 1 和模式 3 的波特率是可变的,取决于定时器 1 或 2(52 芯片)的溢出速率。那么我们怎么去计算这两个模式的波特率设置时相关的寄存器的值呢?可以用以下的公式去计算。 波特率(2SMOD32)定时器 1 溢出速率 上式中如设置了 PCON 寄存器中的 SMOD 位为 1 时就可以把波特率提升 2 倍。通常会使用定时器 1 工作在定

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号