PJON Arduino 通讯总线方案

我要开发同款
匿名用户2015年09月27日
35阅读
开发技术C/C++
所属分类其他开源、开源硬件
授权协议未知

作品详情

PJON(PaddedJitteringOperativeNetwork)是一个简单的连线、多master通讯总线系统。是i2c、1-Wire、串口以及其他Arduino兼容协议的替代方案。

特性

单个物理层连接,可支持高达50个节点

实现了设备编码来支持高达254个设备通讯

循环冗余校验(CRC).

确保数据包发送的正确

多master支持中的避免冲突

提供广播功能

包管理机制来跟踪和重新发送失败的数据包发送

错误处理

性能

传输速率:32256baud/sor4.32kB/s

带宽:2.7kB/s

精确度:99.95%

兼容性

ArduinoDiecimila/Duemilanove

ArduinoMini

ArduinoUno

ArduinoNano

ArduinoMega

示例代码:

#include <PJON.h>     // Transmitter board codePJON network(12, 45); // Bus connection to pin 12, device id 45void 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 codePJON network(12, 44); // Bus connection to pin 12, device id 45void 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);}
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论