我正在尝试使用 MQTT-Rime 网关构建 MQTT-SN。我成功地使用串行套接字将传感器数据发送到网关,但我的网关也必须向微尘发送一些数据。我的问题是我不知道如何从 mote 中的套接字读取数据。有人可以帮助我吗?
问问题
627 次
1 回答
0
如果输入数据是以换行符结尾的 ASCII,则可以使用串行线路接口。
#include "contiki.h"
#include "dev/serial-line.h"
#include <stdio.h>
PROCESS(test_serial, "Serial line test process");
AUTOSTART_PROCESSES(&test_serial);
PROCESS_THREAD(test_serial, ev, data)
{
PROCESS_BEGIN();
for(;;) {
PROCESS_YIELD();
if(ev == serial_line_event_message) {
printf("received line: %s\n", (char *)data);
}
}
PROCESS_END();
}
如果数据是二进制的,则需要定义自己的回调函数:
int binary_input_byte(unsigned char c) {
// ...
}
然后将此设置为串行接口回调(uart0
在这里使用,您需要使用的确切名称取决于平台):
uart0_set_input(binary_input_byte);
于 2018-05-21T10:26:56.030 回答