MoteLab£º·µ»Ø´®¿ÚÊý¾Ý´¦Àí£¨python£©
´ÓMoteLab·µ»ØµÄ´®¿ÚÊý¾Ý£¬°üº¬messages.pickleÎļþÕâÊÇMoteLabϵͳÖд®¿ÚÊÕ¼¯Êý¾ÝµÄ×ܺͣ¬µ«ÊÇÕâЩÊý¾ÝÐèÒª½âÎöºó²ÅÄܽøÐзÖÎö¡£ÏÂÃæµÄ´úÂë¾ÍÊÇÔÚpython»·¾³ÏÂÌáÈ¡messageÓÐЧÊý¾ÝµÄ´úÂë¡£
ʹÓÃÃüÁî python TestOutput.py messages.pickle
Éú³ÉµÄtest.log¾ÍÊÇ»ñµÃµÄÓÐЧÊý¾Ý
·µ»ØÊý¾ÝµÄʾÀý
1252985727.66 received from0Message <mviz_msg> £ºÊ±¼ä ½ÓÊÕ/·¢ËÍ ½ÚµãºÅ ÏûÏ¢ÀàÐÍ
[version=0x0]
[interval=0x400] £ºÏûÏ¢ÄÚÈÝ ºÍMviz.h¶¨ÒåÖÐÏàͬ
[origin=0x4f]
[count=0x0]
[reading=0x0]
[etx=0x0]
[link_route_value=0x0]
[link_route_addr=0x0]
1252985727.66 received from0Message <mviz_msg>
[version=0x0]
[interval=0x400]
[origin=0x52]
[count=0x0]
[reading=0x0]
[etx=0x0]
[link_route_value=0x0]
[link_route_addr=0x0]
Ô´´úÂëÖ»ÒªÐÞ¸ÄÏûÏ¢Àà¾Í¿ÉÒÔ£¨´úÂëÖеÄmviz_msg)¶ÔÆäËüÊý¾Ý½øÐзÖÎö
Ô´´úÂë
import os,sys,traceback,time,cPickle
sys.path.append(os.path.join(os.environ["TOSROOT"], "support/sdk/python"))
from tinyos.message import Message
import mviz_msg
logfile = open('test.log', 'w')
picklefile = open(sys.argv[1])
counters = {}
def checkmessage(m):
if m.dest == 0xFFFF:
return True
if not counters.has_key(m.addr):
counters[m.addr] = 0
return True
else:
return True
while True:
try:
m = cPickle.load(picklefile)
if m.amType() == mviz_msg.AM_TYPE:
Mviz_msg = \
mviz_msg.mviz_msg(dat
Ïà¹ØÎĵµ£º
ÔÚPythonÖУ¬¿ÉÒÔʹÓÃFunctionÀ´ÊµÏÖ´úÂëÖØÓá£Èç¹ûÐèÒªÖØÓÃÒ»×éfunction£¬ÔòÐèҪʹÓÃModules¡£
¶ÔÓÚModules£¬¿ÉÒÔʹÓÃÁ½ÖÖ·½·¨±àд¡£µÚÒ»¡¢Ò²ÊÇ×î¼òµ¥µÄ·½·¨£¬¾ÍÊÇʹÓÃPython±àд¡£¿ÉÒÔ´´½¨Ò»¸öºó׺ÃûΪ.pyµÄÎļþ£¬ÔÚÆäÖбàдº¯ÊýºÍ±äÁ¿¡£ÁíÍâÒ»ÖÖ·½·¨ÊÇÖ ......
¶à¸öÖ´ÐÐÏ߳̾³£Òª¹²ÏíÊý¾Ý£¬Èç¹û½ö½ö¶ÁÈ¡¹²ÏíÊý¾Ý»¹ºÃ£¬µ«ÊÇÈç¹û¶à¸öÏß³ÌÒªÐ޸Ĺ²ÏíÊý¾ÝµÄ»°¾Í¿ÉÄܳöÏÖÎÞ·¨Ô¤ÁϵĽá¹û¡£
¼ÙÈçÁ½¸öÏ̶߳ÔÏót1ºÍt2¶¼Òª¶ÔÊýÖµnum=0½øÐÐÔö1ÔËË㣬ÄÇôt1ºÍt2¶¼¸÷¶ÔnumÐÞ¸Ä10´ÎµÄ»°£¬ÄÇônum×îÖյĽá¹ûÓ¦¸ÃΪ20¡£µ«ÊÇÈç¹ûµ±t1È¡µÃnumµÄֵʱ£¨¼ÙÈç´ËʱnumΪ0£©£¬ÏµÍ³°Ñt1µ ......
Python ³ÌÐòÖеÄÒ»ÇÐÊý¾Ý¶¼ÊǶÔÏó¡£¶ÔÏó°üÀ¨×Ô¶¨Òå¶ÔÏó¼°»ù±¾µÄÊý¾ÝÀàÐÍÈçÊýÖµ¡¢×Ö·û´®¡¢ÁÐ±í¡¢×ÖµäµÈ¡£ÄãÄܹ»ÒÔÀà»òÀ©Õ¹ÀàÐ͵ķ½Ê½´´½¨×Ô¶¨Òå¶ÔÏó¡£±¾ÕÂÖ÷ÒªÃèÊö Python¶ÔÏóÄ£Ðͼ°µÚËÄÕÂ--ÔËËã·ûÓë±í´ïʽÖÐÒªÓõ½µÄһЩԤ±¸ÖªÊ¶¡£
1.1. ÊõÓï
³ÌÐòÖеÄÒ»ÇÐÊý¾Ý¶¼ÊǶÔÏó£¬Ã¿¸ö¶ÔÏó¶¼ÓÐÈý¸ö»ù±¾ÊôÐÔ£¬¼´±êʶ(ÀàË ......
ÓÃpythonдÁ˸ö×î¼òµ¥µÄ¶Á´®¿ÚµÄ³ÌÐò£¬ÒòΪ¹¤×÷Öо³£ÐèÒª¶Á´®¿Ú
·ÅÔʼ´úÂë
import serial
ser = serial.Serial('com3',baudrate=115200, bytesize=8,parity='N', stopbits=1,xonxoff=0, timeout=1)
while( True ):
a = ser.read(100)
print a
ÓÃÍêÐèÒªser.close()£¬·ñÔòÆäË ......
¡¡¡¡ÉÏ´Îѧϰ¹ýmarshalÄ£¿éÓÃÓÚÐòÁл¯ºÍ·´ÐòÁл¯£¬µ«marshalµÄ¹¦ÄܱȽϱ¡Èõ£¬Ö»Ö§³Ö²¿·ÖÄÚÖÃÊý¾ÝÀàÐ͵ÄÐòÁл¯/·´ÐòÁл¯£¬¶ÔÓÚÓû§×Ô¶¨ÒåµÄÀàÐ;ÍÎÞÄÜΪÁ¦£¬Í¬Ê±marshal²»Ö§³Ö×ÔÒýÓÃ(µÝ¹éÒýÓÃ)µÄ¶ÔÏóµÄÐòÁл¯¡£ËùÒÔÖ±½ÓʹÓÃmarshalÀ´ÐòÁл¯/·´ÐòÁл¯¿ÉÄܲ»ÊǺܷ½±ã¡£»¹ºÃ£¬python±ê×¼¿âÌṩÁ˹¦Äܸü¼ÓÇ¿´óÇÒ¸ü¼Ó°²È«µÄpickle ......