《罗官跃单片机实训报告》由会员分享,可在线阅读,更多相关《罗官跃单片机实训报告(30页珍藏版)》请在金锄头文库上搜索。
1、.成 绩批阅教师日 期实训报告 课 程 单片机实训 姓 名 罗官跃 学 号 2012118504130 班 级 电信1212 日 期 2015.3.20 .目录1.摘要22.系统方案设计21.方案的阐述与论证22.方案设计33. 系统硬件电路设计43.1单片机最小系统43.2显示电路63.3键盘电路83.4报警电路93.5温度传感器94. 系统软件编程设计134.1 DS18B20程序设计144.2温度读取转换程序174.3温度显示程序215.心得体会246. 参考文献25 1.摘要 在人类的生活环境中,温度扮演着极其重要的角色。无论你生活在哪里,从事什么工作,无时无刻不在与温度打着交道。自1
2、8世纪工业革命以来,工业发展对是否能掌握温度有着绝对的联系。在冶金、钢铁、石化、水泥、玻璃、医药等等行业,可以说几乎%80的工业部门都不得不考虑着温度的因素。温度对于工业如此重要,由此推进了温度传感器的发展。 温度是一个永恒的话题和人们生活环境有着密切关系的物理量,也是一种在生产、 科研、生活中需要测量和控制的重要物理量,是国际单位制七个基本量之一。温度的 变化会给我们的生活、工作、生产等带来重大影响,因此对温度的测量至关重要。其 测量控制一般使用各式各样形态的温度传感器。随着现代计算机和自动化技术的发展, 作为各种信息的感知、采集、转换、传输相处理的功能器件,温度传感器的作用日显 突出,已成
3、为自动检测、自动控制系统和计量测试中不可缺少的重要技术工具,其用 途已遍及工农业生产和日常生活的各个领域。本课题主要介绍基于 AT89C51 单片机和 DS18B20 数字温度传感器的温度测量系 统。该系统利用 AT89C51 单片机分别采集各个温度点的温度,实现温度显示、报警等 功能。它以 AT89C51 单片机为主控制芯片,采用数字温度传感器 DS18B20 实现温度的 检测,测量精度可以达到 0.5。该系统采用了 1602显示模块,形象直观的显示测出的 温度值。基于 AT89C51 单片机的单总线温度测控系统具有硬件组成简单、读数方便、 精度高、测温范围广等特点,在实际工程中得到广泛应用
4、。 2.系统方案设计1.方案的阐述与论证 基于 DS18B20 的温度测量系统是一种分布式的温度测量系统,它可以远程对温度 实现测量和监控,广泛应用于电力工业、煤矿、森林、火灾、高层建筑等场合,按照DS18B20的通信协议,由主机向 DS18B20 发送命令,读取 DS18B20 转换的温度,从而实现对环境的温度的测量,当温度超过一定的值时,报警器开始报警。采用智能温度传感器 DS18B20,它直接输出数字量,精度高,电路简单,只需要模拟 DS18B20的读写时序,根据 DS18B20 的协议读取转换的温度。 采用美国Dallas半导体公司推出的数字温度传感器DS18B20,属于新一代适配微处
5、理器的智能温度传感器。它具有独特的单总线接口,仅需要占用一个通用I/0端口即可完成与微处理器的通信。全部传感元件及转换电路集成在形如一只三极管的集要求通过简单的编程实现912位的数字值读数方式。其可以分别9375ms和750ms内完成9位和12位的数字量,最大分辨率为0.0625 , 而且从DS18B20读出或写入DS18B20的信息仅需要一根口线(单线接口)读写。它有如下的性能特点: (1)独特的单线接口,既可通过串行口线,也可通过其它I/O口线与微机接口,无需变换其它电路,直接输出被测温度值; (2)多点能力使分布式温度检测应用得以简化; (3)不需要外部元件; (4) 既可用数据线供电,
6、也可采用外部电源供电; (5)不需备份电源; (6) 测量范围为-55+125 , 固有测温分辨率为05 ; (7)通过编程可实现912位的数字读数方式; (8)用户可定义非易失性的温度告警设置; (9)警告搜索命令能识别和寻址温度在编定的极限之外的器件(温度警告情况); (10)应用范围包括恒温控制、工业系统、消费类产品、温度计或任何热敏系统。以上特性使得DS18B20非常适用于构建高精度、多点温度测量系统。2.方案设计 该方案使用了 AT89C51单片机作为控制核心,以智能温度传感器 DS18B20 为温度测量元件,对各点温度进行检测,设置温度上下限,超过其温度值就报警。显示电路采1602
7、 液晶模块显示,电阻和蜂鸣器组成的报警电路。DS18B20温 度传感器数据采集单片机1602 液晶显示电路报警电路。 图 1 温度测量系统方案框3. 系统硬件电路设计 课题研究的多点测温系统是以单片机和单总线数字温度传感器DS18B20为核心,充分利用单片机优越的内部和外部资源及数字温度传感器DS18B20的优越性能构成一个完备的测温系统,实现对温度的多点测量。整个系统由单片机控制,能够接收传感器的温度数据并显示出来,可以从键盘输入命令,系统根据命令,选择对应的温度传感器,并由驱动电路驱动温度显示。本课题设计了一种合理、可行的单片机监控软件,完成测量和显示的任务。由于单片机具有强大的运算和控制
8、功能,使得整个系统具有模块化、硬件电路简单以及操作方便等优点。本课题的整个系统是由单片机、显示电路、键盘电路、报警电路,温度传感器等构成。3.1单片机最小系统 在当今新科学技术飞速发展的年代里,单片机的应用已越来越受到人们的重视,它被广泛的应用于家电、医疗、智能仪表、工业自动化等各个领域。单片机全称单片微型计算机,是将计算机的基本部分微型化,使之集成在一块芯片上的微机。Motorola 公司的M 6800系列单片机。Intel公司的MCS96系列单片机以及Microchip 公司的PIC 系列单片机。片内含有CPU、ROM、RAM、并行I/O口、串行I/O口、定时/计数器、A/D、D/A、中断
9、控制、系统时钟及系统总线等。本课题是利用Intel的89c51控制整个系统。89c51单片机包含下列几个部件:1个8位CPU、1个片内震荡器及时钟电路、4KB ROM程序存储器、128B RAM数据存储器、可寻址64KB外部数据存储器和64KB外部程序存储器的控制电路、32条可编程的I/O线、2个16位的定时/计数器、1个可编程全双工串行接口、5个中断源、2个优先级嵌套中断结构。本课题运用Intel公司的8051进行系统控制,运用到了复位电路,时钟电路,串口,I/O口。复位电路:无论哪种单片机,都会涉及到复位电路。如果复位电路不可靠,在工作中就有可能出现“死机”,“程序走飞”等现象。所以,一个
10、单片机复位电路的好坏,直接影响到整个系统工作的可靠性。复位操作完成单片机片内电路的初始化,使单片机从一种确定的状态开始运行。当89c51单片机的复位引脚RST出现5ms以上的高电平时,单片机就完成了复位操作,如果RST持续为高电平,单片机就处于循环复位状态,而无法执行程序,因此要求单片机复位后能脱离复位状态。复位操作通常有上电和开关复位。上电复位要求接通电源后,自动实现复位操作。开关复位要求在电源接通的条件下,在单片机运行期间,如果发生死机,用按钮开关操作使单片机复位。常用的上电复位且开关复位电路如图3.6所示,上电后,由于电容充电,使RST持续一段高电平时间。当单片机已在运行之中时,按下复位
11、键也能使RST持续一段时间的高电平,从而实现上电且开关复位的操作。单片机的复位操作使单片机进入初始化过程,其中包括是程序计数器PC=0000H,P0-P3=FFH,SP=07H,其他寄存器处于零,程序从0000H地址单元开始执行,单片机复位后不改变片内RAM区中的内容。图 2单片机最小系统时钟电路:89c51单片机的时钟信号通常用内部振荡和外部振荡方式。在引脚XTAL1和XTAX2外接晶体振荡器,就够成了内部振荡方式。由于单片机内部有一个高增益反相放大器,当外接晶振后,就构成了自激振荡器并产生振荡时钟脉冲。晶振通常选用6MHZ、12MHZ或24MHZ。内部振荡器方式如下。如图3.7,电容器C1
12、、C2起稳定振荡频率、快速起振的作用,电容值一般为5-30PF。内部振荡方式所得的时钟信号比较稳定。外部振荡方式是把已有的时钟信号引入单片机内,这种方式适于用于用来使单片机的时钟与外部信号保持一致。3.2显示电路采用技术成熟,价格便宜的 1602液晶显示器做为输出显示。本次设计使用的 1602 液晶显示器为 5V 电压驱动,带背光,可显示两行,每行 16 个字符,不能显示汉字, 内置 128个字符的 ASCII 字符集字库,只有并行接口,无串行接口。1602型液晶接口信号说明如表图3所示编号符号引脚说明编号符号引脚说明1VSS电源地9D2数据口2VDD电源正极10D3数据口3VO液晶显示器对比
13、度调节端11D4数据口4RS数据命令选择端12D5数据口5RW读写选择端(HL)13D6数据口6E使能信号14D7数据口7D0数据口15BLA背光电源正极8D1数据口16BKL背光电源负极图 3 1602型液晶接口信号说明图基本操作时序 读状态 输入:RS=L, R/W=H,E=H 输出:D0D7=状态字。 读数据 输入:RS=H, R/W=H,E=H 输出:无。 写指令 输入:RS=L, R/W=L,D0D7=指令码,E=高脉冲 输出:D0D7=数据。 写数据 输入:RS=H, R/W=L, ,D0D7=数据,E=高脉冲 输出:无 写操作时序图 4液晶写操作时序图分析时序图可知操作 1602
14、 液晶的流程如下: 通过 RS 确定是写数据还是写命令。写命令包括使液晶的光标显示/不显示、光标闪烁/不闪烁、不需要移屏、在液晶的什么位置显示,等等。写数据是指要显示 什么内容。 (2)读/写控制端设置为写模式,即低电平。 (3)将数据或命令送达数据线上。 (4)给 E 一个高脉冲将数据送入液晶控制器,完成写操作。(注:tsp1-地址建立时 间(30ns) tsp2-数据建立时间 (40ns) tHD1 地址保持时间(10ns )tHD2 数据保持时间 (20us) tpw 脉冲宽度(150us) tR tF 上升/下降沿时间(小于 25us)ValidData-数 据 )3.3键盘电路图 5
15、按键电路图 系统中的按键电路是由三个魔码开关组成,并与单片机的P3.5P3.7相连,可以对温度的上下限进行设定。3.4报警电路图 6声光报警电路 系统中的报警电路是由三极管,蜂鸣器,发光二极管和限流电阻组成,并与单片机的 P3.4P3.3 端口连接。3.5温度传感器 温度传感器的单总线(1-Wire)与单片机的P2.3 连接,P2.3 是单片机的高位地址线。P2 端口是一个带内部上拉电阻的 8 位双向 IO,其输出缓冲级可驱动(吸收或 输出电流)4 个 TTL 逻辑门电路。对该端口写“1”,可通过内部上拉电阻将其端口拉至 高电平,此时可作为输入口使用,这是因为内部存在上拉电阻,某一引脚被外部信号 拉低时会输出