测温并24l01无线传输设计_第1页
测温并24l01无线传输设计_第2页
测温并24l01无线传输设计_第3页
测温并24l01无线传输设计_第4页
测温并24l01无线传输设计_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

河南大学物理与电子学院开放实验室单片机设计报告测温并24L01无线传输设计设计人:开放实验室入室人员TOC\o"1-5"\h\z\o"CurrentDocument"0前言11系统组成与功能11.1系统组成1AT89C52单片机1\o"CurrentDocument"18B20测温芯片624L01模块21.1.4四位一体八段共阴数码管、无源蜂鸣器、74LS13831.2系统功能61.3系统功能扩充62系统原理62.1无线发射仿真图62.2无线接收仿真图72.3实物照片73程序流程图83.1测温程序流程图8\o"CurrentDocument"3.2发射程序流程图9\o"CurrentDocument"3.3接收程序流程图104具体程序114.1测温程序114.2发射板部分程序114.3接收板部分程序135主要元件清单145.1发射板其他主要元件145.2接收板其他主要元件14\o"CurrentDocument"6结论157测温并无线收发心得15

测温并24L01无线传输开放实验室入室人员(河南大学物理与电子学院,河南开封,475004)0前言温度的测试技术已经成熟,已经满足了人们的大部分需求,然而在某些工作场合下,我们更想知道与自己不在一个地方的温度,以便进行温度调控,更好更方便地生产生活,因此,温度的传输就成为了我们要考虑的内容了。此单片机项目设计中,我们就基于24L01模拟温度的无线传输,经过调试,试验,已经实现了预期功能,同时也实现了对生产生活中温度预警的模拟功能。1系统组成与功能1.1系统组成本系统主要有AT89C52单片机、复位按键、无源蜂鸣器、18B20芯片、24L01模块、四位一体共阴8段数码管等元件组成。1.1.1AT89C52单片机AT89C52是一个低电压,高性能CMOS8位单片机,片内含8kbytes的可反复擦写的Flash只读程序存储器和256bytes的1.1.1AT89C52单片机AT89C52是一个低电压,高性能CMOS8位单片机,片内含8kbytes的可反复擦写的Flash只读程序存储器和256bytes的随机存取数据存储器(RAM),兼容标准MCS-51指令系统。AT89C52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,AT89C52P1.0匚P1.1匚P1.2匚P1.3匚P1.4匚(MOSI)P1.5匚(MISO)P1.6匚(SCK)P1.7匚RST匚(RXD)P3.0匚(TXD)P3.1匚(INTO)P3.2匚(INTI)P3.3匚(TO)P?』目1340393837363534333231302928VCCPO.O(ADO)P0.1(AD1)P0.2(AD2)IZP0.3(AD3)□P0.4(AD4)□P0.5(AD5)□P0.6(AD6)□P0.7(AD7)□EA/VPP□ALE/PROG□PSEN□P2.7(A15)~'ICcr*/Aa\::T1:iP'图1-1可以按照常规方法进行编程,但不可以在线船;XTAL2XTAL1GND编程(S系列的才支持在线编程)。引脚图如图1-1所示单片机引脚图匕i.4[HINJP2.3(A11)P2.2(A10)P2.1(A9)P2.0(A8)1.1.218B20测温芯片MC匚mcr~8-Pm只SOP

(DS18B2-0LT)图1-218B20测温芯片MC匚mcr~8-Pm只SOP

(DS18B2-0LT)DS18B20的温度检测与数字数据输出全集成于一个芯片之上,从而抗干扰力更强。其一个工作周期可分为两个部分,即温度检测和数据处理。DS18B20共有三种形态的存储器资源:ROM只读存储器,用于存放DS18B20ID编码;RAM数据暂存器,用于内部计算和数据存取;EEPROM非易失性,记忆体,用于存放长期需要保存的数据.1.1.324L01模块NRF24L01是工作于2.4~2.5GHz世界通用的ISM频段的单片无线收发器芯片。无线收发器芯片包括:频率发生器、增强型SchockBurst模式控制器、功率放大器、品体振荡器、调制器、解调器。输出功率、频道选择和协议的设置可以通过SPI接口进行设置.其拥有极低的电流消耗:当工作在发射模式下发射功率为-6dBm时电流消耗为9mA,接收模式为12.3mA。

其引脚功能:引脚名称引脚功能描述1CE数字输入RX或TX模式选择2CSN数字输入SPI片选信号3SCK数字输入SPI时钟4MOSI数字输入从SPI数据输入脚5MISO数字输出从SPI数据输出脚6IRQ数字输出可屏蔽中断脚7VDD电源电源(+3V)8VSS电源接地(0V)1.1.4四位一体共阴数码管千af白土b40251ANGI无源蜂鸣器图1-5无源蜂鸣器是蜂鸣器的一种,区别于有源蜂鸣器,无源蜂鸣器是内部不带振荡源的蜂鸣器,是一体化结构的电子讯响器,在电路中的图形符号位H或者HA。无源蜂鸣器是靠压电效应的原理来发声的,压电材料,一般常见的是各种压电陶瓷.这种材料的特别之处在于,当电压作用于压电材料时,就会随电压和频率的变化产生机械变形.另一方面,当振动压电陶瓷时,则会产生电荷.就是说这种材料能把机械变形和电荷相互转化,压电式蜂鸣器里面的起振片,就是一种压电陶瓷.如上所述,要让它振动,除了压电陶瓷本身,还需要适当大小和频率变化的电压作用于压电陶瓷.压电式(有源)蜂鸣器内部带有多谐振荡器,可以产生1.5—2.5kHZ的电压信号.由此压电式蜂鸣器才能发声。74LS1383-8译码器A1~l16vccSelect__AInputsB2BYoJ15YoC3CY1□14Y1G2A4cG2AY23Y2EnabletG2B5cG2BY3312Y3>OutputsInputsG16G1Y4?11Y4OutputsYr7cY?YeY5a:10Y5GND8V3Y6,图1-674LS138:当一个选通端(G1)为高电平,另两个选通端(/(G2A)和/(G2B))为低电平时,可将地址端(A、B、C)的二进制编码在一个对应的输出端以低电平译出。A、B、C译码地址输入端G1选通端/(G2A)、/(G2B)选通端(低电平有效)Y0-Y7译码输出端(低电平有效)

1.2系统功能本设计的主要功能是用18B20测温传送至单片机中存储,在发射端数码管显示温度,并通过24L01发射模块无线传输,在一定距离内放置接收板利用接收模块进行接收,同时显示温度值。1.2系统功能扩充本设计的主要功能扩充:实现报警功能,当所测温度超过预定值时,接收端的蜂鸣器报警提示;并且在发射端拥有七彩指示灯,当所测温度不发生变化时,指示灯会熄灭,以提示温度已恒定。2系统原理本设计主要原理是单片机采集18B20测得的温度,同时将数据传给24L01的发射模块,并通过另一单片机控制24L01接收模块的接收,同时显示所测温度值。2.118B20测温与24L01发射模块仿真图nRF24L01ftseaI.5TTAL1PD.VAD1XTAL2PDS'ADSPDJS*ADGRSTPD.TWDTnRF24L01ftseaI.5TTAL1PD.VAD1XTAL2PDS'ADSPDJS*ADGRSTPD.TWDTpzo-hePE.1WSPZZfAIDpza-AHALEFZ.^AIS段P2SA13P2.&A1+P2.T/A1SP1.0P3I¥H>CDP1.1Pl.imCDPINpuPlZl'IMT!4F*1MjSP1.7P3.7flTF说明:24L01无线模块不能实现真正的仿真,上图中的NRF24L01仅作示意,但是数码管能正常仿真2.224L01接收模块仿真图2.3实物照片测温并发射效果图,测温为12.2度。右下边带晶振的模块为收发模块。

接收信号并显示效果图,显示为12.2度,等于发射温度,实验成功。3程序流程图发射板与接收板分别执行各自功能,各有各自的单片机控制,由24L01收发模块作为他们的关联。3.1测温程序流程图3.2发射端程序流程图3.3接收端程序流程图4主要程序源代码4.1温度采集处理主要部分函数#include"reg51.h”/**************DS18B20复位函数****************/ow_reset(void){};/***********DS18B20写命令函数*************/voidwrite_byte(ucharval){};/***********DS18B20读1字节函数*************/ucharread_byte(void){••••};/*************读出温度函数*************/read_temp(){•••••};/**********温度数据处理函数***************/work_temp(){•••};main(){•••};4.2发送模块主要程序#include"reg51.h”/*NRF24L01初始化voidinit_NRF24L01(void){•••};//程序太长不宜写在报告中,完整程序请••••〃联系QQ154401855(或154401856)下载/***********主函数************/main(){intf=0;uchara[3];

intt;while(1){uchart=0;uchari=1;longintj=0;//初始化端口//初始化端口〃开始显示"0000"//SkipROM〃发转换命令discan=0xff;led=0;for(h=0;h<4;h++){display[h]=0;}ow_reset();init_NRF24L01();write_byte(0xCC);write_byte(0x44);if(f==0){for(h=0;h<500;h++){scan();}f=1;}///每次重新初始化,重新装载数据,最大限度地消除干扰〃同时只有第一次初始化显示0000再次初始化时数码管并不再显示0000read_temp();〃读出DS18B20温度数据work_temp();//处理温度数据i=display[0];//把发射数组中的第1个数设为iTxBuf[0]=i;i=display[1];//把发射数组中的第2个数设为iTxBuf[1]=i;i=display[2];//把发射数组中的第3个数设为iTxBuf[2]=i;i=display[3];//把发射数组中的第4个数设为iTxBuf[3]=i;if(a[0]==TxBuf[0]&&a[1]==TxBuf[1]&&a[2]==TxBuf[2]);elseled=1;//温度不变时指示灯不再闪烁,温度变化,指示灯开始闪烁for(t=0;t<3;t++){a[t]=TxBuf[t];}nRF24L01_TxPacket(TxBuf);//TransmitTxbufferdata一次发完数组中的20个数for(h=0;h<500;h++){scan();}〃显示温度2s}}4.3接收端模块主要程序voidmain(void){longintj=0;chark;p=1;for(h=0;h<4;h++){RxBuf[h]=0;}〃开始显示"0000"init_NRF24L01();//2401初始化Delay(2000);while(1){SetRX_Mode();nRF24L01_RxPacket(RxBuf);//一次收完20个数,放在RxBuf[20]中//接收到数据for(k=0;k<4;k++){Disdata=dis_7[RxBuf[k]];if(k==1){DIN=1;}discan=scan_con[k];delay1(90);discan=0xff;}〃显示温度2sif(RxBuf[2]>=2){InitialSound();/*Play(Music_tomorrow,0,3,360);Delay1ms(500);*/Play(Music_Girl,0,3,360);Delay1ms(500);/*Play(Music_Same,0,3,360);Delay1ms(500);*///去掉隐藏符号即可播放

/*Play(Music_Two,0,3,360);Delay1ms(500);*/}//高于20°C播放音乐}}5主要元件清单原件名称数量万用板(9cmX15cm)2STC89C52单片机274LS138224L01接收模块124L01发送模块1四位一体共阴数码管2AMS1117-3.3稳压芯片25.1发射板其他元件原件名称数量18B20测温芯片1晶振12M,1上拉电阻1复位按键1七彩发光二极管指示灯1电容30pf2电阻(10k,4.7k)各一个5.2接收板其他元件原件名称数量晶振12M,1上拉电阻1复位按键1

无源蜂鸣器1无源蜂鸣器1电容30pf2电阻(10k,4.7k)各一个6结论通过18B20测温并由单片机控制,利用24L01实现无线传输,能够很准确将所测温度传输到几十米外的距离,可以用于某些不利于近距离观测的生产生活中。7此项目设计的心得项目设计中,感受最深的便是程序的修改,由原始程序18B20测温到与24L01测试程序融合,是此次项目设计的核心所在,软件是一个企业的灵魂,同样项目设计软件部分也起着类似的作用。首先从温度的数码管显示说起,数码管的引

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论