找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2518|回复: 0
打印 上一主题 下一主题
收起左侧

一种非标准单总线协议辅助分析思路

[复制链接]
跳转到指定楼层
楼主
一、探究背景

        从事电子行业的朋友,特别是从事嵌入式工作的朋友,都知道逻辑分析仪这个工具,用它来抓协议是非常方便可靠的。基本上所有的标准总线协议, 逻辑分析仪都能分析出来。
        但是,对于非标准的协议,逻辑分析仪就无能为力了。因为逻辑分析仪 所分析的协议是标准的、已知的、预编程分析的。所以,有必要对非标准的 协议进行处理。
        接下来,我会在本文中讨论和制作一种非标准单总线协议辅助工具。

二、单总线的特点

        单总线,就是主机和从机在一根线上来回传输数据。由于只有一根线, 所以数据和时钟都包含在内,它的传输时“半双工”的,即可以主机发从机 收或者从机发主机收。有两种方向但不能同时进行,所以称为“半双工”。
    还有就是,总线空闲时,一定是高电平,一般需要外接上拉电阻把总线拉高。
    主机和从机的通信端口一般都是配置为输入悬浮,即端口本身不接上拉电阻 和下拉电阻,端口本身的电平是不确定的,所以需要外接一个上拉电阻将总 线拉高。在通信时,发送方端口被配置为输出模式来拉低电平,端口被配置 为输入悬浮来释放总线;接收方的端口配置为输入悬浮、下降沿中断来检测 和获取数据。值得注意的是,单总线对时序比较敏感,如果传输的数据时序 稍微有偏差,通信往往就失败。DS18B20温度传感器就是标准单总线协议通 信的,这个比较典型,网上也有很多例程和讲解,单总线入门可以从DS18B20 开始。

三、非标准单总线分析的难点

      虽然是非标准的单总线,但其硬件方面还是跟标准的单总线一样。不同的 地方就是是传输协议了,有许多产品采用非标准单总线协议来识别自家产品,比 PSP 如日本的数码相机电池、  掌机电池、部分手机电池等。它们采用非标准协议 主要是防止别人生产兼容产品,而且价格也是比较高的,当然对消费者是不利的。
      以相机和电池通信为例。把相机和电池的通信端子和它们的负极用线引出 来,都接到逻辑分析仪上,我们会看到一大堆高低电平通信,而且还不是标准的 单总线协议,根本无从下手。
      那么问题来了:如果要分析相机与电池的非标准单总线协议,如何知道总 线到底是被相机拉低了还是被电池拉低了?
      不解决这个问题,后面的协议分析就无法进行下去了!!!

四、解决思路

    1、相机和电池通信的等效模
   查看附件图片
    2、设计模型
    查看附件图片
   3、优化后模型
   查看附件图片
  4、实际电路设计
       查看附件图片
  5、实际测试
     查看附件图片
五、总结
  本文从最简单的模型分析判断总线被哪方拉低的可能性,然后逐步完成电路
的设计,最后搭建电路并且经过了测试。对于非标准的协议辅助分析,本工具能派上用场的。




设计后模型.JPG (63.9 KB, 下载次数: 209)

设计后模型.JPG

设计模型.JPG (50.07 KB, 下载次数: 213)

设计模型.JPG

实际测试.JPG (47.95 KB, 下载次数: 218)

实际测试.JPG

实际电路设计.JPG (51.75 KB, 下载次数: 220)

实际电路设计.JPG

相机的电池通信的等效模型.JPG (41.96 KB, 下载次数: 214)

相机的电池通信的等效模型.JPG
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表