欢迎来到天天文库
浏览记录
ID:41287815
大小:1.06 MB
页数:46页
时间:2019-08-21
《TinyOS操作系统开发技术及实践(西电版)实践4TinyOS应用开发》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、实践4TinyOS应用开发实践指导知识拓展实践指导实践4.G.1实现CC2530光敏信息的采集传输及向PC机传送数据,需要完成以下工作:(1)通过AD进行光敏信息的采集。(2)通过射频将数据发送至接收者。(3)接收者接收到数据之后,将接收的数据通过串口发送至PC机。【分析】(1)本实验使用两个CC2530节点,命名为节点1和节点2。(2)在“mytinyos/apps”目录下创建工程文件。其中,程序的编写分为两部分:数据的发送部分和接收部分;节点1负责信息的采集和发送,节点2负责信息的接收以及将数据通过串口传输至PC机。(3)
2、编写程序及Makefile文件。(4)观察实验现象。【参考解决方案】1.创建工程目录由于本实验的节点1和节点2使用的程序不同,因此本实验的发送和接收分别在同一个工程文件的两个子目录下。(1)创建传感器采集传输工程目录Sensor。 打开cygwin,在“opt/mytinyos/apps目录下”输入“mkdirSensor”,创建目录,具体操作如图S4-1所示。图S4-1创建Sensor目录(2)创建发送和接收文件子目录。 以步骤(1)创建文件为例在Sensor文件夹下分别创建发送和接收工程文件夹:ADRadioSend
3、和ADRadioReceive,如图S4-2所示。图S4-2创建发送和接收子目录创建完成之后目录如图S4-3所示。图S4-3创建完成后的目录2.发送程序的编写发送程序的编写需要完成以下几项工作:(1)创建并编写ADSensorSendApp.nc文件。 使用EditPlus程序在ADRadioSend目录下新建ADSensorSendApp.nc文件,并输入如下代码:#include#include"BlinkToRadio.h"configurationADSensorSendAppC{}impl
4、ementation{componentsADSensorSendC;componentsnewAdcC()asADSensor;componentsActiveMessageC;componentsLedsC;//ADC信息采集配置ADSensorSendC.ADSensorControl->ADSensor;//ADC读取ADSensorSendC.ADSensorRead->ADSensor;componentsMainC;//启动接口ADSensorSendC.Boot->MainC.Boot;compo
5、nentsnewTimerMilliC()asSensorTimerC;//定时器ADSensorSendC.SensorTimer->SensorTimerC;componentsPlatformSerialC;//串口配置ADSensorSendC.StdControl->PlatformSerialC.StdControl;//串口传输ADSensorSendC.UartStream->PlatformSerialC.UartStream;//LED组件ADSensorSendC.Leds->LedsC.Leds
6、;/*射频发送组件*/ADSensorSendC.Packet->ActiveMessageC;ADSensorSendC.AMPacket->ActiveMessageC;ADSensorSendC.AMSend->ActiveMessageC.AMSend[uniqueCount("ADRadioSend")];ADSensorSendC.AMControl->ActiveMessageC;ADSensorSendC.PacketAcknowledgements->ActiveMessageC;}(2)创建并编写ADSe
7、nsorSendC.nc文件。 使用EditPlus程序在ADRadioSend目录下新建ADSensorSendC.nc文件,并输入如下代码:#include“Adc.h”#include“BlinkToRadio.h”#includemoduleADSensorSendC{uses{interfaceBoot;interfaceAdcControlasADSensorControl;interfaceReadasADSensorRead;interfaceTimer8、>asSensorTimer;interfaceLeds;interfacePacket;interfaceAMPacket;interfaceAMSend;interfaceSplitControlasAMControl;interfacePac
8、>asSensorTimer;interfaceLeds;interfacePacket;interfaceAMPacket;interfaceAMSend;interfaceSplitControlasAMControl;interfacePac
此文档下载收益归作者所有