物联网实验报告Word格式.docx

上传人:b****1 文档编号:14019899 上传时间:2022-10-17 格式:DOCX 页数:34 大小:24.62KB
下载 相关 举报
物联网实验报告Word格式.docx_第1页
第1页 / 共34页
物联网实验报告Word格式.docx_第2页
第2页 / 共34页
物联网实验报告Word格式.docx_第3页
第3页 / 共34页
物联网实验报告Word格式.docx_第4页
第4页 / 共34页
物联网实验报告Word格式.docx_第5页
第5页 / 共34页
点击查看更多>>
下载资源
资源描述

物联网实验报告Word格式.docx

《物联网实验报告Word格式.docx》由会员分享,可在线阅读,更多相关《物联网实验报告Word格式.docx(34页珍藏版)》请在冰豆网上搜索。

物联网实验报告Word格式.docx

/**

LED示例程序的实现模块,简单的点亮3个LED灯

@date2010-1

*/

moduleLedM

{

usesinterfaceBoot;

}

implementation

/**LED灯演示

*/

taskvoidDemoLed()

{

/**目前节点上提供两个LED灯

LED_BLUE->

蓝灯

LED_YELLOW->

黄灯

inti,j;

while

(1)

LED_YELLOW_ON;

//熄灭黄色LED灯

for(i=0;

i<

1000;

i++)

for(j=0;

j<

500;

j++);

LED_BLUE_OFF;

//点亮蓝色LED灯

LED_BLUE_ON;

//熄灭蓝色LED灯

/**启动事件处理函数,在LED.nc已经关联到MainC.Boot接口

系统启动后会调用此函数

eventvoidBoot.booted()

postDemoLed();

实验二定时器组件

一、实验内容

通过定时器让绿色灯闪烁,并且闪烁三次后停止闪烁。

二、实验步骤

1)将基站同电脑用烧录线连接好,打开基站的开关,同时将基站的烧录开关拨

上去。

3)在Cygwin界面中执行cdapps/Demos/Basic/Timer,进入到定时器实验目录下。

4)在定时器代码目录下执行makeantc5install,进行编译和烧录。

5)实验现象为基站上绿色灯闪烁,并且闪烁三次后停止闪烁。

#defineDBG_LEV5

moduleTimerLedM

/*Timer为系统接口TMilli指明了定时器的精度为毫秒*/

usesinterfaceTimer<

TMilli>

asTimer1;

/*as关键字为接口别名*/

asTimer2;

/**任务:

切换黄色LED灯*/

taskvoidToggleLedYellow()

LED_YELLOW_TOGGLE;

}

/**启动事件处理函数,在TimerLed.nc已经关联到MainC.Boot接口

eventvoidBoot.booted()

callTimer2.startPeriodic(1000);

/**定时器1:

持续工作,每隔1s触发一次*/

callTimer1.startPeriodic(6000);

/**定时器2:

持续工作,每隔3s触发一次*/

//callTimer2.startPeriodic(5000);

/**定时器1的事件处理函数*/

eventvoidTimer1.fired()

/**事件处理中直接切换蓝色LED灯*/

ADBG(5,ledbluetoggle.\r\n);

//LED_BLUE_TOGGLE;

callTimer2.stop();

/**停止定时器触发*/

callTimer1.stop();

/**定时器2的事件处理函数*/

eventvoidTimer2.fired()

ADBG(5,ledyellowtoggle.\r\n);

postToggleLedYellow();

实验三串口调试

通过级别控制,使得某些调试语句没有被输出到串口。

2)用串口线将基站和PC机器连接起来。

3)打开串口助手。

4)打开Cygwin开发环境。

5)在Cygwin界面中执行cdapps/Demos/Basic/SerialDebug,进入到串口调试实验目录下。

6)在串口调试代码目录下执行makeantc5install,进行编译和烧录。

7)烧录成功后,实验现象为串口有内容输出,输出内容如下:

DEMOofSerialDebug

1.Thisisastring,andthisischarx

2.NUM1:

HEX=0x39,DEC=57

4.FLOAT:

0x123.1234

串口调试程序的实现模块

@date

/*定义调试级别,参加Makefile的ADBG_LEVEL定义,设置大于等于ADBG_LEVEL*/

#defineDBG_LEV3000

#defineDBG_LEV22000

moduleSerialDebugM

通过串口打印信息来调试*/

taskvoidDebugSerial()

uint8_tnum1=0x39;

uint32_tnum2=0x12345678;

floatfloat1=123.1234;

/**ADBG,格式类似于printf,

第一个参数为调试等级,可以参见tos/lib/common/antdebug.h

/**打印字符和字符串*/

ADBG(DBG_LEV,\

\n\r\nDEMOofSerialDebug\r\n,'

x'

);

ADBG(DBG_LEV,.Thisisastring,andthisischar

'

%c'

\r\n,'

/**打印8位的数字*/

ADBG(DBG_LEV,.NUM1:

HEX=0x%x,DEC=%d\r\n,

(int)(num1),(int)(num1));

/**打印32位数字*/

ADBG(DBG_LEV2,.NUM2:

HEX=0x%lx,DEC=%ld\r\n,

(uint32_t)(num2),(uint32_t)(num2));

/**打印浮点数*/

ADBG(DBG_LEV,.FLOAT:

%f\r\n,float1);

/**启动事件处理函数,在SerialDebug.nc已经关联到MainC.Boot接口

postDebugSerial();

实验四串口通信

实现一个串口实验,在串口助手中实现回显的功能。

1)将基站同电脑用烧录线连接好,打开基站的开关。

5)在Cygwin界面中执行cdapps/Demos/Basic/SerialIO,进入到串口通讯实验目

录下。

6)在串口通讯代码目录下执行makeantc5install,进行编译和烧录。

7)根据串口输出的提示进行操作,在串口助手的字符输入框输入1,红灯会一直亮着,直到再一次输入1才熄灭;

在串口助手的字符输入框输入2,绿灯会一直亮着,直到再一次输入1才熄灭,输入其他数字串口会提示“Error

key”,并且会显示你输入的数字,结果如下:

DemoofSerioI/O

[1]ToggleBLUELED

[2]ToggleYELLOWLED

Youchoosetoinput1

YouchoosetoToggleBLUELED

三、实验代码/**

串口输入输出程序的实现模块

@author

#include<

strings.h>

/**定义此宏,将演示UartStream.receive函数,允许一次指定数量的数据*/

//#defineSERIALIO_RECEIVE

moduleSerialIoM

usesinterfaceStdControlasUartStdControl;

usesinterfaceUartStream;

uint8_tm_receive_len;

uint8_tm_echo_buf;

uint8_tm_send_buf[100];

/*显示一个菜单提示用户*/

voidshowMenu()

strcpy(m_send_buf,\

\n\r\nDemoofSerioI/O\r\n[1]

ToggleBLUELED\r\n[2]ToggleYELLOWLED\r\n);

/*通过UartStream.send可以发送字节数据*/

callUartStream.send(m_send_buf,strlen(m_send_buf));

/**启动事件处理函数,在SerialIo.nc已经关联到MainC.Boot接口

LED_

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

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1