news 2026/5/14 20:45:35

单线多主通讯协议---ming_mmsl

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
单线多主通讯协议---ming_mmsl

ming_mmsl 待办事项

参考

ming_msl.csdn

ming_mmsl 协议(Multi-master Single Line)是对 ming_msl 的升级, 它类似放慢 10000倍的can, 通讯逻辑借鉴 can, 位时序使用ming_msl。

一、与Ming_MSL 对比

项目Ming_MSLMing_MMSL
通信模式主从多主
发送方式单向广播
冲突处理不存在仲裁
线状态开漏开漏
语义命令/状态消息总线
可靠性机制基本无冲突仲裁 + CRC + 丢弃机制
典型模型UART-likeCAN-like

二、核心设计目标

Ming_MMSL 的设计目标是在 Ming_MSL 物理层基础上,引入多主总线能力,使其具备类似 CAN 的消息总线特性,同时保持极简硬件实现与极低速高可靠通信特性。


1️⃣ 多主安全性(Multi-Master Safety)

允许总线中存在多个主节点同时具备发送能力:

  • 任意节点均可发起通信
  • 支持多节点并发竞争发送
  • 不会造成物理层破坏或总线损坏
  • 冲突通过协议层仲裁解决,而非依赖硬件隔离

2️⃣ 非破坏性仲裁(Non-Destructive Arbitration)

在多个节点同时发送时,通过逐 bit 仲裁决定最终发送者:

  • 使用“0 优先于 1”的 CAN-like 仲裁规则
  • 冲突不会破坏已发送的数据
  • 失败节点自动退出发送
  • 胜者继续完成整帧传输

3️⃣ 极简硬件实现(Minimal Hardware Design)

协议设计尽可能依赖软件与简单 GPIO 实现:

  • 单线 SDA 通信
  • 开漏(Open-Drain / Wired-AND)结构
  • 无需专用通信 IP 核
  • 仅依赖 GPIO + 定时器(tick)

4️⃣ 物理层复用(PHY Reuse)

完全复用 Ming_MSL 的物理层设计:

  • tick 时间编码机制不变
  • 脉宽编码(5 tick / 10 tick)保留
  • 极性规则在数据层兼容使用
  • 不增加额外物理信号线

5️⃣ 消息总线语义(Message Bus Semantics)

从“主从控制协议”升级为“广播总线协议”:

  • 所有帧在总线上广播
  • 接收节点根据 ID 过滤消息
  • 支持事件驱动通信模型
  • 支持系统级状态分发

6️⃣ 高容错与弱同步能力(Fault Tolerance & Loose Timing)

增强在低精度时钟环境下的稳定性:

  • 容忍 tick 级别误差
  • 支持 ±若干 tick 抖动
  • 异常节点可自动恢复同步
  • 总线异常状态可自恢复

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/14 20:44:10

OASIS格式:半导体设计数据压缩与传输优化

1. OASIS格式:半导体行业的"数据瘦身术"在45nm工艺节点上,一个简单的M1金属层从设计数据到最终掩模数据的体积膨胀了近100倍——这种指数级增长的数据量曾让整个半导体行业陷入存储和传输的噩梦。2004年诞生的OASIS格式就像一剂精准的"数…

作者头像 李华
网站建设 2026/5/14 20:44:08

如何快速掌握NDS游戏资源提取:Tinke终极免费工具实战指南

如何快速掌握NDS游戏资源提取:Tinke终极免费工具实战指南 【免费下载链接】tinke Viewer and editor for files of NDS games 项目地址: https://gitcode.com/gh_mirrors/ti/tinke 想要轻松提取和修改任天堂NDS游戏中的图像、音频、文本等资源吗?…

作者头像 李华
网站建设 2026/5/14 20:43:08

从云端收藏到本地资产:构建个人B站视频库的实践路径

从云端收藏到本地资产:构建个人B站视频库的实践路径 【免费下载链接】bilibili-downloader B站视频下载,支持下载大会员清晰度4K,持续更新中 项目地址: https://gitcode.com/gh_mirrors/bil/bilibili-downloader 在数字内容消费日益丰…

作者头像 李华
网站建设 2026/5/14 20:42:22

GEC6818嵌入式开发实战:BMP图片解码与帧缓冲显示全解析

1. BMP图片格式解析与嵌入式开发基础 第一次接触BMP图片解码时,我盯着那一堆十六进制数据看了整整一天。后来才发现,BMP格式其实就像一本结构清晰的说明书,只要掌握了它的组织规律,就能轻松提取出我们需要的图像信息。在GEC6818这…

作者头像 李华
网站建设 2026/5/14 20:37:08

别再死记硬背了!用一张图彻底搞懂UDS 0x19服务里的DTC状态位切换逻辑

可视化拆解UDS 0x19服务:用状态机模型掌握DTC状态位切换逻辑 汽车电子诊断领域的技术人员常常需要面对枯燥的协议文本,尤其是UDS诊断协议中的0x19服务涉及多个DTC状态位切换逻辑。传统学习方法依赖死记硬背,效率低下且容易混淆。本文将介绍一…

作者头像 李华
网站建设 2026/5/14 20:36:10

嵌入式开发趋势:从MCU到智能生态的五大挑战

1. 嵌入式开发的范式迁移:从孤立设备到智能生态 十年前,我参与设计的一款工业数据采集器还只需要考虑RS-232通信和本地存储,而今天同样功能的设备必须支持4G远程传输、边缘计算和OTA升级。这个转变折射出整个嵌入式行业的剧变——根据VDC Res…

作者头像 李华