- 1、本文档共16页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Lesson4---串口通信与SerialForwarder课件
Lesson4 串口通信与SerialForwarder 介绍信息包源的概念 如何测试串口,监听工具Listen 如何使用PC 和节点通信 MIG 消息接口生成工具 SerialForwarder 工具 1.1 信息包源 节点与电脑(mote-PC)通信的基本抽象就是信息包源(packet source)。 信息包源的确切定义是:信息包源是一种通信媒介,应用程序可以通过它接收来自节点的信息包,也可以发送信息包到节点。 大多数的TinyOS通信工具带有 –comm的选项参数,可以允许用一个字符串指明信息包源。例如: java net.tinyos.tools.Listen -comm serial@COM1:micaz 1.2 串口测试 先下载 apps/tests/TestSerial 应用程序到节点上。 每秒发送信息包到电脑的串口,当节点通过串口接收到来自电脑的信息包时,则把信息包的顺序号显示在LED灯上。 下载之后,运行Java 程序TestSerial,可以用它来和串行口通信,它会显示电脑从串口接收到的信息包,并把接收到的信息包原样的发送回去。这时节点接收到信息包并在LED上显示。 1.2 串口测试 $ java TestSerial –comm serial@COM7:micaz 1.3 串口的语法 如果没有指明正确的端口,可能无法连接。串口设置的语法如下: serial@PORT:SPEED PORT 取决于平台,如果是Windows/Cygwin 平台,则使用 COMN, 而如果是Linux/Unix 平台,则使用 /dev/ttyS N。 速度SPEED 既可以是数字值,也可以是节点平台的名字。 2.1 基站BaseStation与监听工具 基站是TinyOS中一个基本的应用程序。它在串行口和无线电网络之间扮演了桥梁的角色。 准备两个micaz节点: BlinkToRadio:定时触发把计数值发到无线电。 BaseStation:接收无线电,发送到串口。 PC端java工具Listen :把监听得的信息二进制打印。 java net.TinyOS.tools.Listen –comm +端口 2.2 信息包格式 每个来自节点的信息包包含了很多数据区域。 第1个字节 (00) 指明这个信息包是AM类型。接下去就是一般的活动消息区,剩下的就是消息的有效载荷区域,在BlinkToRadio.h文件里定义: 三、 MIG消息接口生成工具 Listen工具是与节点通信最基本的方式,它仅仅打印出二进制数据包到屏幕。显然,该工具不易使传感器的数据可视化。 使用 mig 工具去构建一个针对消息结构的java ,python或者C接口,会自动地分解信息包中的每一个域。 详见 BlinkToRadio下的makefile文件。 java net.tinyos.tools.MsgReader BlinkToRadioMsg –comm +端口 三、 MIG消息接口生成工具 java net.tinyos.tools.MsgReader BlinkToRadioMsg –comm +端口 四、 SerialForwarder工具 直接使用串行口的问题是: 只有一个PC 程序可以与节点交互。 必须在真正与节点有物理连接的PC上运行应用程序。 SerialForwarder工具可去除这些局限性。它打开信息包源,让众多应用程序通过TCP/IP 流连接到信息源并使用它。 例如,运行SerialForwarder,它的信息包源是串行口;而应用程序连接到SerialForwarder,而不是直接连接的串行口,SerialForwarder扮演了一个代理读写信息包的角色。 四、 SerialForwarder工具 SerialForwarder源语法: sf@HOST:PORT //默认是本地localhost和9002 sf@:1948 连接到运行在名为dark.cs.berkeley的计算机上的SerialForwarder,其端口为1948。 例子: 第1步是先运行SerialForwarder,以串行口作为信息包来源,并作为sf源输出。 java net.tinyos.sf.SerialForwarder –comm serial@COM7:micaz 打开了第2个SerialForwarder应用,它的信息源是第1个SerialForwarder java net.TinyOS.sf.SerialForwarder -port 9003 -comm sf@localhost:9002 四、 SerialForwarder工具 关闭第2个SerialFor
您可能关注的文档
最近下载
- 人教PEP版六年级上册Unit 5 What does he do 单元整体教学设计.pdf
- 2021年新生儿感染:抗菌药物预防性与治疗性使用指南解读(全文).pdf
- 《数字图像处理教程》试题库.pdf VIP
- 学校意识形态工作计划.pdf
- 战略模拟软件CESIM全攻略(课堂PPT).ppt
- 中国碳交易政策对可持续经济福利的影响.pptx VIP
- 反三违(典型“三违”)行为清单.docx
- (高清版)B-T 3836.1-2021 爆炸性环境 第1部分:设备 通用要求.pdf VIP
- 人教版高一化学必修一知识点梳理.docx
- 人教pep版英语三年级上册阅读理解专项复习试卷测试题(含答案).doc
文档评论(0)