ImageVerifierCode 换一换
格式:DOCX , 页数:40 ,大小:688.55KB ,
资源ID:1008944      下载积分:30 文钱
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,省得不是一点点
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.wenke99.com/d-1008944.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于单片机的无线温度计设计报告.docx)为本站会员(龙***)主动上传,文客久久仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文客久久(发送邮件至hr@wenke99.com或直接QQ联系客服),我们立即给予删除!

基于单片机的无线温度计设计报告.docx

1、 1五邑大学 信息工程学院课 程 设 计 报 告课程名称: 无线温度检测器 专 业: 电子信息工程 班 级: 学 号: 姓 名: 指导教师: 设计时间: 2016 年 10 月 评定成绩: 2无线温度监测器一、设计任务与要求1.实时获取被测对象温度,温度测量范围:10 +45;测量精度:0.1。2.无线传输实时获取的温度值,传输距离10m。3.实时显示接收到的温度值。4.基于单片机实现。二、课题分析与方案选择在日常生活及工业生产过程中,经常要用到温度的检测及控制,温度是生产过程和科学实验中普遍而且重要的物理参数之一。无线系统具有不借助外部网络、不受布线限制的优点。本次课程设计把这两部分结合起来

2、,用无线数据传输技术来实现温度传感器的温度数据采集。方案一:传统的测温元件有热电偶和热电阻。而热电偶和热电阻测出的一般都是电压,再转换成对应的温度,这些方法的缺点是硬件电路相对复杂,需要比较多的外部硬件支持。方案二:采用 DS18B20 作为温度监测元件,并且基于 STC89C52 单片机设计温度测量及报警电路。本次设计采用方案二,采用无线收发模块 NRF24L01 来实现无线传输功能,温度测量范围-55 +125,使用 LCD 液晶显示,并且能设置温度报警上下限。三、单元电路分析与设计1.原理分析单片机 STC89C52 具有低电压供电和体积小等特点,晶振采用 12MHz。复位电路采用上电加

3、按钮复位。晶振电路 复位电路显示电路:显示电路采用 LCD1602,滑动电阻 R6 用来调节背光亮度。 3显示电路报警电路当单片机通电后,进入温度报警上下限调节,此时显示软件设置的温度报警上线,按s2 对报警温度进行加一,按 s3 对报警温度进行减一。当实际温度超过所设温度上下限时,单片机 P3.0 口会输出高电平,红色 led 灯会亮起。 温度传感器:DS18B20 温度传感器是美国 DALLAS 半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现 912 位的数字值读数方式。DS18B20 的性能特点如下

4、:1、独特的单线接口仅需要一个端口引脚进行通信;2、多个 DS18B20 可以并联在惟一的三线上,实现多点组网功能3、无须外部器件;4、可通过数据线供电,电压范围为 3.05.5;5、零待机功耗;6、温度以或位数字;7、用户可定义报警设置;8、报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;9、负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作;DS18B20 采用寄生电源供电方式,此时 DS18B20 的 1 脚接地,2 脚作为信号线,3 脚接电源。由于单线制只有一根线,因此发送接口必须是三态的。4温度传感器无线收发模块 nrf24l01输出功率频道选择和协议的

5、设置可以通过 SPI 接口进行设置 ,单片机可通过 IRQ 引脚快判断是否完成数据接收和数据发送。四、总原理图及元器件清单发送端:5接收端:2.元件清单序号 元器件名称 型号 主要参数 数量 备 注1 无线收发模块 NRF24L01 22 智能温度传感器 DS18B20 13 单片机 STC89C52 24 显示器 LCD1602 15 电容 22nf 46 排阻 10K 27 晶振 12MHZ 28 稳压器 az1117t-3.3 29 按键开关 310 LED 111 蜂鸣器 112 电阻 10K 26五、安装与调试1调试过程描述一开始接收端单片机通电后显示屏背光亮,内容无显示,经检测电路

6、后发现信号控制线断裂。修复后显示屏能显示学号、字母信息,但是无法显示温度数字。初步判断是程序出问题,导致无线模块没有正确接收信号。之后更改程序,编程控制端口收发信号,最终调试成功。2实物照片六、性能测试与分析在本次设计中,利用单片机实现了温度测量,测量精度为0.1,在发送端温度传感器的数据能实时发送到接收端,无线传输距离达到 10m 以上,符合设计要求。 七、结论与心得从确定题目,研究原理图,制作电路板,到焊接调试,当中出现不少问题,但是我迎难而上,把问题逐个解决,最终完成课程设计,我从中积累了很多解决问题的宝贵经验。其中最大的问题是无线接收模块在接收温度信息时延迟比较大,后来通过查阅资料修改

7、信道,问题得以解决。7另一个问题是当温度计一通上电后,LED 灯就会一直亮。在确定电路连接和原理图正确后依然不能解决,于是我跟同学讨论,发现是程序出错,使得单片机与 LED 相连的 I/O 口一直输出高电平,修改程序后温度计才正常工作!在排查问题过程中我的耐心得到了锻炼,并且与同学们的讨论更是让我受益匪浅!通过这次课程设计我进一步熟悉了单片机的内部结构和工作原理,了解到无线收发模块的使用方法,掌握了单片机应用系统设计的基本方法和步骤,让自己的理论水平和实践能力上升到一个新的台阶,同时我也认识到实践的重要性。程序(程序本身没问题,只是排版乱了,大家下载回来注意修改一下双斜杠,双斜杠后面的内容会变

8、成注释,不需要删减内容,只需要修正好回车键,都是行数的问题)发送端:#include #include /#include “api.h“#define uchar unsigned char#define TX_ADR_WIDTH 5 / 发射地址的字节个数#define TX_PLOAD_WIDTH 2 /发射字节uchar const TX_ADDRESSTX_ADR_WIDTH=0x34,0x55,0x10,0x10,0x01;uchar rx_bufTX_PLOAD_WIDTH;uchar tx_bufTX_PLOAD_WIDTH;uchar distance_data2;uchar

9、 flag;/ 标志sbit CE=P10; /发射高电平大于 10MS 接收高电平sbit CSN=P11; /低电平 ISP 使能sbit SCK=P12; /下降沿8sbit MOSI=P13; /MCU 出sbit MISO=P14; /MCU 入sbit IRQ=P15; /中断uchar bdata sta;sbit RX_DR =sta6; /接收数据准备就绪sbit TX_DS =sta5; /已发送数据sbit MAX_RT =sta4;sbit DQ=P30;unsigned char time; /设置全局变量,专门用于严格延时/*NRF24L01*/*NRF24L01

10、寄 存 器 指 令#define READ_REG 0x00 / 读寄存器指令#define WRITE_REG 0x20 / 写寄存器指令#define RD_RX_PLOAD 0x61 / 读取接收数据指令#define WR_TX_PLOAD 0xA0 / 写待发数据指令#define FLUSH_TX 0xE1 / 冲洗发送 FIFO 指令#define FLUSH_RX 0xE2 / 冲洗接收 FIFO 指令#define REUSE_TX_PL 0xE3 / 定义重复装载数据指令#define NOP 0xFF / 保留9/*SPI(nRF24L01) 寄 存 器 地 址#defi

11、ne CONFIG 0x00 / 配置收发状态, CRC 校验模式以及收发状态响应方式#define EN_AA 0x01 / 自动应答功能设置#define EN_RXADDR 0x02 / 可用信道设置#define SETUP_AW 0x03 / 收发地址宽度设置#define SETUP_RETR 0x04 / 自动重发功能设置#define RF_CH 0x05 / 工作频率设置#define RF_SETUP 0x06 / 发射速率、功耗功能设置#define STATUS 0x07 / 状态寄存器#define OBSERVE_TX 0x08 / 发送监测功能#define CD

12、 0x09 / 地址检测#define RX_ADDR_P0 0x0A / 频道 0 接收数据地址#define RX_ADDR_P1 0x0B / 频道 1 接收数据地址#define RX_ADDR_P2 0x0C / 频道 2 接收数据地址#define RX_ADDR_P3 0x0D / 频道 3 接收数据地址#define RX_ADDR_P4 0x0E / 频道 4 接收数据地址#define RX_ADDR_P5 0x0F / 频道 5 接收数据地址#define TX_ADDR 0x10 / 发送地址寄存器#define RX_PW_P0 0x11 / 接收频道 0 接收数据长

13、度10#define RX_PW_P1 0x12 / 接收频道 0 接收数据长度#define RX_PW_P2 0x13 / 接收频道 0 接收数据长度#define RX_PW_P3 0x14 / 接收频道 0 接收数据长度#define RX_PW_P4 0x15 / 接收频道 0 接收数据长度#define RX_PW_P5 0x16 / 接收频道 0 接收数据长度#define FIFO_STATUS 0x17 / FIFO 栈入栈出状态寄存器设置/*void init_io(void)CE=0;CSN=1;SCK=0;void delay_ms(unsigned int x)unsigned int i,j;for(i=0;ix;i+)j=108;while(j-);

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。