Tinyos tutorial learning tips -- lesson 6
来源:互联网 发布:app软件开发公司 编辑:程序博客网 时间:2024/05/17 19:17
介绍了PC如何与传感器通讯,以及接收Sensor采集的数据并向Sensor发送数据。
1. 直接显示数据包内容:
先进入tools/java目录,输入make命令编译。
再设置环境变量:export MOTECOM=serial@COM1:tmote
(端口) : (比特率,也可以采用数字)
然后开始监听:java net.tinyos.tools.Listen
完毕之后重置环境变量:unset MOTECOM
2. 图形显示数据包内容:
# SerialForwarder程序
java net.tinyos.sf.SerialForwarder -comm serial@COM1:tmote
注意:SerialForwarder监听时不使用MOTECOM变量,而需在命令行参数-comm处指定端口及比特率,这是因为:一般情况下使用SerialForwarder向串口发送包时会用到MOTECOM变量,如果它监听时也用MOTECOM的话,到时候SerialForwarder就只能自己跟自己说话了。把发送的端口和监听的端口分开确定,有助于提高灵活性。
----------------------------------------------------------------------------
# Oscilloscope GUI程序
java net.tinyos.oscope.oscilloscope
注意:保持SerialForwarder运行状态,然后重新打开一个cygwin窗口,然后进入tools/java目录输入命令,打开Oscilloscope程序,可以显示数据包数据的直观图像。
3. MIG消息接口生成工具
MIG工具:可以为Mote应用程序所使用的消息类型自动生成相应的java类。
net.tinyos.message软件包:提供发送和接收MIG生成的数据包。
NCG:从nesC文件中抽取数据以供其他程序使用。
GraphPanel.java
// OK, connect to the serial forwarder and start receiving data
mote = new MoteIF(PrintStreamMessenger.err, oscilloscope.group_id);
mote.registerListener(new OscopeMsg(), this);
GraphPanel程序的作用:连接到Serial Forwarder,向其注册自己的数据包及处理函数,然后再监听、接收及发送数据包。
# 示例:如何通过MIG生成自定义消息类型的java类?
查看tools/java/net/tinyos/oscope/Makefile里面有如下一条命令:
OscopeMsg.java:
$(MIG) -java-classname=$(PACKAGE).OscopeMsg $(APP)/OscopeMsg.h OscopeMsg -o $@
$(MIG) -java-classname=$(PACKAGE).OscopeMsg $(APP)/OscopeMsg.h OscopeMsg -o $@
其中PACKAGE=net.tinyos.oscope,APP= $(TOS)/../apps/Oscilloscope
这条命令指示MIG到APP路径下找到OscopeMsg.h文件,从中找到OscopeMsg的Struct定义,再以此生成相应的java类:net.tinyos.oscope.OscopeMsg
- Tinyos tutorial learning tips -- lesson 6
- Tinyos tutorial learning tips -- lesson 1
- Tinyos tutorial learning tips -- lesson 2
- Tinyos tutorial learning tips -- lesson 3
- Tinyos tutorial learning tips -- lesson 4
- Tinyos tutorial learning tips -- lesson 5
- Tinyos tutorial learning tips -- lesson 7
- Tinyos tutorial learning tips -- lesson 8
- notes/tips during sql tutorial learning
- learning tutorial
- Lesson 17: SDK文档:Tutorial 6 Lighting分析
- tinyos learning on day 3
- Lesson One(Machine Learning)
- Learning note(6) for windows powershell Tips
- Tutorial Lesson 1: Using Quartz
- Deep learning tutorial
- Reinforcement Learning (DQN) tutorial
- Learning English - Lesson One (Introduction)
- 不能正常启动OracleOraHome92ManagementServer服务解决啦
- 汉字转拼音缩写的函数(C#)
- Cview,Frame,Doc,APP等的调用顺序
- 程序人生:Facebook的23岁创始人
- 使用jdom解析xml
- Tinyos tutorial learning tips -- lesson 6
- MD5 VB
- 游戏中的脚本语言
- Linux下多线程编程详解
- Tinyos tutorial learning tips -- lesson 7
- 远程调用技术代码追踪(Remobjects第三方控件)
- Windows 2000/XP/2003下安装配置IIS+PHP+MySQL+Zend Optimizer+GD库+phpMyAdmin
- Tinyos tutorial learning tips -- lesson 8
- 定时采集时间控制方式