版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 .DOC资料. 南京信息职业技术学院 毕业设计论文作者 陈龚 学号 10619s34 系部 电子信息工程系 专业 电子信息工程技术/电子商务 题目 小型仓库温湿度监测系统 指导教师 丁宁 评阅教师 徐瑞亚 完成时间: 2010 年 4 月 10 日 毕业设计(论文)中文摘要小型仓库温湿度监测系统摘要:仓库内要实现温湿度的精确控制必须进行多点测量。基于这一要求,本文采用多个数字温湿度传感器SHTll来设计仓库监测系统,以达到简化软硬件系统设计,提高测量精度的目的。首先介绍了SHTll的结构特点、接口电路和工作时序,然后确定了采用多个SHTll纽成的温湿度测量系统的软硬件设计方案,最后基于AT8
2、9S51单片机设计了电路简洁、大大节省I/O口资源、具有现场独立显示和远距离通信功能的多点温湿度测量系统,并编写了PC机端直观的数据观测界面程序,为现代化仓库的集中管理提供了条件。关键词:SHT11;AT89S51;串口通信;仓库温湿度监测系统毕业设计(论文)外文摘要Title : Small Storage Temperature & Humidity Monitoring SystemAbstract:Multipoints monitoring is necessary for storage exact temperature & humidity controlling system
3、 For this reason,we use several digital temperature & humidity sensors to design the storage monitoring system,It can make the software and hardware designing easier and the measuring precision higher Firstly,the paper,introduces SHTl1s structure characters,I/O connecting circuit and working schedul
4、e The scheme that how to design the software and hardware of temperature & humidity measuring system by using several SHTl1 is presented Initially,A temperature &humidity measuring system based on AT89S51 is designedThe advantages of the system are simple hardware,less I/O resource,selfdisplaying an
5、d long distance communicationFurthermore,A data observation interface in the PC terminal is programmed,which can provide A good condition for concentrative management of modern storageKeywords: SHTll;AT89S51;Connection to serial interface;Storage Temperature & Humidity Monitoring System目录 TOC o 1-3
6、h z u HYPERLINK l _Toc256940102 一、引言 PAGEREF _Toc256940102 h 5 HYPERLINK l _Toc256940103 1.1设计目的 PAGEREF _Toc256940103 h 5 HYPERLINK l _Toc256940104 1.2设计要求 PAGEREF _Toc256940104 h 5 HYPERLINK l _Toc256940105 二、系统总体设计 PAGEREF _Toc256940105 h 6 HYPERLINK l _Toc256940106 2.1信号采集 PAGEREF _Toc256940106
7、h 6 HYPERLINK l _Toc256940107 2.1.1温湿度传感器 PAGEREF _Toc256940107 h 7 HYPERLINK l _Toc256940108 2.1.2 SHT11性能特点 PAGEREF _Toc256940108 h 7 HYPERLINK l _Toc256940109 2.1.2 SHT11的功能管脚及实物 PAGEREF _Toc256940109 h 8 HYPERLINK l _Toc256940110 2.1.3 SHT11内部结构和工作原理 PAGEREF _Toc256940110 h 9 HYPERLINK l _Toc256
8、940111 2.1.5 硬件设计 PAGEREF _Toc256940111 h 9 HYPERLINK l _Toc256940112 2.1.6 软件设计 PAGEREF _Toc256940112 h 11 HYPERLINK l _Toc256940113 2.2 单片机AT89S51 PAGEREF _Toc256940113 h 16 HYPERLINK l _Toc256940114 2.2.1 单片机AT89S51的结构及组成 PAGEREF _Toc256940114 h 17 HYPERLINK l _Toc256940115 2.2.2 单片机AT89S51的引脚 PA
9、GEREF _Toc256940115 h 18 HYPERLINK l _Toc256940116 2.2.3 存储器 PAGEREF _Toc256940116 h 21 HYPERLINK l _Toc256940117 2.2.4Flash 闪速存储器的编程 PAGEREF _Toc256940117 h 23 HYPERLINK l _Toc256940118 2.2.5 单片机最小系统的硬件电路 PAGEREF _Toc256940118 h 28 HYPERLINK l _Toc256940119 2.3 通信模块 PAGEREF _Toc256940119 h 29 HYPER
10、LINK l _Toc256940120 2.3.1 RS-232、RS-485及其接口电路 PAGEREF _Toc256940120 h 30 HYPERLINK l _Toc256940121 2.3.2 串口的基本接线方法 PAGEREF _Toc256940121 h 32 HYPERLINK l _Toc256940122 2.4 电源模块 PAGEREF _Toc256940122 h 33 HYPERLINK l _Toc256940123 2.4.1 芯片LM7805 PAGEREF _Toc256940123 h 33 HYPERLINK l _Toc256940124 2
11、.5 硬件设计综述 PAGEREF _Toc256940124 h 34 HYPERLINK l _Toc256940125 三、软件设计 PAGEREF _Toc256940125 h 35 HYPERLINK l _Toc256940126 3.1 AT89S51软件设计 PAGEREF _Toc256940126 h 35 HYPERLINK l _Toc256940127 3.1.1 软件结构设计 PAGEREF _Toc256940127 h 35 HYPERLINK l _Toc256940128 3.2 PC机数据接收界面设计 PAGEREF _Toc256940128 h 38
12、 HYPERLINK l _Toc256940129 四、系统调试 PAGEREF _Toc256940129 h 38结论致谢参考文献一、引言1.1设计目的防潮、防霉、防腐是仓库日常工作的重要内容,是衡量仓库管理质量的重要指标。它直接影响到储备物资的使用寿命和工作可靠性。为保证日常工作的顺利进行,首要问题是加强仓库内温度与湿度的监测工作。但传统的方法是用与湿度表、毛发湿度表、双金属式测量计和湿度试纸等测试器材,通过人工进行检测,对不符合温度和湿度要求的库房进行通风、去湿和降温等工作。这种人工测试方法费时费力、效率低,且测试的温度及湿度误差大,随机性大。因此我们需要一种造价低廉、使用方便且测量
13、准确的温湿度测量仪。 1.2设计要求一、基本功能检测温度、湿度实时显示温度、湿度设定温湿度限定值过限报警主要技术参数 温度检测范围 : 0+100(可软件调整)测量精度 : 1湿度检测范围 : 0%-100%RH(可软件调整)检测精度 : 1%RH显示方式 : 后台实时显示报警方式 : 后台报警 二、系统总体设计本设计是以AT89S51为CPU的一套检测系统,其中涉及到温湿度检测、矩阵键盘、报警电路、单片机、后台显示等部分的设计。图2-1 系统总体框图 本设计由信号采集、信号分析、信号处理和电源四个部分组成的。 (一) 信号采集 由多个数字式温湿度传感器SHT11组成; (二) 信号分析 由单
14、片机AT89S51组成; (三) 信号处理 由后台软件组成。 2.1信号采集本设计利用传感器技术进行信号采集,为单片机提高数据。传感器是实现测量与控制的首要环节,是测控系统的关键部件,如果没有传感器对原始被测信号进行准确可靠的捕捉和转换,一切准确的测量和控制都将无法实现。工业生产过程的自动化测量和控制,几乎主要依靠各种传感器来检测和控制生产过程中的各种参量,使设备和系统正常运行在最佳状态,从而保证生产的高效率和高质量。本设计使用了数字式温湿度传感器SHT11。2.1.1温湿度传感器温湿度的测量在仓储管理、生产制造、气象观测、科学研究以及日常生活中被广泛应用,传统的模拟式湿度传感器一般都要设计信
15、号调理电路并需要经过复杂的校准和标定过程,因此测量精度难以保证,且在线性度、重复性、互换性、一致性等方面往往不尽人意。SHT11是瑞士Sensirion公司生产的具有I2C总线接口的单片全校准数字式相对湿度和温度传感器。该传感器采用独特的CMOSens TM技术,具有数字式输出、免调试、免标定、免外围电路及全互换的特点。该传感器将CMOS芯片技术与传感器技术结合起来,从而发挥出它们强大的优势互补作用。2.1.2 SHT11性能特点 SHT11温湿度传感器的主要特性如下:将温湿度传感器、信号放大调理、A/D转换、I2C总线接口全部集成于一芯片(CMOSens TM技术);可给出全校准相对湿度及温
16、度值输出;带有工业标准的I2C总线数字输出接口;具有露点值计算输出功能;具有卓越的长期稳定性;湿度值输出分辨率为14位,温度值输出分辨率为12位,并可编程为12位和8位;小体积(7.655.0823.5),可表面贴装;具有可靠的CRC数据传输校验功能;片内装载的校准系数可保证100互换性;电源电压范围为2.45.5;电流消耗,测量时为550,平均为28,休眠时为3;2.1.2 SHT11的功能管脚及实物图 2-1 SHT11 引脚说明图 2-2 SHT11 实物 SHT11温湿度传感器采用SMD(LCC)表面贴片封装形式,管脚排列如图2-2所示,其引脚说明如下:(1)GND:接地端;(2)DA
17、TA:双向串口数据线;(3)SCK:串口时钟输入;(4)VDD电源端:2.45.5电源端;(58)NC:空管脚2.1.3 SHT11内部结构和工作原理温湿度传感器SHT11将温度感测、湿度感测、信号变换、AD转换和加热器等功能集成到一个芯片上,其内部结构如图2-3所示。该芯片包括一个电容性聚合体湿度敏感元件和一个用能隙材料制成的温度敏感元件。这两个敏感元件分别将湿度和温度转换成电信号,该电信号首先进入微弱信号放大器进行放大;然后进入一个14位的AD转换器;最后经过二线串口数字接口输出数字信号。SHT11在出厂前,都会在恒湿或恒温环境巾进行校准,校准系数存储在校准寄存器中;在测量过程中,校准系数
18、会自动校准来自传感器的信号。此外,SHT11内部还集成了一个加热元件,加热元件接通后可以将SHT11的温度升高5左右,同时功耗也会有所增加。此功能主要为了比较加热前后的温度和湿度值,可以综合验证两个传感器元件的性能。在高湿(95RH)环境中,加热传感器可预防传感器结露,同时缩短响应时间,提高精度。加热后SHT11温度升高、相对湿度降低,较加热前,测量值会略有差异。图2-3 SHT11内部结构框图2.1.5 硬件设计2.1.5.1 SHT11与微控制器的连接SHT11通过I2C接口与微控制器连接,具体电路如图2-4所示。其中,串口时钟输入线(SCK):SCK用于微控制器与SHTll之间的通信同步
19、,而且由于SHTll接口包含了完全静态逻辑,所以并不存在最小SCK频率限制,即微控制器可以以任意低的速度与SHTll通信。串口数据线(DATA):DATA引脚是三态门结构,用于内部数据的输出和外部数据的输入。DATA在SCK时钟下降沿之后改变状态,并仅在SCK时钟上升沿后有效,所以微控制器可以在SCK高电平时读取数据,而当其向SHTll发送数据时则必须保证DATA线上的电平状态在SCK高电平段稳定;为了避免信号冲突,微控制器仅驱动DATA在低电平,在需要输出高电平的时候,微控制器将引脚置为高阻态,由外部的上拉电阻(如4.7k)将信号拉至高电平(如图2-4所示),从而实现高电平输出。图 2-4
20、典型I2C接口电路 2.1.5.2 硬件电路图 2-5 AT89S51和SHT11的硬件连接图SHTll是两线制的数据传输方式,具有I2C总线接口,在多点测量应用系统中通常是将多个SHTll分别独立地连接到微控制器I/O口上,微控制器通过对每一个SHTll进行测量操作,得到每一点的温湿度数据。但这样的连接方式存在两个主要缺点:(1)由于每个SHTll占用微控制器两个I/O口,所以微控制器有限的I/O口资源将制约着单个微控制器上所能测量的最大点数;(2)由于每个SHTll的测量所需时间是固定不变的,采用单独操作的逐个测量方式在多点测量系统中必然导致数据采集时间过长、控制滞后,从而影响控制系统性能
21、的提高。多个SHTll传感器和AT89S51的连接方式采取如下方案:各SHTll的SCK线接到AT89S51的同一个I/O口上,而DATA线则分别接到不同I/O口线上,需要注意的地方是:DATA数据线需要外接上拉电阻。这种连接方式有几个优点:首先,n个传感器只占用n+1个I/O口,比前述方式节省了n-1个I/O口,解决了多点测量系统中微控制器I/O口资源短缺和尽可能增加测量点之间的矛盾问题;其次,由于多个SHTll共用一条时钟线所以在每次测量中可以同时发出测量命令,多个传感器同时进行测量,只需一次等待时间则完成了整体数据的收集,大大缩短了数据采集时间,为控制系统快速响应提供了条件。硬件连接如图
22、2-5所示,本设计需要测试4个不同地方的温湿度情况,所以选择了4个SHT11传感器。2.1.6 软件设计2.1.6.1 工作时序SHTll测量过程包括4个部分:启动传输、发送测量命令、等待测量完成和读取测量数据,其中可能会涉及到启动传输时序、命令发送时序、读取数据时序和通信复位时序。微控制器首先用一组“启动传输”时序来表示数据传输的初始化,其时序图如图2-6所示:当SCK时钟高电平时DATA翻转为低电平;在DATA为低电平期间,SCK变为低电平,再翻转为高电平;随后是在SCK时钟高电平时DATA翻转为高电平。图2-6 “启动传输”时序在“启动传输”时序之后,微控制器可以向SHTll发送命令。命
23、令字节包括高3位的地址位(目前只支持000)和低5位的命令位。SHTll传感器共有5条用户命令,具体命令格式见表2-1所列表 2-1 SHTxx命令集 SHTll通过在数据传输的第8个SCK时钟周期下降沿之后,将DATA拉低来表示正确接收到命令,并第9个SCK时钟周期的下降沿之后释放DATA线(即恢复高电平),图2-7以微控制器发送湿度测量命令0000010l为例说明发送命令的时序。图2-7 命令发送时序微控制器发送一组测量命令后需要根据测量数据精确度81214bit分别等待大约1155210ms,而SHTll则通过拉低DATA表示测量结束,并且把测量结果存储在SHT11内部的存储器内,然后自
24、动进入空闲状态,等微控制器执行完其他任务后再来读取。测量数据读取前,微控制器先重新启动SCK,即SHTll拉低DATA,接着2字节的测量数据和1字节的CRC校验将由SHTll传送给微控制器。2字节的测量数据是从高字节的高位开始传送,并以CRC校验字节的确认为表示通信结束。微控制器需要通过拉低DATA来确认接收的每个字节,若不使用CRC校验位则微控制器可以在接收完测量数据的最低位后保持DATA为高电平来终止通信,图2-8给出了数据读取时序图。在测量和通讯结束后,SHT11自动转入休眠模式。图2-8 读取数据时序当遇到与SHT11通信发生错误时,微控制器可以通过发送通信复位序列重新复位SHT11的
25、串口接口。复位时序为DATA保持高电平时,触发SCK时钟9次或更多次,这就可以复位串口,而状态寄存器内容仍然保留,通信复位时序如图2-9所示图2-9通信复位时序2.1.6.2 寄存器配置SHT11传感器中的一些高级功能是通过状态寄存器来实现的,寄存器各位的类型及说明见表2-2所列。下面对寄存器相关位的功能说明: 位类型说 明缺 省7保留06读工检限(低电压检查)X5保留04保留03只用于试验,不可以使用02读/写加热0关1读/写不从OTP重下载0重下载0读/写1=8位相对湿度,12位温度分辨率。0=12位相对湿度,14位湿度分辨率012位相对湿度,14位湿度表2-2 SHT11状态寄存器类型及
26、说明(1)加热 使芯片中的加热开关接通后,传感器温度大约增加5,从而使功耗增加至8A(5V)。加热用途如下: 通过对启动加热器前后的温、湿度进行比较,可以正确地区别传感器的功能; 在相对湿度较高的环境下,传感器可通过加热来避免冷凝。 (2)低电压检测 SHT11工作时可以自行检测VDD电压是否低于2.45V,准确度为 0.1V。 (3)下载校准系数 为了节省能量并提高速度,OPT在每次测量前都要重新下载校准系数,从而使每一次测量节省8.2ms的时间。 (4)测量分辨率设定 将测量分辨率从14位(温度)和12位(湿度)分别减到12位和8位可应用于高速或低功耗场合。2.1.6.3 数据计算1. 相
27、对湿度为了补偿湿度传感器的非线性以获取准确数据,建议使用如下公式修正读数:RH=C+CS()+CS()(公式 2-1);式中S()为SHT11测得的相对湿度测量值;线性补偿系数C 、C、 C值见表2-3。S()CCC12 bit-40.0405-2.8108 bit-40.648-7.210表2-3 湿度转换系数由于实际温度与测试参考温度25(77)的显著不同, 应考虑湿度传感器的温度补偿:RH=(T-25)(t+tS()+RH(公式 2-2);温度补偿系数t 、t值见表 2-4。S()tt12 bit0.010.000088 bit0.010.00128图2-4温度补偿系数 从S()到RH的
28、对应关系参见图2-10。图2-10 S()转换到相对湿度2. 温度可用如下公式将数字输出转换为温度值:T = d+ dS()(公式 2-3);式中S()为SHT11温度测量值,特点系数d、d值见表2-5。S()dd14 bit0.010.01812 bit0.040.072VDDdd 5V-40.00-40.004V-39.75-39.503.5V-39.66-39.353V-39.60-39.282.5V-39.55-39.23表2-5温度转换系数3. 测量举例图2-11 “0000100100110001”“0000100100110001”=2353RH=C+CS()+CS()=-4+0
29、.04052353+-2.8102353=75.19 %RH(未包含温度补偿)2.2 单片机AT89S51本设计采用ATMEI公司的AT89S51芯片作为微控制器。AT89S51是一个低功耗,高性能 CMOS 8位单片机。主要性能参数: 与 MCS-51 产品指令系统完全兼容 4k 字节在系统编程(ISP)Flash 闪速存储器 1000 次擦写周期 4.05.5V 的工作电压范围 全静态工作模式: 0Hz 33MHz 三级程序加密锁 1288字节内部 RAM 32 个可编程 I /O 口线 2 个 16 位定时/计数器 6 个中断源 全双工串口 UART 通道 低功耗空闲和掉电模式 中断可从
30、空闲模唤醒系统 看门狗(WDT)及双数据指针 掉电标识和快速编程特性 灵活的在系统编程(ISP字节或页写模式) 2.2.1 单片机AT89S51的结构及组成AT89S51是由CPU、内部数据存储器RAM、内部程序存储器ROM、并行输入/输出(I/O)口、串口口、定时/计数器、中断系统、时钟电路等部分组成,它们均由单一总线连接并被集成在一块半导体芯片上,即组成了单片微型计算机。结构图如图2-12图 2-12 AT89S51内部结构2.2.2 单片机AT89S51的引脚AT89S51采用40管脚双列直插DIP封装,如图 2-13。图 2-13 AT89S51引脚图引脚功能说明: VCC :电源电压
31、 VSS :地 P0 口: P0 口是一组 8 位漏极开路型双向 I/0 口,也即地址/数据总线复用口。作为输出口用时,每位能驱动 8 个TTL逻辑门电路,对端口写“ l ”可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低 8 位)和数据总线复用,在访问期间激活内部上拉电阻。在 F1ash 编程时, P0 口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。 P1 口: Pl 是一个带内部上拉电阻的 8 位双向 I/O 口, Pl 的输出缓冲级可驱动(吸收或输出电流) 4 个 TTL 逻辑门电路。对端口写“l”,通过内部的上拉电阻把端口拉到
32、高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流( I)。Flash 编程和程序校验期间, Pl 接收低 8 位地址。P1.5、P1.6、P1.7可用于程序固化(下载)使用,如表 2-6。 表2-6 P2 口: P2 是一个带有内部上拉电阻的 8 位双向 I/O 口, P2 的输出缓冲级可驱动(吸收或输出电流)4个 TTL 逻辑门电路。对端口写“ 1 ”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(I)。在访问外部程序存储器或 16 位地址的外部数据存储器(
33、例如执行 MOVXDPTR 指令) 时, P2 口送出高 8 位地址数据。在访问 8 位地址的外部数据存储器(如执行MOVXRi 指令)时, P2 口线上的内容(也即特殊功能寄存器( SFR )区中 P2 寄存器的内容),在整个访问期间不改变。Flash 编程或校验时, P2 亦接收高位地址和其它控制信号。 P3 口: P3 口是一组带有内部上拉电阻的 8 位双向 I/0 口。 P3 口输出缓冲级可驱动(吸收或输出电流) 4 个 TTL逻辑门电路。对 P3 口写入“ l ”时,它们被内部上拉电阻拉高并可作为输入端口。作输入端时,被外部拉低的 P3 口将用上拉电阻输出电流(I)。P3 口除了作为
34、一般的 I/0 口线外,更重要的用途是它的第二功能,如下表2-7所示:P3 口还接收一些用于 Flash 闪速存储器编程和程序校验的控制信号。表2-7 RST :复位输入。当振荡器工作时, RST 引脚出现两个机器周期以上高电平将使单片机复位。 WDT 溢出将使该引脚输出高电平,设置 SFR AUXR 的 DISRT0 位(地址 8EH )可打开或关闭该功能。 DISRT0 位缺省为 RESET 输出高电平打开状态。 ALE/:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低 8 位字节。即使不访问外部存储器, ALE 仍以时钟振荡频率的1 /6 输出固定的正
35、脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个 ALE 脉冲。对 F1ash 存储器编程期间,该引脚还用于输入编程脉冲(PROG)。如有必要,可通过对特殊功能寄存器(SFR)区中的 8EH 单元的 D0 位置位,可禁止 ALE 操作。该位置位后,只有一条 M0VX 和 M0VC 指令 ALE 才会被激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置 ALE 无效。 :程序储存允许()输出是外部程序存储器的读选通信号,当 AT89S51 由外部程序存储器取指令(或数据)时,每个机器周期两次有效,即输出两个脉冲。当访问外部数据存储器,没有两次
36、有效的信号。 /VPP :外部访问允许。欲使 CPU 仅访问外部程序存储器(地址为0000H FFFFH),端必须保持低电平(接地)。需注意的是:如果加密位 LB1 被编程,复位时内部会锁存端状态。如端为高电平(接 Vcc 端), CPU 则执行内部程序存储器中的指令。F1ash 存储器编程时,该引脚加上 +12V 的编程电压 Vpp 。 XTALl :振荡器反相放大器及内部时钟发生器的输入端。 XTAL2 :振荡器反相放大器的输出端。 内置看门狗电路(WDT) :由十单片机的工作常常会受到来自外界电磁场的干扰,造成程序的跑飞而陷入死循环,这样会打断程序的正常运行,从而使单片机控制的系统无法继
37、续工作,造成整个系统陷入停滞状态,发生不可预料的后果。为了避免这种情况发生,本芯片内置了看门狗电路。所谓看门狗技术是一种程序监视技术,它不断的监视程序循环运行时间,当程序出现跑飞时而陷入死循环时,看门狗电路就会在它和单片机复位引脚相连的引脚上送出一个复位信号,使单片机发生复位,即程序从程序存储器的起始位置开始执行,这样便实现了单片机的自动复位,使单片机可以在无人状态下实现连续工作。2.2.3 存储器AT89C51内核采用程序存储器和数据存储器空间分开的结构,均具有 64KB 外部程序和数据的寻址空间。2.2.3.1程序存储器 用于存放编制好的程序和表格。ROM的0000H-002AH单元预留给
38、上电复位后引导程序地址及5个中断服务程序的入口地址,在实际应用系统中,主程序的存放从002BH单元开始。在程序存储器中有六个单元有特定的含义:0000H0002H:单片机复位后,PC=0000H即从此处开始执行指令。0003H000AH:外部中断0入口地址区。000BH0012H:定时器0溢出中断入口地址区。0013H001AH:外部中断1入口地址区。001BH0022H:定时器溢出中断入口地址区。0023H002AH:串口口中断入口地址区。使用时常在这些入口外安放一条绝对跳转指令,使程序跳转到拥护安排的中断处理程序的起始地址,或从0000H外执行一跳转指令,跳转到用户设计的初始程序入口。如果
39、 EA 引脚接地,全部程序均执行外部存储器。 若 EA 接Vcc,程序首先执行地址从0000H-0FFFH (4KB)内部程序存储器,再执行地址为 1000H-FFFFH(60KB)的外部程序存储器。2.2.3.2数据存储器数据存储器用于存放运算中间的结果、数据暂存、缓冲、标志位、待测程序等功能。片内的低128B的RAM地址为00H7FH,供用户做RAM用,但是在这中间的前32单元,00H1FH即引用地址寻址做用户RAM用,常常做工作寄存器区,分做四组,每组由8个单元组成通用寄存器R0R7,任何时候都由其中一组作为当前工作寄存器,通过RS0,RS1的内容来决定选择哪一个工作寄存器。片内RAM不
40、够用时,须扩展片外数据存储器。此时单片机通过P2口和P0口选出6位地址,使用ALE作低8位的锁存信号,再由P0口写入或读出数据。写时用,读时用做外部数据存储器的选通信号。2.2.3.3 特殊功能寄存器SFR在内部数据存储器的80HFFH的高128B单元中有21个特殊功能寄存器SFR,其余单元现无定义,用户不能对这些单元进行读写操作。它们用来管理CPU和I/O口以及内部逻辑部件,在指令中专用寄存器是以存储单元方式被读写的,专用寄存器虽有名称,但寻址时都做专用寄存器用,它们的地址是与片内RAM的地址相连的。下面就专用寄存器作以简单的介绍:累加器A:在绝大多数情况下它参与运算的一方并存放运算的结果。
41、寄存器B:进行乘除运算时,寄存器B有特定的用途,在乘时存放一个乘数以及积的最高位,A中存放另一个乘数以及积的低位。除法时,B中存放除数及余数,而在A中存放被除数和商,其他情况可作为普通寄存器用。堆栈指针SP:在子程序调用或中断时,用来暂存数据和地址,它按先进后出的原则存储数据,它是一个八位寄存器它指出堆栈顶部在片内RAM中的位置,系统复位后,SP变成07H,使堆栈从00单元开始。;数据指针DPTR:由两个字节组成,DPH字地址由83H,DPL由82H,存放一个16位的二进制数做地址用。程序状态字PSW:8位寄存器,存放程序执行过程中的各种信息。Flash 闪速存储器的编程2.2.4.1并行编程
42、 AT89s51 单片机内部有 4k 字节的可快速编程的 Flash 存储阵列。编程方法可通过传统的 EPROM 编程器使用高电压(+12V)和协调的控制信号进行编程。AT89S51 的代码是逐一字节进行编程的。编程方法:编程前,须按编程模式表(表 2-7)和图 2-14、图 2-15 所示设置好地址、数据及控制信号,AT89S51 编程方法如下: 1 在地址线上加上要编程单元的地址信号。 2 在数据线上加上要写入的数据字节。 3 激活相应的控制信号。 4 将/VPP端加上 +12V 编程电压。 5 每对 Flash 存储阵列写入一个字节或每写入一个程序加密位,加上一个 ALE/编程脉冲。每个
43、字节写入周期是自身定时的,大多数约为50us 。改变编程单元的地址和写入的数据,重复 1-5步骤,直到全部文件编程结束。数据查询:AT89S5l 单片机用数据查询方式来检测一个写周期是否结束,在一个写周期中,如需读取最后写入的那个字节,则读出的数据的最高位(P0.7)是原来写入字节最高位的反码。写周期完成后,有效的数据就会出现在所有输出端上,此时,可进入下一个字节的写周期,写周期开始后,可在任意时刻进行数据查询。Ready/:字节编程的进度可通过“RDY/BSY”输出信号监测,编程期间,ALE 变为高电平“H”后 P3.0 端电平被拉低,表示正在编程状态(忙状态)。编程完成后,P3.0 变为高
44、电平表示准备就绪状态。程序校验:如果加密位LB1、LB2没有进行编程,则代码数据可通过地址和数据线读回原编写的数据,各加密位也可通过直接回读进行校验。读片内签名字节:AT89S51单片机内有3个签名字节,地址为 000H、100H 和200H 。用于声明该器件的厂商和型号等信息,读签名字节的过程和正常校验相仿,只需将 P3.6 和 P3.7 保持低电平,返回值意义如下: (000H)=1EH 声明产品由 ATMEL 公司制造 (100H)=51H 声明为 AT89S51 单片机 (200H)=06H芯片擦除:在并行编程模式,利用控制信号的正确组合并保持 ALE/ 引脚 200ns-500ns
45、的低电平脉冲宽度即可完成擦除操作。在串口编程模式,芯片擦除操作是利用擦除指令进行。在这种方式,擦除周期是自身定时的,大约为 500ms。擦除期间,用串口方式读任何地址数据,返回值均为 00H 。表 2-7 Flash 编程模式注: 1 芯片擦除每一 PROG 脉冲为 200ns-500ns 。 2 写代码数据每一 PROG 脉冲为 200ns-500ns 。 3 写加密位每一 PROG 脉冲为 200ns-500ns 。 4 编程期间 P3.0 引脚输出 RDY/BSY 信号。 5 “”不需理会。 图 2-14 Flash存储器编程(并口模式) 图 2-15 Flash存储器校验(并口模式)数
46、据查询:2.2.4.2串口编程将 RST 接至 Vcc,程序代码存储阵列可通过串口 ISP 接口进行编程,串口接口包含SCK线、MOSI(数据输入)和 MISO(数据输出)线。将RST拉高后,在其它操作前必须发出编程使能指令,编程前需将芯片擦除。芯片擦除则将存储代码阵列全写为 FFH 。外部系统时钟信号需接至 XTAL1 端或在 XTALl 和 XTAL2 接上晶体振荡器。最高的串口时钟(SCK)不超过 l/16 晶体时钟,当晶体为 33MHz 时,最大 SCK 频率为 2MHz 。 编程方法:1 上电次序:将电源加在 Vcc 和 GND 引脚, RST 置为“ H ”,如果 XTAL 和 X
47、TAL2 接上晶体或者在 XTAL1 接上 3-33MHz 的时钟频率,等候 10ms 。 2 将编程使能指令发送到 MOSI(Pl.5),编程时钟接至 SCK(Pl.7),此频率需小于晶体时钟频率的 l/16 。 3 代码阵列的编程可选字节模式或页模式。写周期是自身定时的,一般不大于 0.5ms(5V 电压时)。 4 任意代码单元均可 MISO(Pl.6)和读指令选择相应的地址回读数据进行校验。 5 编程结束应将 RST 置为“L”以结束操作。 6 断电次序:如果需要的话按这个方法断电,假如没有使用晶体,将 XATL 置为低,RST 置低,关断 Vcc 。数据查询:数据校验也可在串口模式下进
48、行,在这个模式,在一个写周期中,通过输出引脚 MISO 串口回读一个字节数据的最高位将为最后写入字节的反码。串口编程指令设置:串口编程指令设置为一个4字节协议,参见表2-8 。并行编程接口:采用控制信号的正确组合可对 Flash 闪速存储阵列中的每一代码字节进行写入和存储器的整片擦除,写操作周期是自身定时的,初始化后它将自动定时到操作完成。图 2-16 Flash存储器串口下载 表 2-8 Flash串口编程指令注: 1. 当 LB3 和 LB4 加密位已编程时则不可读签名字节。 2. B1=0 B2=0 ,方式 1 ,无加密保护 B1=0 B2=l ,方式 2 ,加密位 LBl B1=1 B
49、2=0 ,方式 3 ,加密位 LB2 B1=1 B2=1 ,方式 4 ,加密位 LB3各加密位在方式 4 执行前需按顺序逐一操作。复位信号为“ H ”后,建立数据前使 SCK 为低电平至少为 64 个系统时钟周期,复位脉冲是必须的。 SCK 时钟频率不得大于 XTAL1 时钟的 1/ 16 。 在页读/写模式,数据总是从地址 00 开始直到 255。命令字节后紧跟着高 4 位地址,全部数据单元 256 字节会逐一进行读/写,此时下个指令将准备译码。2.2.5 单片机最小系统的硬件电路单片机要能正常工作必须要有时钟和复位电路,单片机芯片+复位电路+时钟电路,构成单片的最小运行环境,如图2-17所
50、示。图2-172.2.5.1复位电路单片机复位是使CPU和系统中的其他功能部件都处在一个确定的状态,并从这个状态开始工作,PC=0000H,从第一单元取指令执行。单片机复位电路如图图2-17,图中提供上电复位和按键复位两种方式。复位条件是:必须使RST引脚上加上持续两个机器周期以上的高电平,点偏激才有效复位。2.2.5.2时钟电路 时钟电路是用来产生AT89S51单片机工作时所必须的时钟信号,AT89S51本身就是一个复杂的同步时序电路,为保证工作方式的实现,AT89S51在唯一的时钟信号的控制下严格的按时序执行指令进行工作 ,时钟的频率影响单片机的速度和稳定性。通常时钟由于两种形式:内部时钟
51、和外部时钟。我们系统采用内部时钟方式来为系统提供时钟信号。AT89S51内部有一个用于构成振荡器的高增益反向放大器,该放大器的输入输出引脚为XTAL1和XTAL2,它们跨接在晶体振荡器和用于微调的电容,便构成了一个自激励振荡器电路中的C1、C2的选择在30PF左右,但电容太小会影响振荡的频率、稳定性和快速性。晶振频率为在1.2MHZ12MHZ之间,频率越高单片机的速度就越快,但对存储器速度要求就高。为了提高稳定性我们采用温度稳定性好的NPO电容,采用的晶振频率为12(11.0592)MHZ。因此,本设计的机器周期为1us。2.3 通信模块通信模块用于AT89S51和后台PC间的通信 ,AT89
52、S51通过串口通信把温湿度数据传送给PC机,显示在用VC编辑一个温湿度显示的界面上,从而有利于后台PC的实时监测仓库温湿度情况。通信部分主要由一个MAX232A和两个MAX485构成:其中MAX232A和一个MAX485共同组成PC端的信号转换部分即RS232-485转换器;而另一个MAX485则作为单片机AT89S51端的信号转换部分。由于RS485传输最长距离达1.5km,允许多个发送器连接到同一条总线上,同时增加了发送器的驱动能力和冲突保护特性,所以更好的解决了仓库分布零散和集中管理的矛盾,也为仓库远程控制提供了条件。如图2-18 通信模块: 图2-18 通信模块RS232-485转换器
53、主要包括了电源、232电平转换、485电路三部分。本电路的232电平转换电路直接使用 MAX232A集成电路,485电路采用了MAX485集成电路。为了使用方便,电源部分设计成无源方式,整个电路的供电直接从PC机的RS232接口中的 DTR(4脚)和RTS(7脚)窃取。PC串口每根线可以提供大约9mA的电流,因此两根线提供的电流足够供给这个电路使用了。经实验,本电路只使用其中一条线也能够正常工作。使用本电路需注意PC程序必须使串口的DTR和RTS输出高电平,经过D3稳压后得到VCC。MAX485是通过两个引脚RE(2脚)和DE(3脚)来控制数据的输入和输出。当RE为低电平时,MAX485数据输
54、入有效;当DE为高电平时, MAX485数据输出有效。在半双工使用中,通常可以将这两个脚直接相连,然后由PC或者单片机输出的高低电平就可以让MAX485在接收和发送状态之间转换。由于本电路DTR和RTS(DB9的4、7脚)都用于了电路供电,因此使用MAX232的另外一个通道(MAX232的9脚)及Q1来控制MAX485的状态切换。一般MAX232的9脚输出高电平,Q1导通,使MAX485的RE和DE为低电平而处于数据发送状态。当PC机发送数据时,MAX232的9脚输出低电平,Q1截止,使MAX485的RE和DE为高电平而处于数据接受状态。2.3.1 RS-232、RS-485及其接口电路RS-
55、232与RS-485都是串口数据接口标准。RS-232的传送距离最大约为15米,最高速率为20kb/s,RS-232是为点对点(即一对收、发设备)通讯而设计的接口标准,RS232只适合于本地通讯使用。RS-485接口标准传输最长距离达1.5km,增加了多点、双向通信能力,即允许多个发送器连接到同一条总线上,同时增加了发送器的驱动能力和冲突保护特性,扩展了总线共模范围。MAX232A和MAX485分别是RS-232和RS-485接口标准的接口电路芯片,如图2-19、图2-20:图2-19 MAX232内部结构基本可分三个部分:第一部分是电荷泵电路。由1、2、3、4、5、6脚和4只电容构成。功能是
56、产生+12v和-12v两个电源,提供给RS-232串口电平的需要。第二部分是数据转换通道。由7、8、9、10、11、12、13、14脚构成两个数据通道。13脚(R1IN)、12脚(R1OUT)、11脚(T1IN)、14脚(T1OUT)为第一数据通道。8脚(R2IN)、9脚(R2OUT)、10脚(T2IN)、7脚(T2OUT)为第二数据通道。TTL/CMOS数据从T1IN、T2IN输入转换成RS-232数据从T1OUT、T2OUT送到电脑DB9插头;DB9插头的RS-232数据从R1IN、R2IN输入转换成TTL/CMOS数据后从R1OUT、R2OUT输出。第三部分是供电。15脚GND、16脚V
57、CC(+5v)。图2-20 MAX4852脚(RE):接收器输出使能端。RE低电平,RO有效;RE高电平,RO成高阻状态。3脚(DE):驱动器输出使能端。高电平,A、B有效,即器件作线驱动器用;低电平,A、B成高阻,即器件作线接收器用。1脚(RO):接收器输出。若A比B大200mV,RO为高;若A比B小200mV,RO为低。4脚(DI):驱动器输入。6脚(A):同相接收器输入和同相接收器输出7脚(B):反相接收器输入和反相接收器输出5脚:GND。8脚:VCC(+4.75+5.25v)。2.3.2 串口的基本接线方法 目前较为常用的串口有9针串口(DB9)和25针串口(DB25),通信距离较近时
58、(15m),可以用电缆线直接连接标准RS232端口,若距离较远,需附加调制解调器(MODEM)。最为简单且常用的是三线制接法,即地、接收数据和发送数据三脚相连,且直接用RS232相连。 1.DB9和DB25的常用信号脚说明9针串口(DB9)25针串口(DB25)针号功能说明缩写针号功能说明缩写1数据载波检测DCD8数据载波检测DCD2接收数据RXD3接收数据RXD3发送数据TXD2发送数据TXD4数据终端准备DTR20数据终端准备DTR5信号地GND7信号地GND6数据设备准备好DSR6数据准备好DSR7请求发送RTS4请求发送RTS8清除发送CTS5清除发送CTS9振铃指示DELL22振铃指
59、示DELL表 2-9 常用信号脚2.RS232串口接线方法(三线制)串口传输数据只要有接收数据针脚和发送针脚就能实现: 9针9针25针25针9针25针233222322333557757表 2-10 接线方法2.4 电源模块 本设计需要+5V电源为整个系统供电,电源模块以芯片LM7805为核心设计成输出+5直流电压的稳压电源电路。 电源模块是有电源变压器变压器、整流、滤波和稳压电路等四部分组成。电源变压器将交流220V变为9V左右交流电压,然后通过整流桥将交流电变为脉动的直流电压。由于此脉动直流电压还包含较大的纹波,必须通过滤波电路加以滤波,C13、C14分别为输入端和输出端滤波电容,并利用芯
60、片LM7805进行稳压,当输出电较大时,7805应配上散热板。具体电路如图 2-21 7805稳压电源:如图 2-21 7805稳压电源2.4.1 芯片LM7805LM7805系列为3端正稳压电路 ,TO-220封装,能提供多种固定的输出电压,应用范围广。内含过流、过热和过载保护电路。带散热片时,输出电流可达 1A 。虽然是固定稳压电路,但使用外接元件,可获得不同的电压和电流。外形及引脚排列见图 2-22。 主要特点: 输出电流可达 1A 输出电压有: 5V 过热保护 短路保护 输出晶体管SOA保护图 2-22图 2-23功能框图2.5 硬件设计综述图 2-24 扩展系统 根据RS-485标准
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 企业员工书写规范方案
- 酒店客房空调安装施工方案
- 环保行业劳务派遣服务方案
- 2024至2030年中国电机冲片行业投资前景及策略咨询研究报告
- 2024至2030年中国有机玻璃步步高烛台行业投资前景及策略咨询研究报告
- 2024至2030年去油清爽紧肤霜项目投资价值分析报告
- 2024年楼顶广告牌项目可行性研究报告
- 2024年标准压力式喷雾干燥机项目可行性研究报告
- 2024年恒温水槽试验机项目可行性研究报告
- 2024年全能竖筒式绷缝机项目可行性研究报告
- 永久避难硐室避险安全知识课件
- 女性的情绪及压力管理
- 腰椎骨折查房护理课件
- 养生祛病一碗汤
- 中国手机租赁行业市场发展前景研究报告-智研咨询发布
- 预防接种工作规范(2023年版)解读课件
- 老年慢性支气管炎的健康宣教
- 大国工匠技能报国课件
- 制冷与空调设备运行操作作业
- 《劳动教育通论》劳动的环境:社会与市场中的劳动
- 防火墙端口日志分析与审计
评论
0/150
提交评论