TinyOS学习笔记13-节点与计算机利用串口通信3-MIG分析
来源:互联网 发布:linux 移动整个文件夹 编辑:程序博客网 时间:2024/06/05 06:35
MIG:即Message Interface Generator。由于Listem程序所展示的就是2进制代码,不利于程序的编写,利用MIG即可生成和节点发送数据包相对应的信息,更有利于用户编写程序。
MIG工具拥有三个参数:利用生成代码的语言,在哪里的哪个文件去寻找的结构体,结构体的名字
在TestSerial的程序中,利用了MIG来生成对于BlinkToRadio数据包的MSg代码,当编译是会出现如下信息:
mig java -target=telosb -I%T/lib/oski -java-classname=TestSerialMsg TestSerial.h TestSerialMsg -o TestSerialMsg.java
此段即为生成TestSerialMSg.java编译时的代码
实现此段的代码在Makefile中:
COMPONENT=TestSerialAppC
BUILD_EXTRA_DEPS += TestSerial.class
CLEAN_EXTRA = *.class TestSerialMsg.java
TestSerial.class: $(wildcard *.java) TestSerialMsg.java
javac *.java
TestSerialMsg.java:
mig java -target=null -java-classname=TestSerialMsg TestSerial.h TestSerialMsg -o $@
include $(MAKERULES)
BUILD_EXTRA_DEPS += TestSerial.class:代表在编译程序之前需要先编译TestSerial.class
CLEAN_EXTRA = *.class TestSerialMsg.java:指定在用户执行make clean时清除的代码
TestSerial.class: $(wildcard *.java) TestSerialMsg.java :TestSerial.class的生成需要本目录中的所有java文件,执行完后进行编译
javac *.java
TestSerialMsg.java:
mig java -target=null -java-classname=TestSerialMsg TestSerial.h TestSerialMsg -o $@
mig:使用mig
java:建立java的class
-target=null:对于null平台来说
-java-classname=TestSerialMsg:java类的名字
TestSerial.h:结构体在的文件
TestSerialMsg:结构体的名字
-o $@ :写文件到$@,也就是TestSerialMsg.java
MIG工具拥有三个参数:利用生成代码的语言,在哪里的哪个文件去寻找的结构体,结构体的名字
在TestSerial的程序中,利用了MIG来生成对于BlinkToRadio数据包的MSg代码,当编译是会出现如下信息:
mig java -target=telosb -I%T/lib/oski -java-classname=TestSerialMsg TestSerial.h TestSerialMsg -o TestSerialMsg.java
此段即为生成TestSerialMSg.java编译时的代码
实现此段的代码在Makefile中:
COMPONENT=TestSerialAppC
BUILD_EXTRA_DEPS += TestSerial.class
CLEAN_EXTRA = *.class TestSerialMsg.java
TestSerial.class: $(wildcard *.java) TestSerialMsg.java
javac *.java
TestSerialMsg.java:
mig java -target=null -java-classname=TestSerialMsg TestSerial.h TestSerialMsg -o $@
include $(MAKERULES)
BUILD_EXTRA_DEPS += TestSerial.class:代表在编译程序之前需要先编译TestSerial.class
CLEAN_EXTRA = *.class TestSerialMsg.java:指定在用户执行make clean时清除的代码
TestSerial.class: $(wildcard *.java) TestSerialMsg.java :TestSerial.class的生成需要本目录中的所有java文件,执行完后进行编译
javac *.java
TestSerialMsg.java:
mig java -target=null -java-classname=TestSerialMsg TestSerial.h TestSerialMsg -o $@
mig:使用mig
java:建立java的class
-target=null:对于null平台来说
-java-classname=TestSerialMsg:java类的名字
TestSerial.h:结构体在的文件
TestSerialMsg:结构体的名字
-o $@ :写文件到$@,也就是TestSerialMsg.java
- TinyOS学习笔记13-节点与计算机利用串口通信3-MIG分析
- TinyOS学习笔记13-节点与计算机利用串口通信3-MIG分析
- TinyOS学习笔记12-节点与计算机利用串口通信2-数据包分析
- TinyOS学习笔记12-节点与计算机利用串口通信2-数据包分析
- TinyOS学习笔记10-节点与计算机利用串口通信1
- TinyOS学习笔记11-节点与计算机利用串口通信2-BaseStation
- TinyOS学习笔记10-节点与计算机利用串口通信1
- TinyOS学习笔记11-节点与计算机利用串口通信2-BaseStation
- 节点与计算机利用串口通信1——TestSerial
- 节点与计算机利用串口通信2-BaseStation
- TinyOS学习笔记3-Blink分析
- tinyos 串口通信
- tinyos中节点-pc串口通信实验中net.tinyos.message包出错问题的解决方案
- Tinyos学习笔记-节点和pc端口之间的通信-SerialForwarder作为信息源
- TinyOs开发-----TinyOs 串口通信设置
- TinyOS学习笔记(3)
- TinyOS学习笔记3 --Blink
- TinyOS学习笔记4-task操作分析
- BIT1015 Edit Distance
- 值参数,输出参数和引用参数
- MyEclipse5.0M1注册码(永久生效)
- 一种实用的笑脸检测方法
- 基于Linux开源VOIP系统LinPhone[二]
- TinyOS学习笔记13-节点与计算机利用串口通信3-MIG分析
- 前端JS模板
- CursorLoader和CursorAdapter的配合使用
- 高性能JavaScript模板引擎原理解析
- mysql中主键自动增长时的几种情况
- 前段/oa开发必备jquery ui
- 用拦截器解决页面JSP缓存问题
- Oracle建立DBLINK的详细步骤记录
- 把文件用base64进行转码