毕业论文基于AVR单片机和NRF905无线环境监测系统设计.doc

上传人:仙人指路1688 文档编号:4149423 上传时间:2023-04-07 格式:DOC 页数:78 大小:1.05MB
返回 下载 相关 举报
毕业论文基于AVR单片机和NRF905无线环境监测系统设计.doc_第1页
第1页 / 共78页
毕业论文基于AVR单片机和NRF905无线环境监测系统设计.doc_第2页
第2页 / 共78页
毕业论文基于AVR单片机和NRF905无线环境监测系统设计.doc_第3页
第3页 / 共78页
毕业论文基于AVR单片机和NRF905无线环境监测系统设计.doc_第4页
第4页 / 共78页
毕业论文基于AVR单片机和NRF905无线环境监测系统设计.doc_第5页
第5页 / 共78页
点击查看更多>>
资源描述

《毕业论文基于AVR单片机和NRF905无线环境监测系统设计.doc》由会员分享,可在线阅读,更多相关《毕业论文基于AVR单片机和NRF905无线环境监测系统设计.doc(78页珍藏版)》请在三一办公上搜索。

1、图书分类号:密 级:毕业设计(论文)基于AVR单片机和NRF905无线环境监测系统设计DESIGN OF WIRELESS ENVIRONMENTAL MONITORING SYSTEM BASED ON AVR SINGLE CHIP MICROCOMPUTER AND NRF905 学生学号20060501222学生姓名李宝学院名称信电工程学院专业名称信息电子科学与技术指导教师高玉芹2010年6月3日徐州工程学院学位论文原创性声明本人郑重声明: 所呈交的学位论文,是本人在导师的指导下,独立进行研究工作所取得的成果。除文中已经注明引用或参考的内容外,本论文不含任何其他个人或集体已经发表或撰写

2、过的作品或成果。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标注。本人完全意识到本声明的法律结果由本人承担。论文作者签名: 日期: 年 月 日徐州工程学院学位论文版权协议书本人完全了解徐州工程学院关于收集、保存、使用学位论文的规定,即:本校学生在学习期间所完成的学位论文的知识产权归徐州工程学院所拥有。徐州工程学院有权保留并向国家有关部门或机构送交学位论文的纸本复印件和电子文档拷贝,允许论文被查阅和借阅。徐州工程学院可以公布学位论文的全部或部分内容,可以将本学位论文的全部或部分内容提交至各类数据库进行发布和检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。论文作者签名:

3、 导师签名: 日期: 年 月 日 日期: 年 月 日摘要本文提出了一种基于低功耗高性能Atmage16L单片机为主控器和射频nRF905为无线收发模块的无线环境系统监测的总体设计方案和实现方法。系统设置了一个主机和两个从机,通过无线通信方式,实现了两个节点的环境监测。主机通过从机预设的不同地址来实现区分两个节点发送来的环境监测数据。本设计采用nRF905射频模块为无线传输模块,DS18B20为温度传感器模块及HM1500为湿度传感器模块来实现了环境的温湿度监测。Atmage16L和nRF905之间通过高速串口SPI实现双向通信, SPI支持高速数据传输,从而满足了环境参数数据实时传输的要求,并

4、且利用VB6.0企业版的MScomm控件编写接收界面,通过串口实时显示在PC机上。关键词 ATMEGA16L;nRF905;DS18B20;HM1500;无线环境监测AbstractThis article proposed one kind Wireless Environmental Montoring system overall design plan and therealization method which based on the low-power high-performance Atmega16L MCU and the wireless module nRF905 .

5、 The system has one Master and two Slaves ,througn the wieless communication to come true Montoring Environmental in two different places. The Master can distinguish the data of the Environment from two different places through the different address.The design uses nRF905 as the wireless receiving a

6、nd dispatching module and DS18B20 as the temperature sensor module and HM1500 as the humidity sensor,thus complies the design of Wireless Environmental Montoring system,includes temperature and humidity .The design can come ture the data of environment transmission between Atmega16L and nRF905 which

7、 uses the SPI mouth realization two-way communication, SPI supports the high-speed data transmission,also use the MScomm of VB6.0 to write a interface, it can display the data on PCs screen.Keywords ATMEGA16L nRF905 DS18B20 HM1500 Wireless Environmental Montoring目 录1 绪论11.1 课题研究的背景11.2 开发意义12 系统总体设计

8、22.1 系统的整体结构22.2 系统的工作原理22.3 课题实现的功能23 系统硬件设计43.1器件的选用43.1.1中央处理器的选用43.1.2无线发射芯片的选用43.1.3温度传感器的选用53.1.4湿度传感器的选用63.1.5显示器的选用63.2主机的硬件设计63.2.1串行外设接口SPI73.2.2单片射频收发器nRF90583.2.3通用同步和异步串行接收器和转发器USART113.3从机的硬件设计123.3.1 串行外设接口SPI133.3.2 单片射频收发器nRF905133.3.3字符型液晶显示器LCD1602133.3.4温度传感器DS18B20163.3.5湿度传感器HM

9、1500184 系统软件设计214.1主机软件设计214.1.1主程序的设计214.1.2 SPI接口软件的设计224.1.3 nRF905软件的设计234.1.4 串口软件的设计244.2从机软件设计254.2.1 主程序的设计254.2.2 SPI接口软件设计274.2.3 nRF905软件设计274.2.4 LCD1602软件设计274.2.5 DS18b20软件设计274.2.6 HM1500软件设计295 PC机通信及数据处理显示程序设计305.1 VB6.0特点305.2 MSComm控件305.2.1 MSComm控件的主要属性、事件315.3 VB程序设计315.3.1 程序详

10、细设计315.3.2 系统界面316 调试336.1 液晶显示器LCD1602设计过程中遇到的问题既解决方法336.2 串口设计过程中遇到的问题既解决方法336.3 nRF905设计过程中遇到的问题既解决方法336.4 DS18B20设计过程中遇到的问题既解决方法346.5 VB程序设计中遇到的问题与解决方法34结论35致谢36参考文献37附录38附录1英文翻译38附录2硬件原理图54附录3源程序代码711 绪论1.1 课题研究的背景在许多测控现场中,传统的数据传输是通过有线电缆实现的。随着射频技术、集成电路的发展,无线通信功能的实现越来越容易,抗干扰能力也越来越强,因此,越来越多的场合采用了

11、无线传输技术。无线数据传输相比于有线传输有许多优点:一、是成本低,省去了大量的布线;二、是建网快捷,只需在每个终端连接无线数据传输模块和架设适当高度的天线即可;三、是适应性好,无线数据传输在一些特殊的应用环境,比如遇到山地、湖泊、林区等特殊的地理环境或是移动物体等布线比较困难的应用环境的时候,能解决因布线困难、电缆接插件松动、短路等带来的问题;四、是扩展性好,采用有线传输方式,不能随意移动,设备重新布局就要重新布线,但采用无线数据传输,只需将设备与无线数据传输模块相连接就可以了;五、是设备维护容易,有线通信链路的维护需沿线路检查,出现故障时,一般很难及时找出故障点,而采用无线数据传输方式只需维

12、护数据传输模块,出现故障时则能快速找出原因。通过环境监测,提供代表环境质量现状的数据,判断环境质量是否符合国家标准;评价环保设施的性能,为综合防治对策提供基础数据,积累长期监测资料,为研究环境容量,实施总量控制提供基础数据。通过大量的监测数据,制定切实可行的环保法规和环境质量标准。总之,环境监测的作用是及时、准确、全面地反映环境质量现状及发展趋势,为环境管理、环境规划、环境科学研究提供依据。为了提高环境参数采集的自动化水平, 提升效率, 设计了无线环境监测系统。本课题运用了传感器技术、无线通信技术和单片机技术, 实现了对环境温度、湿度等参数的检测。它能够实时地与上位机进行无线通信, 满足对环境

13、参数实时监测的要求。1.2 开发意义随着经济高速发展,工业化的不断推进,人们对生存的环境日益重视。为此,环境监测已成为我们合理地利用环境 资源、保护生态环境的工作重点。在许多情况下,传统的环境监测往往由于受到地理环境和工作内容的限制,如山地、港口和开阔地等特殊地理环境,对有线网络、有线传输的布线工程带来极大的不便,采用有线的施工周期将很长,甚至根本无法实现。这时,采用无线无线环境监测可以摆脱线缆的束缚,有安装周期短、维护方便、扩容能力强,迅速收回成本的优点。本文将无线技术运用到环境监测中,提出了一种利用低功耗高性能Atmage16L单片机为主控器,nrf905射频模块为无线传输模块,DS18B

14、20为温度传感器模块及HM1500为湿度传感器模块,实现无线环境监测系统的设计。2 系统总体设计2.1 系统的整体结构本系统包含一台主机和两台从机。系统的总体结构框图见图2-1。NRF905单片机温湿度NRF905单片机PC 从机1NRF905单片机主机温湿度 从机2图2-1 系统整体结构框图2.2 系统的工作原理本设计中主机和从机之间是通过通过单片射频收发器nRF905完成互相通信的。每个从机都有唯一一个地址,主机通过轮流发送从机的地址来实现接收对应的从机的环境数据,并把参数通过串口实时显示在VB6.0企业版MSCom控件编写的界面上。从机接收主机发送来的地址,判断是否和自己的地址匹配,如果

15、匹配则把采集到的环境参数发送给主机,再继续接收和判断主机发送来的地址。2.3 课题实现的功能一、完成DS18B20、HM1500、LCD1602、单片射频收发器nFR905、串口和单片机的硬件连接;二、完成温度传感器DS18B20测量温度的子程序设计;三、完成HM1500湿度采集的子程序设计。四、完成将采集的温度值和湿度值送字符型液晶显示器LCD1602上显示的子程序设计;五、完成两个节点的单片射频收发器nFR905无线收发数据的子程序设计;六、完成将单片射频收发器nFR905接收的温度值和湿度值通过串口发送到PC机的子程序设计;七、完成PC机串行通信及数据处理显示程序的设计;八、完成主程序设

16、计,将各子程序连起来。3 系统硬件设计3.1器件的选用本系统设计的器件较多,包括主控芯片、温度传感器、湿度传感器、显示器及无线收发模块。各器件选择的余地也很广,所以慎重选择器件很重要,其直接影响到系统的整体性能和设计的最终结果。3.1.1中央处理器的选用由于无线收发芯片nRF905提供SPI口并且工作电压为1.93.6V,因此选用有SPI接口功能的低功耗单片机。ATMEGA16L有工作于主机/ 从机模式的SPI串行接口,所以不需要进行软件模拟SPI口,可工作于低压状态,工作电压为2.75.5V。ATMEGA16L 是 Atmel 公司的高性能、低功耗的8位 AVR 微处理器。先进的 RISC

17、结构,非易失性程序和数据存储器,16K字节的系统内可编程 Flash,擦写寿命10,000次,512字节的 EEPROM 擦写寿命100,000次,1K字节的片内 SRAM 可以对锁定位进行编程以实现用户程序的加密。JTAG 接口(与IEEE1149.1标准兼容),符合 JTAG 标准的边界扫描功能,支持扩展的片内调试功能,通过 JTAG 接口实现对 Flash、EEPROM、熔丝位和锁定位的编程。两个具有独立预分频器和比较器功能的8位定时器/计数器,一个具有预分频器、比较功能和捕捉功能的16位定时器/ 计数器,具有独立振荡器的实时计数器 RTC。四通道 PWM,8路10位 ADC8 个单端通

18、道,TQFP 封装的7个差分通道,2个具有可编程增益(1x, 10x, 或200x)的差分通道。面向字节的两线接口,两个可编程的串行USART,可工作于主机/从机模式的 SPI 串行接口,具有独立片内振荡器的可编程看门狗定时器,片内模拟比较器。上电复位以及可编程的掉电检测,片内经过标定的 RC 振荡器,片内/片外中断源。6种睡眠模式,空闲模式、ADC 噪声抑制模式、省电模式、掉电模式、Standby 模式以及扩展的 Standby 模式。兼于以上优点,选用ATMEGA16L 单片机为中央处理器。3.1.2无线发射芯片的选用随着射频电子技术的发展,无线收发芯片的集成度、性能都大幅度提高,芯片的种

19、类和数量比较多,性能也各有特色。目前,世界各大芯片制造商研制开发出了各种新型射频芯片,使短距离无线通信装置的设计开发趋于容易、便捷、周期短、成本低。生产此类芯片的厂家主要有Nordic、XEMICS、TI、Maxim、Chipcon 等。此类产品收发合一,工作频率一般为国际通用的ISM频段,无需申请许可证,采用低发射功率、高接收灵敏度的设计,使用时对周围干扰很小,调制方式大多为ASK、FSK,传输速率为几K到几百Kbit/s,传输距离受环境影响,一般在几十米到数百米。选择无线收发芯片时,应考虑以下几个因素:一、芯片的数据传输是否需要进行曼彻斯特编码及传输速度;二、芯片所需的外围元件数量;三、功

20、耗;四、发射功率;五、芯片的封装和管脚数。nRF905是挪威Nordic VLSI公司推出的单片射频收发器,工作电压为1.93.6V,32引脚QFN封装(55mm),工作于433/868/915MHz三个ISM(工业、科学和医学)频道,频道之间的转换时间小于650us。nRF905由频率合成器、接收解调器、功率放大器、晶体振荡器和调制器组成,不需外加声表滤波器。ShockBurstTM工作模式,自动处理字头和CRC(循环冗余码校验),使用SPI接口与微控制器通信,配置非常方便。此外,其功耗非常低,以 -10dBm的输出功率发射时电流只有11mA,工作于接收模式时的电流为12.5mA,内建空闲模

21、式与关机模式,易于实现节能。nRF905适合点对点的数据传输,内置了CRC纠检错硬件电路和协议,提高了系统的可靠性,且不再需要用软件对传输数据进行差错控制编码,简化了软件编程,适合在工业现场使用。灵敏度高,数据传输速率为50Kbps,低功耗,体积小。本论文设计的数据采集系统通过无线收发模块传输现场采集数据,对数据传输的可靠性要求较高。综合考虑以上因素,采用nRF905为无线收发模块。3.1.3温度传感器的选用随着温度传感器智能化、集成化技术的进步,数字式温度传感器也得到了快速发展,世界上许多公司推出了新型的数字温度传感器系列,这些产品的出现极大的丰富了设计工程师的选择对象。在如此众多的产品中选

22、择出合适的器件,应该把握以下几点:外围电路应该尽量简单;测温的精度、分辨率要合适,以便减少不必要的电路和软件开发成本;温度传感器采用的总线负载能力如何,能否满足多点测温的需要;占用 MCU 的 I/O引脚数情况如何,因为 MCU 的系统资源非常宝贵,输入通道有限,多点温度测量时,如果测量的点数超过了输入通道时,就要添加多路复用器,这将增加成本和开发时间,应尽量节约;与MCU 的通信协议应尽量简单,温度测量的软件开发难度、成本要尽量小。DS18B20 是美国 Dallas 半导体公司的新一代数字式温度传感器,它具有独特的单总线接口方式,即允许在一条信号线上挂接数十甚至上百个数字式传感器,从而使测

23、温装置与各传感器的接口变得十分简单,克服了模拟式传感器与微机接口时需要的 A/D 转换器及其它复杂外围电路的缺点,而且,可以通过总线供电,由它组成的温度测控系统非常方便,而且成本低、体积小、可靠性高。DS18B20 的测温范围 。最高分辨率可达 0.0625,由于每一个 DS18B20 出厂时都刻有唯一的一个序列号并存入其 ROM 中,因此 CPU 可用简单的通信协议就可以识别,从而节省了大量的引线和逻辑电路。一、适用于低速测控场合,测控对象越多越显出其优越性;二、性价比高,硬件施工、维修方便,抗干扰性能好;三、具有 CRC 校验功能,可靠性高;四、软件设计规范,系统简明直观,易于掌握。由于

24、DS18B20 独特的单总线接口方式在多点测温时有明显的优势,占用 MCU 的I/O 引脚资源少,和 MCU的通信协议比较简单,成本较低,传输距离远。所以,选用DS18B20 做为温度测量的传感器。3.1.4湿度传感器的选用目前市场上的湿度传感器湿度传感器,分为电阻式和电容式两种,产品的基本形式都为在基片涂覆感湿材料形成感湿膜。空气中的水蒸汽吸附于感湿材料后,元件的阻抗、介质常数发生很大的变化,从而制成湿敏元件。国内市场上出现了不少国内外湿度传感器产品,电容式湿敏元件较为多见,感湿材料种类主要为高分子聚合物,氯化锂和金属氧化物。 电阻式湿度传感器 与电容式相比,构造简单,比较容易实现大量生产与

25、低价位。不必像电容式传感器一样要考虑引线间的容量,因此可以把传感器随意拉伸,设计自由度较大。特性由于是对数变化,如不进行对数转换等的处理,将不能得到线性特征。 低湿范围由于电阻较高难以检出。另外容易受到干扰影响。 电容式湿度传感器一般来说,可以检知从0%rh开始的低湿。 电容值比较接近线性,不需要对数变化。温度特性与电阻式相比较小(0.050.1%rh/左右),在一般用途上不需要温度补偿。但是如果用引线延长传感器的话,电容值会变化,因此不适合延长传感器单体。还有组装进装置内的话,因为通过引线而改变位置比较困难,所以设计自由度较小。 变化量比较小,但微小的电容变化会导致很大的误差。因此廉价的传感

26、器偏差较大。 综合以上因素,本设计选择了Humirel公司湿度传感器HM1500,它具有小尺寸,不受水浸影响,全互换性,高可靠性及长期稳定性,典型输出1-4V(对应0-100%,5VDC供电),极低的温度依赖性,良好的性线度等特点。3.1.5显示器的选用液晶显示器(LCD)具有功耗低、体积小、重量轻、超薄、无辐射、低闪烁等许多其他显示器无法比拟的优点,最为重要的是LCD可实现很多字符组合的显示,人机界面相当友好,近年来被广泛用于单片机控制的智能仪器、仪表和低功耗电子产品中,故选用LCD。本设计选用LCD1602显示器,LCD1602字符型液晶显示采用与日立公司的HD44780兼容的LCD控制器

27、构成的2*16字符型液晶显示模块。3.2主机的硬件设计根据上一节系统总体设计方案构想,系统的主机硬件包括单片机Atmega16L与nrf905通信的串行外设接口SPI及单片机Atmega16L与PC的通用同步和异步串行接收器和转发器USART,结构框图见图3-1。NRF905单片机MAX232PC图3-1 主机原理图3.2.1串行外设接口SPI串行外设接口 SPI 允许 ATMEGA16L 和外设或其他 AVR 器件进行高速的同步数据传输。ATMEGA16L SPI 的特点如下:(1)全双工,3线同步数据传输;(2)主机或从机操作;(3)LSB 首先发送或 MSB 首先发送;(4)7种可编程的

28、比特率;(5)传输结束中断标志;(6)写碰撞标志检测;(7)可以从闲置模式唤醒;(8)作为主机时具有倍速模式(CK/2)。系统包括两个移位寄存器和一个主机时钟发生器。通过将需要的从机的 SS 引脚拉低,主机启动一次通讯过程。主机和从机将需要发送的数据放入相应的移位寄存器。主机在 SCK 引脚上产生时钟脉冲以交换数据。主机的数据从主机的 MOSI 移出,从从机的 MOSI 移入;从机的数据从从机的 MISO移出,从主机的 MISO 移入。主机通过将从机的 SS 拉高实现与从机的同步。SPI 系统的发送方向只有一个缓冲器,而在接收方向有两个缓冲器。也就是说,在发送时一定要等到移位过程全部结束后才能

29、对 SPI 数据寄存器执行写操作。而在接收数据时,需要在下一个字符移位过程结束之前通过访问 SPI 数据寄存器读取当前接收到的字符。否则第一个字节将丢失。工作于 SPI 从机模式时,控制逻辑对 SCK 引脚的输入信号进行采样。为了保证对时钟信号的正确采样,SPI 时钟不能超过 fosc/4。SPI 使能后,MOSI、MISO、SCK 和SS引脚的数据方向将自动进行配置,详见表3-1。表3-1 SPI 引脚重载3.2.2单片射频收发器nRF9053.2.2.1 芯片结构 nRF905片内集成了电源管理、晶体振荡器、低噪声放大器、频率合成器功率、放大器等模块,曼彻斯特编码/解码由片内硬件完成,无需

30、用户对数据进行曼彻斯特编码,因此使用非常方便。nRF905的详细结构见图3-2。图3-2 nRF905的详细结构图3.2.2.2 nRF905引脚介绍表3-2 nRF905引脚管脚名称管脚功能说明1TRX_CE数字出入使能芯片发射或接收2PWR_UP数字输出芯片上电3uPCLK时钟输出由晶振震荡器分频的输出时钟4VDD电源电源(+3V DC)5VSS电源地(ov)6CD数字输出载波检测 续表3-2管脚名称管脚功能说明7AM数字输出地址匹配8DR数字输出接收或发射数据完成9VSS电源地(ov)10MISOSPI接口SPI输出11MOSISPI接口SPI输入12SCKSPI时钟SPI时钟13CSN

31、SPI使能SPI使能14XC1模拟输入晶振震荡器1脚/外部时钟输入脚15XC2模拟输出晶振震荡器2脚16VSS电源地(ov)17VDD电源电源(+3V DC)18VSS电源地(ov)19VDD_PA电源输出给nRF905功率放大器提供的+1.8v电源20ANT1射频输出天线接口121ANT2射频输出天线接口222VSS电源地(ov)23IREF模拟输入参考电流24VSS电源地(ov)25VDD电源电源(+3v DC)26VSS电源地(ov)27VSS电源地(ov)28VSS电源地(ov)29VSS电源地(ov)30VSS电源地(ov)31DVDD_1V2电源de 藕和的低电压正数字电源输出32

32、TX_EN数字输入TX_EN=“1”TX模式;TX_EN=“0” RX模式3.2.2.3 工作模式nRF905有两种工作模式和两种节能模式。两种工作模式分别ShockBurstTM接收模式和ShockBurstTM发送模式,两种节能模式分别是关机模式和空闲模式。nRF905的工作模式由TRX_CE、TX_EN和PWR_UP三个引脚决定,详见表3-3。表3-3 nRF905的工作模式3.2.2.4 ShockBustTM模式与射频数据包有关的高速信号处理都在nRF905片内进行,数据速率由微控制器配置的SPI接口决定,数据在微控制器中低速处理,但在nRF905中高速发送,因此中间有很长时间的空闲

33、,这很有利于节能。由于nRF905工作于ShockBurstTM模式,因此使用低速的微控制器也能得到很高的射频数据发射速率。在ShockBurstTM接收模式下,当一个包含正确地址和数据的数据包被接收到后,地址匹配 (AM)和数据准备好(DR)两引脚通知微控制器。在ShockBurstTM发送模式,nRF905自动产生字头和CRC校验码,当发送过程完成后,数据准备好引脚通知微处理器数据发射完毕。由以上分析可知,nRF905的ShockBurstTM收发模式有利于节约存储器和微控制器资源,同时也减小了编写程序的时间。 下面具体详细分析nRF905的发送流程和接收流程。一、发送流程 典型的nRF9

34、05发送流程分以下几步:(1)当微控制器有数据要发送时,通过SPI接口,按时序把接收机的地址和要发送的数据送传给nRF905,SPI接口的速率在通信协议和器件配置时确定;(2)微控制器置高TRX_CE和TX_EN,激发nRF905的ShockBurstTM发送模式;(3)nRF905的ShockBurstTM发送:1)射频寄存器自动开启;2)数据打包(加字头和CRC校验码);3)发送数据包;4)当数据发送完成,数据准备好引脚被置高。(5)AUTO_RETRAN被置高,nRF905不断重发,直到TRX_CE被置低;(6)当TRX_CE被置低,nRF905发送过程完成,自动进入空闲模式。Shock

35、BurstTM工作模式保证,一旦发送数据的过程开始,无论TRX_EN和TX_EN引脚是高或低,发送过程都会被处理完。只有在前一个数据包被发送完毕,nRF905才能接受下一个发送数据包。二、接收流程(1)当TRX_CE为高、TX_EN为低时,nRF905进入ShockBurstTM接收模式;(2)650us后,nRF905不断监测,等待接收数据;(3)当nRF905检测到同一频段的载波时,载波检测引脚被置高;(4)当接收到一个相匹配的地址,地址匹配引脚被置高;(5)当一个正确的数据包接收完毕,nRF905自动移去字头、地址和CRC校验位,然后把数据准备好引脚置高;(6)微控制器把TRX_CE置低

36、,nRF905进入空闲模式;(7)微控制器通过SPI口,以一定的速率把数据移到微控制器内;(8)当所有的数据接收完毕,nRF905把数据准备好引脚和地址匹配引脚置低;(9)nRF905此时可以进入ShockBurstTM接收模式、ShockBurstTM发送模式或关机模式。当正在接收一个数据包时,TRX_CE或TX_EN引脚的状态发生改变,nRF905立即把其工作模式改变,数据包则丢失。当微处理器接到地址匹配引脚的信号之后,其就知道nRF905正在接收数据包,其可以决定是让nRF905继续接收该数据包还是进入另一个工作模式。3.2.2.5 单片机与 nRF905 的硬件连接原理图单片机与nRF

37、905的接口电路很重要。nRF905内部有5个寄存器:状态寄存器、配置寄存器、发射地址寄存器、发射数据寄存器和接收数据寄存器。除了对寄存器读写外,还需对nRF905工作模式的切换进行控制。主机的单片机与nRF905的硬件连接图见图3-3。图3-3 单片机与nRF905的硬件连接图(主机)详细电路图见附录2。3.2.3通用同步和异步串行接收器和转发器USARTATMEGA16L 单片机的通用同步和异步串行接收器和转发器(USART)是一个高度灵活的串行通讯设备。主要特点为:(1)全双工操作(独立的串行接收和发送寄存器);(2)异步或同步操作;(3)主机或从机提供时钟的同步操作;(4)高精度的波特

38、率发生器;(5)支持5, 6, 7, 8,或9个数据位和1个或2个停止位;(6)硬件支持的奇偶校验操作;(7)数据过速检测;(8)帧错误检测;(9)噪声滤波,包括错误的起始位检测,以及数字低通滤波器;(10)三个独立的中断:发送结束中断, 发送数据寄存器空中断,以及接收结束中断;(11)多处理器通讯模式;(12)倍速异步通讯模式。3.2.3.1 USART 的初始化进行通信之前首先要对 USART 进行初始化。初始化过程通常包括波特率的设定,帧结构的设定,以及根据需要使能接收器或发送器。对于中断驱动的 USART 操作,在初始化时首先要清零全局中断标志位(全局中断被屏蔽)。3.2.3.2 访问

39、UBRRH/UCSRC寄存器UBRRH 与寄存器 UCSRC 共用 I/O 地址。因此访问该地址时需注意以下问题。一、写访问当在该地址执行写访问时, USART 寄存器选择位(URSEL)控制被写入的寄存器。若URSEL 为0,对 UBRRH 值更新; 若 URSEL 为1,对 UCSRC 设置更新。二、读访问对 UBRRH 或 UCSRC 寄存器的读访问则较为复杂。但在大多数应用中,基本不需要读这些寄存器。读访问由时序控制。一旦返回 UBRRH 寄存器内容则读 I/O 地址。若寄存器地址在前一个系统时钟周期中读入,当前时钟下对寄存器的读入将返回 UCSRC 内容中。注意,读 UCSRC 的时

40、钟序列为自动工作。在读操作中的中断(例如禁止全局中断) 必须人为控制。对 UBRRH 内容的读操作不是自动完成,且当前一条指令没有访问该寄存器地址时,该寄存器作为普通寄存器使用。3.3从机的硬件设计根据上一节系统总体设计方案构想,系统的从机硬件包括单片机Atmega16L与nrf905通信的串行外设接口SPI、显示器LCD1602、温度传感器DS18b20及湿度传感器HM1500,结构框图见图3-4。NRF905温度传感器DS18b20单片机LCD1602湿度传感器HM1500图3-4 从机原理图3.3.1 串行外设接口SPI同上文的主机相同。3.3.2 单片射频收发器nRF905同上文的主机

41、相同,只是单片机与NRF905的硬件连接不同,从机的单片机与NRF905的硬件连接图见图3-5。图3-5 单片机与nRF905的硬件连接图(从机)3.3.3字符型液晶显示器LCD16023.3.3.1标准字符型液晶显示器LCD接口LCD1602字符型液晶显示器采用与日立公司的HD44780兼容的LCD控制器构成的2*16字符型液晶显示模块,是专用于显示数字、字母、符号,字符型LCD液晶显示模块对外提供统一的接口标准。字符型液晶显示模块接口引脚定义见表3-4。表3-4 字符型液晶显示模块接口引脚定义引脚编号引脚名称引脚功能147D7D0数据线6E片选信号,写数据控制,下降沿触发5R/W读/写方向

42、控制信号,低电平为写入,高电平为读出4RS寄存器选择信号:RS=0:指令寄存器写入;忙标志读取;地址寄存器读取RS=1:数据寄存器读/写3V0驱动电压调节2VDD+5V1VSS地线15V-背光电压负端(GND)16V+背光电压正端(+5V) 3.3.3.2显示数据存储器(DDRAM)LCD控制器的指令系统规定,在发送待显示字符代码的指令之前,先要送DDRAM的地址,实际上是待显示的字符显示位置。若LCD为双行字符显示,每行40个显示位置,第一行地址为00H27H;第二行地址为40H67H。双行显示的DDRAM地址与显示位置的对应关系见表3-5。表3-5 双行显示的DDRAM地址与显示位置的对应

43、关系显示位置12345673940DDRAMLine100H01H02 H03 H04 H05 H06 H26 H27 H地址Line240 H41 H42 H43 H44 H45 H46 H66 H67 H3.3.3.3 LCD显示模块的控制指令HD44780的数据线可以使用8位方式(D7D0),也可以使用4位方式(D4D0),由工作方式设置命令中的“DL”(D4)位决定。使用4位方式时,写入(读取)数据分两次完成,先写入(读取)数据的高4位,接着写入(读取)数据的低4位。 下面给出LCD控制命令的功能解释。读/写方式下的光标和显示模式设置命令:表3-6 读/写方式下的光标和显示模式设置命令D7D6D5D4D3D2D1D0000001I/DSI/D:表示地址计数器(AC)的变化方向,即光标移动的方向。I/D=1:AC自动加1,光标右移一个字符。I/D=0:AC自动减1,光标左移一个字符。S:显示屏上画面向左或向右全部移动一个字符位。S=1,I/D=1:当写一个字符时,整屏显示左移。S=1,I/D=0:当写一个字符时,整屏显示右移。显示开关控制命令:表3-7 显示开关控制命令D7D6D5D4D3D2D1D000001DCBD:当D=0时,显示关闭,DDRAM中数据保持不变。 当D=

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

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号