[理学]毕业论文正文2.doc

上传人:音乐台 文档编号:1986949 上传时间:2019-01-28 格式:DOC 页数:40 大小:875.42KB
返回 下载 相关 举报
[理学]毕业论文正文2.doc_第1页
第1页 / 共40页
[理学]毕业论文正文2.doc_第2页
第2页 / 共40页
[理学]毕业论文正文2.doc_第3页
第3页 / 共40页
亲,该文档总共40页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《[理学]毕业论文正文2.doc》由会员分享,可在线阅读,更多相关《[理学]毕业论文正文2.doc(40页珍藏版)》请在三一文库上搜索。

1、西昌学院毕业论文(设计)目 录1 课题设计内容和意义11.1 课题设计的内容11.2 课程设计的意义12 系统总体设计和元器件的选择12.1 系统总体设计12.2 元器件的选择23 模块电路设计123.1 GSM通信模块123.2 温度采集模块143.3 烟雾浓度采集模块143.4 电源模块153.5 A/D转换模块153.6 S51单片机控制模块163.7 显示模块174 PROTEL DXP电路图设计185 制作PCB板196 软件设计206.1 总体流程图设计207系统测试217.1 硬件测试217.2 软件测试228 总结和展望22参考文献22致 谢 词23独 撰 声 明24翻 译 资

2、 料25附 录361 课题设计内容和意义1.1 课题设计的内容 系统主要应用在学校、酒店等公共场所以及需要重点防火的场所。该系统的主要研究内容是对火灾的实时监控及报警,当所在场所的温度以及烟雾浓度达到危险值时,系统将通过GSM网络把报警信息以短信的方式传送到相关人员的手机,使相关人员可以及时得到消息并做出相应处理。1.2 课题设计的意义 基于GSM网络的远程火灾报警网络主要是为了弥补传统的基于PSTN网络的远程火灾报警网络的不足,提高网络监控运行的可靠性和独立性。基于GSM网络的火灾报警系统不仅能无缝的与原有城市火灾报警网络兼容,而监控中心无需升级,节省改造成本。2 系统总体设计和元器件的选择

3、2.1 系统总体设计本设计可以实时监测工厂和其他一些重要的公共场所的两种环境因素:温度,烟雾浓度,并显示和提醒检测管理员。并可以通过手机的方式达到预警的效果。下面给出总体设计的框架图,见图1: 图 1 系统总体框架图2.2 元器件的选择为实现以上功能,设计主要硬件模块如下:MCU控制芯片最小系统;传感器数据采集模块(DS18B20(温度),MQ-2(烟雾浓度);显示模块选择12864液晶显示模块;为了实现与手机的通信选择GSM通信模块;。其中温度数据采集采用的是数字式传感器,可以直接使用,而烟雾浓度数据采集采用的是MQ-2,故需采用PCF8951进行模/数转换。具体工作流程为:通过传感器数据采

4、集模块(DS18B20,MQ-2)采集实时的环境因素数据(温度,烟雾浓度),并送至LCD显示。在GSM模式下,系统将根据环境因素的变化,当温度或者烟雾浓度达到预设值时,就向目标手机发送“火灾报警”短信以提醒用户。在后续的文中会有详细的各模块的介绍。2.2.1.温度传感器介绍DS18B20是由美国DALLAS半导体公司生产最新单线数字式温度传感器,主要特性如下:可实现对一55到+125 范围内的温度测量,并且测量温度的误差在0.5,实际系统的分辨率可单独设定,并且保存在EEPROM 中,即使断电也能够保存;现场温度的测量值通过串行通信的方式传输,即“单线总线”的数字方式传输;系统供电电压容许范围

5、大,可在3V到55V 的范围波动。DS18B20引脚功能及外形图如图2所示:(1) GND为电源地; (2)DQ为数字信号输入/输出端;(3)VDD为外接供电电源输入端(在寄生电源接线方式时接地)。图 2 DS18B20外形及引脚排列图DS18B20的内部结构主要包括寄生电源电路、64位只读存储器(ROM)和单线接口、存储器和控制逻辑、存放中间数据的高速暂存存储器、温度传感器、报警上限寄存器TH、报警下限寄存器TL、配置寄存器和8位CRC(循环冗余校验码)发生器。64位光刻ROM光刻ROM 中的64位序列号为DS18B20的地址序列码。主要作用是使每个DS18B20的地址不同,这样可以在一条总

6、线上接多个这样的芯片,相互之间不受影响。温度传感器温度传感器主要实现对温度的测量温度传感器的分辨率根据系统的要求,可以在912位之间单独设置,当设置分辨率越高转换时间就越长,如果设置为9位,转换时间最大为93.75ms,当为12位时,达到750ms,所以在软件设计时必须考虑转换的温度一般存放在两个8位的RAM中DS18B20的核心是其数字温度传感器,精度可以通过用户编程配置为9、10、l1和l2位,其分别对应于0.5 、0.25 、0.125和0.0625 ,可以满足各种不同的分辨率要求。开始一次温度转换时,微处理器需要向DS18B20发出指令。转换完成之后,该温度数据存放在高速暂存存储器的温

7、度寄存器中,占用2个字节,并且DS18B20返回到空闲状态。当DS18B20采用外部供电方式时,主机可以在发送温度转换指令后发起一次读时隙。若此时该DS18B20已经完成温度转换,它将会返回“1”,否则返回“0”。以l2位为例,其中二进制的前5位为符号位,0表示正数,反之为负数。正数的温度计算是数字值直接乘以0.0625;当为负数时,温度值的计算是将测到的值取补码,然后再乘以0.0625。 非易失性温度报警触发器非易失性温度报警触发器主要是在系统控制中用软件输入温度的报警上下限。高速暂存寄存器高速暂存寄存器是由九个连续的字节组成的,其中前两个用来存放当前温度的测量值,其中第一个字节为温度的低八

8、位,第二个字节为温度的高八位,第三个和第四个字节为温度易失性的备份,第五个字节为结构寄存器的备份,第六、七、八个字节是系统计算所用,第九个字节是为CRC校验所用。配置寄存器为高速暂存寄存器的第五个字节,用于确定温度值得数字转换分辨率,其中最高位为测试模式位,第7、6位为分辨率设置,0011分别表示分辨率为912位,最后五位全部为1。CRC发生器CRC在64位光刻ROM 的最高字节,主要是实现串行通信中的数据校验,判断接收的数据是否正确。DS18B20的一线工作协议流程是:初始化ROM操作指令存储器操作指令数据传输。其工作时序包括初始化时序、写时序和读时序,如图3(a)(b)(c)所示。 图 3

9、DS18B20基本工作时序图温度转换计算方法举例:例如当DS18B20采集到+125的实际温度后,输出为07D0H,则:实际温度=07D0H0.0625=20000.0625=125例如当DS18B20采集到-55的实际温度后,输出为FC90H,则应先将11位数据位取反加1得370H(符号位不变,也不作为计算),则:实际温度=370H0.0625=8800.0625=552.2.2.烟雾传感器介绍 烟雾传感器我采用MQ-2 气体传感器,它的特点有:广泛的探测范围,高灵敏度,快速响应恢复,优异的稳定性,寿命长和简单的驱动电路。 MQ-2应用也很广泛,例如可用于家庭和工厂的气体泄漏监测装置, 适宜

10、于液化气、丁烷、丙烷、甲烷、酒精、氢气、烟雾等的探测。这种传感器可检测多种可燃性气体,是一款适合多种应用的低成本传感器。 MQ-2气体传感器所使用的气敏材料是在清洁空气中电导率较低的二氧化锡(SnO2)。当传感器所处环境中存在可燃气体时,传感器的电导率随空气中可燃气体浓度的增加而增大。使用简单的电路即可将电导率的变化转换为与该气体浓度相对应的输出信号。 MQ-2实物如图4所示:图 4 MQ-2实物和结构2.2.3 S51单片机介绍控制芯片最小系统采用标准的8051单片机最小系统电路。包括控制芯片STC89C52单片机、晶振电路和复位电路。单片机STC89C52引脚图如图5所示:图 5 STC8

11、9C52单片机引脚图 下面就对本系统用到的STC89C52单片机的结构和功能进行介绍: STC89C52是一种带8K字节闪烁可编程可檫除只读存储器(FPEROM-Flash Programable and Erasable Read Only Memory )的低电压,高性能COMOS8的微处理器,俗称单片机。该器件采用ATMEL搞密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。 STC89C52具体介绍如下:主电源引脚(2根)VCC(Pin40):电源输入,接5V电源GND(Pin20):接地线外接晶振引脚(2根)XTAL1(Pin19):片内振荡电路的输入端X

12、TAL2(Pin20):片内振荡电路的输出端控制引脚(4根)RST/VPP(Pin9):复位引脚,引脚上出现2个机器周期的高电平将使单片机复位。ALE/PROG(Pin30):地址锁存允许信号PSEN(Pin29):外部存储器读选通信号EA/VPP(Pin31):程序存储器的内外部选通,接低电平从外部程序存储器读指令,如果接高电平则从内部程序存储器读指令。可编程输入/输出引脚(32根)STC89C52单片机有4组8位的可编程I/O口,分别位P0、P1、P2、P3口,每个口有8位(8根引脚),共32根。PO口(Pin39Pin32):8位双向I/O口线,名称为P0.0P0.7P1口(Pin1Pi

13、n8):8位准双向I/O口线,名称为P1.0P1.7 P2口(Pin21Pin28):8位准双向I/O口线,名称为P2.0P2.7 P3口(Pin10Pin17):8位准双向I/O口线,名称为P3.0P3.7 STC89C52主要功能如表1所示:表 1STC89C52主要功能 主要功能特性兼容MCS51指令系统,8K可反复擦写Flash ROM32个双向I/O口,256x8bit内部RAM3个16位可编程定时/计数器中断,时钟频率0-24MHz2个串行中断,可编程UART串行通道2个外部中断源,共6个中断源2个读写中断口线,3级加密位低功耗空闲和掉电模式,软件设置睡眠和唤醒功能2.2.4.LC

14、D12864介绍12864的一些特性和功能:低电源电压(VDD:+3.0-+5.5V)显示分辨率:12864 点内置汉字字库,提供 8192 个 1616 点阵汉字(简繁体可选)内置 128 个 168 点阵字符2MHZ 时钟频率显示方式:STN、半透、正显驱动方式:1/32DUTY,1/5BIAS视角方向:6 点背光方式:侧部高亮白色 LED,功耗仅为普通 LED 的 1/51/10通讯方式:串行、并口可选内置 DC-DC 转换电路,无需外加负压无需片选信号,简化软件设计工作温度: 0 - +55 ,存储温度: -20 - +6012864的数据传输方式可以采用串行数据传输方式和并行数据传输

15、方式两种方式,本设计采用的是并行数据传输方式。RS,R/W 的配合选择决定控制界面的4种模式如表2所示:表 212864的四种控制模式 RS R/W 功能说明 L L MPU 写指令到指令暂存器(IR) L H 读出忙标志(BF)及地址记数器(AC)的状态 H L MPU 写入数据到数据暂存器(DR) H H MPU从数据暂存器(DR)中读出数据具体的读写指令可查阅使用手册,这里不详细列出。本系统采用的是8位并行数据线模式,下面给出12864在并行传输方式下的读写时序图,见图6、7:图 6 12864写时序(8位并行数据线模式)图 712864读时序(8位并行数据线模式)2.2.5.GSM模块

16、介绍 为了实现与目标手机的通信,本设计采用了一个TC35模块来实现这一功能。TC35模块可以从市面上购买。单片机与TC35模块进行通信,主要是通过串口发送AT指令实现的。由此可见,要成功实现GSM通信,系统的串口通信是一个必备的前提。TC35 模块性能指标特性说明: 信息传送内容:语音和数据 电源:单电源 3.3V 5.5V 频段:双频GSM900MHz 和 DCS1800 MHz(Phase 2+) 发射功率:2W (GSM900MHz Class 4) 1W (DCS1800MHz Class 1) SIM 卡连接方式: 外接 天线: 由天线连接器连接外部天线 温度范围 :工作温度:-20

17、C to +55C 储存温度:-30C to +85C 工作电流损耗 通话模式: 300mA (典型值.) 空闲模式: 3.5mA (最大值) 省电模式: 100A (最大值) 语音解码标准:三种速率半速 (ETS 06.20)全速(ETS 06.10)增强型全速 (ETS 06.50/06.60/06.80) 短信息:MT, MO, CB 和 PDU 模式 外型尺寸:54.5 x 36 x 6.7mm 音频接口:模拟信号(麦克风,耳麦,免提手柄) 通讯接口:RS232(指令和数据的双向传送) SIM卡操作电压: 3V/1.8V 电话薄功能: 存储于SIM卡中 模块复位: 采用AT指令或掉电复

18、位 串口通讯波特率: 300bps.115kbps 动波特率范围; 4.8kbps.115kbps 软件下载功能 (improved service and maintenance) :通过RS232或SIM接口 实时时钟: 可实现(时钟频率32.768KHz) 定时器功能: 可用AT命令编程具体的AT指令的功能介绍可查阅AT指令集,下面只介绍本设计中将要用到的一些AT指令的功能,见表3:表 3设计中用到的AT指令 ASCI码指令 功能 AT回车 握手 ATE 简化显示 AT+CSCA 设置短信服务中心地址 AT+CMGF 设置信息格式 AT+CNMI=1,1,2 设置收到短消息提示 ATD0

19、5133082087 拨打05133082087电话 AT+CMGR=X 读取第X条短信指令 AT+CMGS 发送消息指令 AT+CMGD=X 删除第X条短信息指令3 模块电路设计3.1 GSM通信模块图8给出了购买的TC35模块的原理图。图 8TC35模块原理图3.2 温度采集模块 本设计中DS18B20与STC89C52单片机的连接,见图9:图 9 温度采集电路3.3 烟雾浓度采集模块 烟雾浓度采集采用MQ-2烟雾传感器具体原理图如下图所示: 图 10 MQ-2采集电路3.4 电源模块 本系统采用了LM78O5和LM2576分别输出+5V电压和2A电流,+5V电压用来给系统供电,烟雾传感器

20、的特殊性需要2A稳定电流来供电。具体原理图如图11: 图 11 电源电路3.5 A/D转换模块 该模块采用PCF8951芯片来把采集到的烟雾浓度参数转换为单片机需要的数据,便于运算和运用。原理图如图12: 图 12 A/D转换电路3.6 S51单片机控制模块 S51单片机最小系统包括:MCU、复位电路、晶振电路。原理图如图9所示: 晶振电路设计如图13所示:图 13晶振电路在晶振电路中使用了两个30PF的电容(C1,C2)和一个晶振(Y1),分别接的是单片机的18,19引脚,晶振频率选取的是11.0592MHZ,是因为主要考虑到在串口通信时的误码率的问题。下面给出最常用的两种晶振频率11.05

21、92MHZ、12MHZ在同一波特率、同一定时器方式下串口通信时传输数据的误码率的对比。复位是单片机的初始化的操作。单片机控制器在上电启动运行时,都需要先复位。其作用是使CPU和控制器中其它部件处于一个确定的初始状态,从这个状态开始工作,因而,复位是一个很重要的操作方式。但单片机本身是不能进行自动复位的。必须配合相应的外部复位电路才能实现。本系统采用按键电平复位电路,其连接方式如图14,所示:图 14 按键电平复位电路3.7 显示模块本设计的显示模块的选择的是带字库的12864液晶屏幕。下面给出12864的硬件连接图,见图15:图 1512684硬件连接图4 PROTEL DXP电路图设计画好原

22、理图后,要确定各元件的合理封装,并于元件的实体相比对,要确定封装与元件实体相配,再进行PCB板的制作。PCB板的制作分为导入,布局,布线。具体步骤如下:在PROTEL DXP中,通过filenewPCB新建一个PCB项目文件并保存。并在PCB板的周围添加尺度标注。导入:原理图文件,执行Design设计/Update PCB PCB1.PcbDoc。点击alidate Change有效更新按钮,操作过程中将在Status状态栏中的Check检查列中显示各操作是否能正确执行,其中正确标志为绿色的“”,错误标志为红色的“”。点击Execute Changes执行更新按钮,软件将自动转到打开向导新建的

23、PCB文件,将各封装元件和网络连接载入PCB文件中。元件布局:执行Tools工具/Auto Placement自动布局/Auto Place 菜单命令。选择Cluster Placer群组方式布局元件,点击OK按钮,启动自动布局过程。布完局后,在根据实际情况进行手工布局。布线:设置布线规则。布线分为自动布线和手工布线两种。若采用DXP自动布线功能,则难以完成本系统合理的布线工作.。因此,本次设计采用手工布线。手工布线要遵守一定的原则,如下:安全工作原则 安全间距原则。本系统设置的最佳安全间距为0.5mm,最小间距为0.3mm,最大间距为0.6mm。安全检查载流原则。本系统设置的最佳线宽为0.8

24、mm,最小线宽为0.6mm,最大线宽为1mm。导线精简原则。在满足安全原则等电气要求的前提下,导线要精简,尽可能短,尽量少拐弯,力求导线简单明了,特别是场效应管栅极、晶体管基极,时钟电路等小信号导线。电磁干扰原则。导线拐角。铜膜导线的拐弯处应为圆角或侨眷角,因为高频时直角或尖角的拐弯会影响电气特性。布线方向。就近接地和隔离。就近接地可以减小地线的长度以降低地线的阴抗。环境效应原则组装方便、规范原则。美观、经济原则。美观原则要求设计者较充分的利用电路板空间,均匀分布走线密度,力求走线美观精简。Rules规则菜单执行Design设计/命令,在导线宽度规则设置选择对话框中,选择Width导线宽度选项

25、,本例中设导线宽度为40mil(最小30mil,最大50 mil)。在自动布线规则设置对话框中,双击Routing Layers布线层面选项,在弹出的布线层面设置对话框中选conshrain中的not used在来设置安全间距。在规则编辑对话框中找到electricalclearance选项,设置sinimum clearance为5mile.执行自动布线命令:执行Auto Route自动布线/All菜单命令在图所示的自动布线策略设置对话框中,点击Route All布所有导线按钮,将启动自动布线过程,自动布线过程中弹出自动布线信息报告栏。再根据需要进行手工布线。并检查线路,有错再进行手工修改。

26、5 制作PCB板电路板的腐蚀:本次毕业设计选用双面板,由打孔机进行打孔。PCB板布好线后,先在keep out 层用直线工具划出板的大小,再打开打孔,比对PCB画线,检查无误后配好腐蚀液将覆铜板放进去腐蚀,当没画线的铜掉完就将板拿出清洗,用万用表检测线路的好坏没有错进行下一步。元件的焊接:PCB板腐蚀完后,再检查线路,确定无误,然后焊接过孔,接着遵循由小到大、由低到高的顺序将元件焊接上去。 安放元件:在焊接前,先要确定每一条线路都是导通的,若不是要用焊锡将其连接好。在先确定买回来的元件是坏是好的,再对照PCB板安放元件。在安放元件的过程中要将各元件的+、-极与板相对应。在焊接的过程中要不要形成

27、短路。焊好电路后用万用表确定每一段路都是导通的,并无短路。6 软件设计首先编写好各硬件驱动,包括LCD12864驱动、PCF8951驱动、GSM模块驱动、烟雾传感器MQ-2驱动以及DS18B20驱动。程序首先初始化LCD,然后检测周围烟雾及温度参数并送入LCD进行显示。由于DS18B20是数字传感器,所以能直接通过传感器采集得到数据。烟雾传感器是模拟传感器,则通过烟雾传感器MQ-2对环境的烟雾浓度进行的采样需送入PCF8951模数转换芯片,由单片机驱动控制其进行多次采样求平均值,获得烟雾浓度值。当烟雾浓度或者温度的值达到预设值时,单片机将通过GSM模块向用户手机发送“火灾报警”这四个字。下面给

28、出总体流程图设计。6.1 总体流程图设计图 16 系统总体流程图 7系统测试7.1 硬件测试制作好电路板之后需要进行硬件电路的测试。线路检测:根据电路图用万用表检测PCB板线路是否有短路和断路现象。焊接好元件后,根据电路图检查有极性元件是否反接,再检测元件引脚与对应的线路是否接通,防止虚焊。将电源电路接通,用万用表测量各输出电压值是否正常。确保PCB板上线路连接正常后,开启开关将板上电源接通,再检测各电源接口电压是否正常,看各元件能否正常工作如有无发烫现象,过一段时间再检测,确定硬件控制器的稳定性。装上单片机,再测量其电压输入口40引脚VCC电压(5V)、31引脚EA/VPP引脚电压(5V)和

29、晶振两引脚与地之间的电压(一般为2.2V左右)。说明单片机能正常工作。7.2 软件测试7.2.1.LCD12864测试编写测试液晶屏的程序,编译好后先仿真看是否实现再把程序写入单片机看能否驱动液晶屏,经测试液晶屏能正常工作。7.2.2.数据采集模块的测试与运行系统完成初始化后,数据采集模块将实时采集环境因素数据(温度,烟雾浓度),并实时显示在液晶屏幕。液晶屏幕能显示出采集的实时数据,表明数据采集模块正常工作。7.2.3 .GSM模块的测试和运行 当温度和烟雾浓度达到预设值时,系统就会通过GSM模块给用户发送报警信息,当手机接收到“火灾报警”四个字时就能表示GSM模块正常运行。8 总结和展望随着

30、毕业日子的逼近,毕业设计也接近了尾声。在指导老师的指导下,我终于顺利的完成了毕业设计(论文)。毕业设计不仅是对前面所学知识的一种检验,也是对自我知识掌握情况的进一步提高,将所学的知识应用于实践。通过这次毕业设计使我明白了自己原来知识比较欠缺,自己要学习的东西还太多。在以后的工作、生活中都应该不断的学习,努力提高自己的知识和综合素质。对于这次自己完成的这个毕业设计,功能上可能对于实际的运用还是比较欠缺的。所以要想这个毕业设计能用到现实生活中的火灾报警中,还需要更完备和详尽的设计。 参考文献 1覃团发,姚海涛,覃远年,陈海强.移动通信M.重庆:重庆大学出版社,20042李科杰,宋萍.感测技术M.北

31、京:机械工业出版社,20073陈立永,郑明.数字电路与逻辑设计M.第二版.北京:中国铁道出版社,20074施智雄,胡放鸣.实用模拟电子技术M.成都:电子科技大学出版社,20065刘彩霞,刘波粒.高频电子线路M.北京:科学出版社,20086沈保锁,侯春平.现代通信原理M.第二版.北京:国防工业出版社,20107胡蔷,鲍强.TC35 GSM模块在无线传输系统中的应用J.现代电子技术,2005:36-378潘斌,郭红霞.短信收发模块TC35i的外围电路设计J.单片机与嵌入式系统应用,2004(7):38-419戴 佳.51单片机C语言应用程序设计实例精进M.北京:电子工业出版社 2006 10胡汉才

32、.单片机原理及其接口技术M.北京:清华大学出版社,2004 11胡大可.51系列8位单片机原理与应用 M北京北京航空航天大学出版社, 2000 12数字无线传输(第二版)李氏据 M2007 13胡大可51系列单片机C语言程序设计与开发M北京航天航空出版社,2002. 14田拓,郭中华,丁帅华等,基于AT 89C52 单片机智能小车的设计J,2005 15陈懂, 金世俊智能小车的多传感器混合J现代电子技术2005致 谢 词在本次毕业设计中,我得到了黄鹏老师的热心指导。从选题到搜集资料、从原理图的设计到PCB图的设计、从焊接到最后的程序调试,他都给予了很大的帮助,在整个制作过程中心情是如此复杂,感

33、觉到开发一个产品是如此的不易。在这里我要感谢在设计中给予我帮助的同学,他们在本次设计中给予我许多帮助解决了许多我不能解决的问题,如果不是他们的帮助我可能不能很好的完成本次设计,你们的帮助是毫无保留的,对此我由衷的感谢。 独 撰 声 明我声明,本论文(设计)是由本人在指导教师的指导下独立完成的,在完成论文(设计)时所利用的一切资料均已在参考文献中列出。 姓名: 年 月 日翻 译 资 料 AT89C51的概况1 AT89C51应用单片机广泛应用于商业:诸如调制解调器,电动机控制系统,空调控制系统,汽车发动机和其他一些领域。这些单片机的高速处理速度和增强型外围设备集合使得它们适合于这种高速事件应用场

34、合。然而,这些关键应用领域也要求这些单片机高度可靠。健壮的测试环境和用于验证这些无论在元部件层次还是系统级别的单片机的合适的工具环境保证了高可靠性和低市场风险。Intel 平台工程部门开发了一种面向对象的用于验证它的AT89C51 汽车单片机多线性测试环境。这种环境的目标不仅是为AT89C51 汽车单片机提供一种健壮测试环境,而且开发一种能够容易扩展并重复用来验证其他几种将来的单片机。开发的这种环境连接了AT89C51。本文讨论了这种测试环境的设计和原理,它的和各种硬件、软件环境部件的交互性,以及如何使用AT89C51。1.1 介绍8 位AT89C51 CHMOS 工艺单片机被设计用于处理高速

35、计算和快速输入/输出。MCS51 单片机典型的应用是高速事件控制系统。商业应用包括调制解调器,电动机控制系统,打印机,影印机,空调控制系统,磁盘驱动器和医疗设备。汽车工业把MCS51 单片机用于发动机控制系统,悬挂系统和反锁制动系统。AT89C51 尤其很好适用于得益于它的处理速度和增强型片上外围功能集,诸如:汽车动力控制,车辆动态悬挂,反锁制动和稳定性控制应用。由于这些决定性应用,市场需要一种可靠的具有低干扰潜伏响应的费用-效能控制器,服务大量时间和事件驱动的在实时应用需要的集成外围的能力,具有在单一程序包中高出平均处理功率的中央处理器。拥有操作不可预测的设备的经济和法律风险是很高的。一旦进

36、入市场,尤其任务决定性应用诸如自动驾驶仪或反锁制动系统,错误将是财力上所禁止的。重新设计的费用可以高达500K 美元,如果产品族享有同样内核或外围设计缺陷的话,费用会更高。另外,部件的替代品领域是极其昂贵的,因为设备要用来把模块典型地焊接成一个总体的价值比各个部件高几倍。为了缓和这些问题,在最坏的环境和电压条件下对这些单片机进行无论在部件级别还是系统级别上的综合测试是必需的。Intel Chandler 平台工程组提供了各种单片机和处理器的系统验证。这种系统的验证处理可以被分解为三个主要部分。系统的类型和应用需求决定了能够在设备上执行的测试类型。1.2 AT89C51提供以下标准功能:4k 字

37、节FLASH 闪速存储器,128 字节内部RAM,32 个I/O 口线,2 个16 位定时/计数器,一个5 向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89C51 降至0Hz 的静态逻辑操作,并支持两种可选的节电工作模式。空闲方式体制CPU 的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM 中的内容,但振荡器体制工作并禁止其他所有不见工作直到下一个硬件复位。 图1-2-1 AT89C51 方框图1.3引脚功能说明Vcc:电源电压GND:地P0 口:P0 口是一组8 位漏极开路型双向I/O 口,也即地址/数据总线复用。作为输出口用时

38、,每位能吸收电流的方式驱动8 个TTL 逻辑门电路,对端口写“1”可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8 位)和数据总线复用,在访问期间激活内部上拉电阻。在Flash 编程时,P0 口接受指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。P1 口:P1 是一个带内部上拉电阻的8 位双向I/O 口,P1 的输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作为输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。Flash 编

39、程和程序校验期间,P1 接受低8 位地址。P2 口:P2 是一个带有内部上拉电阻的8 位双向I/O 口,P2 的输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作为输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。在访问外部程序存储器或16 位四肢的外部数据存储器(例如执行MOVX DPTR指令)时,P2 口送出高8 位地址数据,在访问8 位地址的外部数据存储器(例如执行MOVX RI 指令)时,P2 口线上的内容(也即特殊功能寄存器(SFR)区中R2 寄存器的内容),在整个访问

40、期间不改变。Flash 编程和程序校验时,P2 也接收高位地址和其他控制信号。P3 口:P3 是一个带有内部上拉电阻的8 位双向I/O 口,P3 的输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作为输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。P3 口还接收一些用于Flash 闪速存储器编程和程序校验的控制信号。RST:复位输入。当振荡器工作时,RST 引脚出现两个机器周期以上高电平将使单片机复位。ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)

41、输出脉冲用于锁存地址的低8 位字节。即使不访问外部存储器,ALE 仍以时钟振荡频率的1/6 输出固定的正脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是,每当访问外部数据存储器时将跳过一个ALE 脉冲。对Flash 存储器编程期间,该引脚还用于输入编程脉冲(PROG)。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH 单元D0 位置位,可禁止ALE 操作。该位置位后,只有一条MOVX 和MOVC 指令ALE 才会被激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE 无效。PSEN:程序存储允许输出是外部程序存储器的读选通型号,当89C51 由外部存储器取指令(或数

42、据)时,每个机器周期两次PSEN 有效,即输出两个脉冲。在此期间,当访问外部数据存储器,这两次有效的PSEN 信号不出现。EA/VPP:外部访问允许。欲使CPU 仅访问外部程序存储器(地址为0000HFFFFH),EA 端必须保持低电平(接地)。需注意的是:如果加密位LB1 被编程,复位时内部会锁存EA 端状态。如EA 端为高电平(接Vcc 端),CPU 则执行内部程序存储器中的指令。Flash 存储器编程时,该引脚加上+12v 的编程允许电源Vpp,当然这必须是该器件使用12v 编程电压Vpp。XTAL1:振荡器反相放大器及内部时钟发生器的输入端。XTAL2:振荡器反相放大器的输出端。89C

43、51 中有一个用于构成内部振荡器的高增益反相放大器,引脚XTAL1 和XTAL2分别是该放大器的输入端和输出端。这个放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起构成自激振荡器,振荡电路参见图5。外接石英晶体或陶瓷谐振器及电容C1、C2 接在放大器的反馈回路中构成并联振荡电路。对电容C1、C2 虽没有十分严格的要求,但电容容量的大小会轻微影响振荡频率的高低、振荡器工作的稳定性、起振的难易程度及温度稳定性,如果使用石英晶体,我们推荐电容使用30Pf10 Pf,而如使用陶瓷谐振器建议选择40Pf10Pf。用户也可以采用外部时钟。这种情况下,外部时钟脉冲接到XTAL1 端,即内部时钟发生器的输入端XTAL2 则悬空。掉电模式:在掉电模式下,振荡器停止工作,进入掉电模式的指令是最后一条被执行的指令,片内RAM 和特殊功能寄存器的内容在终止掉电模式前被冻结。推出掉电模式的唯一方法是硬件复位,复位后将重新定义全部特殊功能寄存器但不改变RAM 中的内容,在Vcc 恢复到正常工作电平前,复位应无效,且必须保持一定时间以使振荡器重启动并稳定工作。89C51 的程序存储器阵列是采用字节写入方式编程的,每次写入一个字符,要对整个芯片的EPROM 程

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

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1