当前位置: 首页 > news >正文

【控制器局域网】CAN报文学习笔记(四)之 字节排序、信号提取实例1

以下面的表格来表示字节顺序和位顺序,用红色表示高位MSB,蓝色表示低位LSB,绿色为LSB到MSB的过度

Bit oderMSBLSB
Byte oder\Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0
MSBByte076543210
Byte115141312111098
Byte22322212019181716
Byte33130292827262524
Byte43938373635343332
Byte54746454443424140
Byte65554535251504948
LSBByte76362616059585756

下面以起始位36,长度为16的信号详细说明MSB与LSB的区别

Motorola Forward MSB (Big-Endian) 大端序

矩阵文档中的起始位置是MSB的起始位36,往高字节借位
在这里插入图片描述

填入 十六进制整数0x8FC0 , 对应二进制 1000 1111 1100 0000,如下图

在这里插入图片描述

要注意其箭头的增长方向,这样我们在提取该信号的值为:

MotorolaSignal = (Byte2 & 0b00011111) +(Byte3 << 3) + (Byte4 >> 5)

Motorola Forward LSB (Little-Endian) 小端序

矩阵文档中的起始位置是LSB的起始位36,往低字节借位
在这里插入图片描述

填入 十六进制整数0x8FC0 , 对应二进制 1000 1111 1100 0000,如下图
在这里插入图片描述

要注意其箭头的增长方向,这样我们在提取该信号的值为:

MotorolaSignal = (Byte2 & 0b00001111) +(Byte3 << 4) + (Byte4 >> 4)

相关文章:

  • MyBatis——MyBatis的原始Dao开发(了解)
  • 类和对象(中篇)
  • SpringBlade export-user SQL 注入漏洞复现
  • Qt 国际化——创建中英文翻译步骤
  • Linux线程——条件变量
  • 快速能访问服务器的文件
  • Web请求与响应
  • 修改blackd源码,实现 black + isort
  • 银行测试:第三方支付平台业务流,功能/性能/安全测试方法
  • 最新国内可用使用GPT4.0,GPT语音对话,Midjourney绘画,DALL-E3文生图
  • MySQL基本操作 DDL DML DQL三大操作介绍
  • vue打包内存问题解决办法<--- Last few GCs ---><--- JS stacktrace --->
  • linux驱动的学习 驱动开发初识
  • 命令执行 [SWPUCTF 2021 新生赛]babyrce
  • 服务器直接配置免密登录
  • 11111111
  • Apache的基本使用
  • ES2017异步函数现已正式可用
  • Fabric架构演变之路
  • mysql常用命令汇总
  • pdf文件如何在线转换为jpg图片
  • Vue2.0 实现互斥
  • vue的全局变量和全局拦截请求器
  • vue总结
  • 半理解系列--Promise的进化史
  • 前端面试题总结
  • 区块链共识机制优缺点对比都是什么
  • 如何使用 OAuth 2.0 将 LinkedIn 集成入 iOS 应用
  • 入口文件开始,分析Vue源码实现
  • 手写一个CommonJS打包工具(一)
  • 首页查询功能的一次实现过程
  • 腾讯优测优分享 | 你是否体验过Android手机插入耳机后仍外放的尴尬?
  • Salesforce和SAP Netweaver里数据库表的元数据设计
  • ​HTTP与HTTPS:网络通信的安全卫士
  • ​学习一下,什么是预包装食品?​
  • #{}和${}的区别是什么 -- java面试
  • #QT项目实战(天气预报)
  • (+4)2.2UML建模图
  • (5)STL算法之复制
  • (黑客游戏)HackTheGame1.21 过关攻略
  • (论文阅读32/100)Flowing convnets for human pose estimation in videos
  • (十七)Flask之大型项目目录结构示例【二扣蓝图】
  • (四)Android布局类型(线性布局LinearLayout)
  • (转)总结使用Unity 3D优化游戏运行性能的经验
  • *1 计算机基础和操作系统基础及几大协议
  • .Net - 类的介绍
  • .NET 8 中引入新的 IHostedLifecycleService 接口 实现定时任务
  • .NET学习教程二——.net基础定义+VS常用设置
  • /bin、/sbin、/usr/bin、/usr/sbin
  • @SuppressWarnings注解
  • [ 渗透测试面试篇 ] 渗透测试面试题大集合(详解)(十)RCE (远程代码/命令执行漏洞)相关面试题
  • []error LNK2001: unresolved external symbol _m
  • [Android开源]EasySharedPreferences:优雅的进行SharedPreferences数据存储操作
  • [BIZ] - 1.金融交易系统特点
  • [C/C++]关于C++11中的std::move和std::forward