关于中控车机与仪表互联的通讯协议和联调理解

在这里插入代码片
```<div id="article_content" class="article_content clearfix">
        <link rel="stylesheet" href="https://csdnimg.cn/release/blogv2/dist/mdeditor/css/editerView/ck_htmledit_views-b3c43d3711.css">
                <div id="content_views" class="markdown_views prism-atom-one-dark">
                    <svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
                        <path stroke-linecap="round" d="M5,0 0,2.5 5,5z" id="raphael-marker-block" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"></path>
                    </svg>
                    <h2><a name="t0"></a><a id="_0"></a>关于中控车机与仪表互联的通讯协议和联调</h2> 
<p>关于中控车机与仪表互联的通讯协议和联调,包括媒体音乐,收音机,电话,简易导航四个模块。如果全走CAN信号,要完全模拟仿真所有报文的发送和接收,设计流程,信号非常复杂,因此写一个关于中控车机与仪表交互的流程笔记,方便自己以后查阅。</p> 
<p><strong>交互协议流程:</strong><br> 仪表主动请求车机需要经过:仪表请求帧,车机应答帧,车机请求帧,仪表应答帧,车机数据帧,仪表校验帧的顺序请求。但是不同模块的功能会有或多或少的差异,下面具体说明在不同模块的详细交互流程:</p> 
<p><strong>1</strong>. <strong>音乐+收音系</strong></p> 
<p><img src="https://img-blog.csdnimg.cn/3a92f4f449ea46919181098f183d409e.png" alt="在这里插入图片描述"><br> 如图:当校验帧校验正常时,数据正常显示发送。<br> 【如果存在异常状态,(未接收到反馈或请求报文信号)则显示对于的提示。如:“仪表与车机断开连接”“无法获取媒体信息”等。】</p> 
<p><strong>2</strong>. <strong>电话</strong><br> 电话涉及的交互相对场景较多,较为复杂。主要分为三大场景。<br> <strong>1.静态传输通话记录;2.仪表反控主动拨出;3.仪表被动接听</strong>。下面是对应的流程图。</p> 
<p>一:静态传输通话记录<img src="https://img-blog.csdnimg.cn/b28d9a4fd5324a8fbae151b368e73cb3.png" alt="在这里插入图片描述"></p> 
<p>2:仪表反控主动拨出<br> <img src="https://img-blog.csdnimg.cn/cb77b43ad4284690808f21d384debdd0.png" alt="在这里插入图片描述"></p> 
<p>3:仪表被动接听</p> 
<p><img src="https://img-blog.csdnimg.cn/6cafc6f7a123482689a20a6b551c4216.png" alt="在这里插入图片描述"></p> 
<p><strong>3</strong>. <strong>简易导航</strong><br> <img src="https://img-blog.csdnimg.cn/6b1c9612994c454b92c354136a6ed082.png" alt="在这里插入图片描述"><br> 在具体的数据发送中,涉及到数据帧的多帧发送,其中也涉及协议,具体发送方式看定义,下面举例说明下数据发送方式。</p> 
<p>发送错误数据帧的三种类型:<br> <strong>1.发送数据长度不正确的数据帧</strong><br> <img src="https://img-blog.csdnimg.cn/6e3bb7e63d564dedb4e2f65b0a942e33.png" alt="在这里插入图片描述"></p> 
<p>如图,我们知道,一个字符转换成Unicode是要占用两个字节。所以“青花瓷周杰伦”需要12个字节,占用12个Byte,要发送<strong>数据长度不正确</strong>的数据帧 ,只需发送小于12个字节,或大于12个字节即可。</p> 
<p><strong>2.发送数据帧数不正确数据帧</strong><br> <img src="https://img-blog.csdnimg.cn/8b05b0e0f7654704b0a2ce84c08d4d8c.png" alt="在这里插入图片描述"><br> 如图,发送<strong>数据帧数</strong>不正确的数据帧,请求帧请求发送<strong>2</strong>帧数据帧,但是在发送数据帧的时候,发送了<strong>3</strong>帧数据帧,则发送了数据帧数不正确的数据帧,仪表会外发校验帧6A6,回复错误响应</p> 
<p><strong>3.发送帧顺序不连续的数据帧</strong><br> <img src="https://img-blog.csdnimg.cn/9606084d02ad48af85f226db5b78011e.png" alt="在这里插入图片描述"><br> 如图,需要发送的数据帧需要四帧发完,Can 6B6 NUM_OF_DATA_MEDIA_INFO_HUM = 1/2/3/4(帧序列号)是表示数据帧的帧序列号,要发送<strong>帧顺序不连续</strong>的数据帧,就打乱它的发送顺序即可,图上先发送了 第三帧,再发送了第二帧。</p> 
<p>发送正确的数据帧:<br> <img src="https://img-blog.csdnimg.cn/8a41c3ba6036401abd22905f605b9ac9.png" alt="在这里插入图片描述"><br> 在数据报文的发送中:<br> Can 6B6 = 17 72 31 5C 31 4E 00 4E,第1个Byte是17,代表的是第一帧,且有效数据是后面7位<br> Can 6B6 = 23 2A 5B 57 00 00 00 00 ,第2个Byte是23,代表的是第二帧,且有效数据是后面3位</p> 
<p>数据全是通过Unicode转换。【但要注意的是,无论是“17”还是“27”,都得看需求协议的定义和通讯矩阵对信号的定义,如果加上标志位或者帧类型的描述,就不一定是“17”代表的是第一帧,且有效数据是后面7位这种逻辑类型了。一般多数情况下是上述的逻辑类型,但不绝对】</p> 
<p>然后关于数据的发送,涉及到多帧时,要通过工具,写个Function Blocks去代替我们手动无法如此快速发送的脚本,让工具替我们去一帧一针的Transmit。当然如果有设备可以联调的话,当然是最好,可以跳过复杂的流程,但是内部核心逻辑是不变的。</p> 
<p>总之,弄清楚交互的流程是大前提,只有对逻辑流程理解清晰了,才能对项目做开发,对测试做设计。</p>
                </div><div data-report-view="{&quot;mod&quot;:&quot;1585297308_001&quot;,&quot;spm&quot;:&quot;1001.2101.3001.6548&quot;,&quot;dest&quot;:&quot;https://blog.csdn.net/qq_39593577/article/details/124682407&quot;,&quot;extend1&quot;:&quot;pc&quot;,&quot;ab&quot;:&quot;new&quot;}"><div></div></div>
                <link href="https://csdnimg.cn/release/blogv2/dist/mdeditor/css/editerView/markdown_views-22a2fefd3b.css" rel="stylesheet">
                <link href="https://csdnimg.cn/release/blogv2/dist/mdeditor/css/style-4f8fbf9108.css" rel="stylesheet">
        </div>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值