我正在努力在网关(RPI3 + LoRa hat)和节点(RPi3 + LoRa hat)之间建立 lora 通信。由于我想建立没有TTN的通信通道,我尝试了以下示例来设置两者之间的通信:https ://github.com/dragino/rpi-lora-tranceiver/blob/master/dragino_lora_app/main.c
该代码在发送方和接收方两端都运行良好。这意味着在发送方,要发送的消息正在控制台上打印。在接收方,正在显示接收到的消息。
这适用于短消息。但是,我想发送一条 600 字节长的消息。为了发送这个长消息,我编辑了writeBuf()
参数的 typedef 如下:
static void writeBuf(byte addr, byte *value, unsigned short len) {
我进行了此更改,因为byte len
将发送的消息限制为 255(由于 unsugned char 的范围为 0-255)。所以我需要扩大这个范围,以便我可以发送更长的消息。进行此更改后,控制台中不会打印任何消息。其中的 for 循环writeBuf()
从 0-n 开始,然后连续从 99-n 开始,控制台上没有打印发送消息。因此,接收者永远不会收到任何消息。unsigned short
我理解和之间的区别unsigned char
。但是,我无法理解在这种情况下unsigned short
和之间的区别。unsigned char
任何帮助/指导将不胜感激。我还想知道我是否正在做出正确的改变或寻找正确的方向。
谢谢