⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 prettylisten.c

📁 tinyos2.0版本驱动
💻 C
字号:
#include <stdio.h>#include <stdlib.h>#include "sfsource.h"#include "serialpacket.h"#include "serialprotocol.h"void hexprint(uint8_t *packet, int len){  int i;  for (i = 0; i < len; i++)    printf("%02x ", packet[i]);}int main(int argc, char **argv){  int fd;  if (argc != 3)    {      fprintf(stderr, "Usage: %s <host> <port> - dump packets from a serial forwarder\n", argv[0]);      exit(2);    }  fd = open_sf_source(argv[1], atoi(argv[2]));  if (fd < 0)    {      fprintf(stderr, "Couldn't open serial forwarder at %s:%s\n",	      argv[1], argv[2]);      exit(1);    }  for (;;)    {      int len, i;      uint8_t *packet = read_sf_packet(fd, &len);      if (!packet)	exit(0);      if (len >= 1 + SPACKET_SIZE &&	  packet[0] == SERIAL_TOS_SERIAL_ACTIVE_MESSAGE_ID)	{	  tmsg_t *msg = new_tmsg(packet + 1, len - 1);	  if (!msg)	    exit(0);	  printf("dest %u, src %u, length %u, group %u, type %u\n  ",		 spacket_header_dest_get(msg),		 spacket_header_src_get(msg),		 spacket_header_length_get(msg),		 spacket_header_group_get(msg),		 spacket_header_type_get(msg));	  hexprint((uint8_t *)tmsg_data(msg) + spacket_data_offset(0),		   tmsg_length(msg) - spacket_data_offset(0));	  free(msg);	}      else	{	  printf("non-AM packet: ");	  hexprint(packet, len);	}      putchar('\n');      fflush(stdout);      free((void *)packet);    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -