PJON 介绍
PJON (Padded Jittering Operative Network) 是一个简单的连线、多 master 通讯总线系统。是 i2c
、1-Wire、串口以及其他 Arduino 兼容协议的替代方案。
-
单个物理层连接,可支持高达 50 个节点
-
实现了设备编码来支持高达 254 个设备通讯
-
循环冗余校验 (CRC).
-
确保数据包发送的正确
-
多 master 支持中的避免冲突
-
提供广播功能
-
包管理机制来跟踪和重新发送失败的数据包发送
-
错误处理
-
传输速率: 32256 baud/s or 4.32kB/s
-
带宽: 2.7kB/s
-
精确度: 99.95%
-
Arduino Diecimila / Duemilanove
-
Arduino Mini
-
Arduino Uno
-
Arduino Nano
-
Arduino Mega
示例代码:
#include <PJON.h> // Transmitter board code PJON network(12, 45); // Bus connection to pin 12, device id 45 void setup() { network.send(44, "B", 1, 1000000); // Send to device 44, "B" content of 1 byte length every 1000000 microseconds (1 second) } void loop() { network.update(); } /* ---------------------------------------------------------------------------- */ #include <PJON.h> // Receiver board code PJON network(12, 44); // Bus connection to pin 12, device id 45 void setup() { network.set_receiver(receiver_function); // Set the function used to receive messages }; static void receiver_function(uint8_t length, uint8_t *payload) { if(payload[0] == 'B') { // If the first letter of the received message is B digitalWrite(13, HIGH); delay(30); digitalWrite(13, LOW); } } void loop() { network.receive(1000); }
PJON 官网
https://github.com/gioblu/PJON
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。