canopen使用


CAN 总线协议
1)、启动SDO 下载协议

ccs:客户端

指定命令
      1:开始下载请求
•scs:服务器命令符
3:开始下载响应
•n:只有当e =1和s=1,否则为0。如果有效则表示字节在d不这样做的数量有效包含的数据。字节[8-n中,7]不包含数据。
•e:传输类型
0:正常传输
1:加速传输
•s:尺寸指示
0:数据集大小不指示
1:数据集大小显示
•m:多路复用器。它代表了数据的索引/分项指数为转移的SDO。
•d:数据
e =0,s= 0:d被保留用于进一步使用。
e =0,s= 1:D包含的字节数来进行下载。字节4包含LSB和字节7包含MSB。
e =1,s= 1:D含有长度为4-n的数据被下载,编码取决于数据的引用的类型通过索引和子索引
e =1,s =0:D包含的字节数不确定要下载
•x:未使用,始终为0
•reserved:保留以备后用,始终为0

2、SDO 下载段协议


•ccs:客户机命令符
0:下载段请求
•scs:服务器命令符
1:下载段响应
•seg-data数据:要下载最多7个字节段的数据。编码取决于类型通过索引和子索引引用的数据
•n为表示不包含数据段中的seg-data的字节数。字节[8-n中,7]做不包含数据段。 n = 0时,如果被指示没有段大小。
•c:指示是否仍然有更多的段被下载。
0:还有段要下载
1 :没有段要下载
•t:触发位。该位必须交替在每个后续段下载。 第一段将触发位设置为0,触发位请求和相应是相等。
•X:未使用,始终为0
• reserved:保留以备后用,始终为0。


3、SDO启动上传协议

•ccs:客户机命令符
2:开始上传请求
•scs:服务器命令符
2:开始上传回复
•n:只有当e =1和s=1,否则为0。如果有效则表示字节在d数据中不包含字节[8-n中,7]段的数据。
•e:传输类型
  0:正常传输
  1:加速传输
•s:尺寸指示
  0:数据集大小不指示
  1:数据集大小显示
•m:多路复用器。它代表了数据的索引/分项指数为转移的SDO。
•d:数据
  e =0,s= 0:d被保留用于进一步使用。
  e =0,s= 1:d包含的字节数进行上载。字节4包含LSB和字节7包含MSB。
  e =1,s= 1:d含有长度为4-n的数据被上载,编码取决于数据的引用的类型通过索引和子索引
•X:未使用,始终为0
• reserved:保留以备后用,始终为0。


4、SDO上传段协议


•ccs:客户机命令符
3:上传段的请求
•scs:服务器命令符
0:上传段响应
•t:触发位。该位必须切换对于上载的每个后续段。 第一段将触发位设置为0。请求和响应消息的触发位是相等的。
•c:表示是否还有更多的片段被上传。
0:更多的段要上载
1:没有更多的段要上载
•seg-data:至多7个字节段的数据被上载。的编码依赖于类型通过索引和子索引所引用的数据
•n为表示不包含数据段中的seg-data的字节数,字节[8-n中,7]做不包含数据段,n = 0时,如果被指示没有段大小。
•X:未使用,始终为0
• reserved:保留以备后用,始终为0。

5、中止传输协议

•CS:命令符
4:中止传输请求
•X:未使用,始终为0
•M:多路复用器。它代表指数和SDO的分项指数。
•D:包含一个4字节终止码有关中止的原因。

中断代码    0503 0000H    切换位未交替
0504 0000H    SDO协议超时
0504 0001H    客户端/服务器命令说明符无效或未知
0504 0002H    无效的块大小(块模式)
0504 0003H    无效的序列号(块模式)
0504 0004H    位于0004h CRC错误(仅限块模式)
0504 0005H    内存不足
0601 0000H    不支持的访问对象
0601 0001H    尝试读取只写对象
0601 0002H    尝试写入只读对象
0602 0000H    对象不对象字典存在
0604 0041h    对象无法映射到PDO
0604 0042h    对象的数量和长度,被映射将超过PDO长度
0604 0043h    常规参数不兼容原因
0604 0047h    常规内部不兼容的设备
0606 0000H    访问失败,原因是一个硬件错误
0607 0010H    数据类型不匹配,服务参数的长度不匹配
0607 0012H    数据类型不匹配,服务参数的长度过大
0607 0013H    数据类型不匹配,服务参数的长度过低
0609 0011H    子索引不存在
06090030H    值超出范围(仅适用于写访问)
06090031h    值写入过高
06090032h    值写入太低
06090036H    最大值小于最小值
08000000H    一般错误
08000020H    数据无法传输或存储到应用程序
08000021H    总共数据无法传输或存储到的,因为本地的应用程序控制
08000022h    数据无法传输或存储到的,因为应用程序目前设备状态
08000023H    对象字典动态生成出现故障或没有对象字典说明(如对象字典从文件生成失败产生因为文件错误)


6、启动下载块协议

•ccs:客户机命令符
6:块下载
•scs:服务器命令符
5:块下载
•s:尺寸指示
0:数据集大小不指示
1:数据集大小显示
•cs:客户子
0:启动下载请求
•SS:服务器子
0:开始下载响应
•cc:客户端CRC支持
cc=0:客户端不支持对数据产生CRC
cc=1:客户端支持对数据产生CRC
•sc:服务器CRC支持
sc=0:服务器不支持对数据产生CRC
sc=1:服务器支持对数据产生CRC
•m:多路复用器。它代表了数据的(索引/子索引)为转移的SDO。
•size:下载大小(字节)
s =0:大小留作将来使用,始终为0
s = 1:大小包含要下载的字节数,字节4包含LSB和字节7的MSB
•blksize:每块段0 < blksize <128的数量。
•X:未使用,始终为0
• reserved:保留以备后用,始终为0

7、下载块段协议

•csc:服务器命令符
5:块下载。
•ss:服务器命令符
2:块下载
•c:指示是否仍然有更多的段被下载
0:下载更多的下载段
1:没有更多的下载段中,输入结束SDO块下载
•seqno:段0< seqno <128的序列号。
•seg-data:要下载最多7个字节段的数据。
•ackseq:最后的过程中已经获得成功的最后一段序列号下载。如果ackseq被设置为0服务器指示客户端,与顺序的区段数1未正确接收和所有段必须由客户端重传。
•blksize:每块的段数,有要使用的客户端为以下块下载0 < blksize <128。
•X:未使用,始终为0。
• reserved:保留以备后用,始终为0。

8、结束下载块段协议

•ccs:客户机命令符
6:块下载。
•scs:服务器命令符
5:块下载。
•cs:客户子
1:结束块下载请求。
•ss:服务器子
1:结束块下载响应。
•n:表示在不包含数据的最后一个块的最后一个分段的字节数,字节[8-n中,7]不包含段的数据。
•CRC:16位循环冗余校验(CRC),用于整个数据集。该算法生成CRC在9.2.2.2.16描述。如果在启动区块下载CC CRC才有效和SC被设置为1,否则的CRC已被设置为0。
•X:未使用,始终为0。
• reserved:保留以备后用,始终为0。

上传块 地址6404
3    发送        0x00000601    A0 04 64 00 7F 0E 00 00     
4    接收        0x00000581    C2 04 64 00 28 00 00 00     
5    发送        0x00000601    A3 00 00 00 00 00 00 00     
6    接收        0x00000581    01 30 31 32 33 34 35 36     
7    接收        0x00000581    02 37 38 39 30 31 32 33     
8    接收        0x00000581    03 34 35 36 37 38 39 30     
9    接收        0x00000581    04 31 32 33 34 35 36 37     
10    接收        0x00000581    05 38 39 30 00 00 00 00     
11    接收        0x00000581    86 00 00 00 00 00 00 00     
12    发送        0x00000601    A2 06 7F 00 00 00 00 00     
13    接收        0x00000581    C9 00 00 00 00 00 00 00     
14    发送        0x00000601    A1 00 00 00 00 00 00 00
下载块 地址6404
40    发送        0x00000601    21 04 64 00 28 00 00 00     
41    接收        0x0000058        60 04 64 00 00 00 00 00     
42    发送        0x00000601    00 48 41 4E 53 50 4D 00     
43    接收        0x00000581    20 00 00 00 00 00 00 00     
44    发送        0x00000601    10 50 00 00 00 00 00 00     

45 接收 0x00000581 30 00 00 00 00 00 00 00

46 发送 0x00000601 00 00 00 00 00 00 00 00

47 接收 0x00000581 20 00 00 00 00 00 00 00

48 发送 0x00000601 10 00 00 00 00 00 00 00

49 接收 0x00000581 30 00 00 00 00 00 00 00

50 发送 0x00000601 00 00 00 00 00 00 00 00

51 接收 0x00000581 20 00 00 00 00 00 00 00

52 发送 0x00000601 1D 00 00 00 00 00 00 00

53 接收 0x00000581 30 00 00 00 00 00 00 00

上传16 位数据

70 发送 0x00000601 A0 18 10 02 7F 0E 00 00

71 接收 0x00000581 43 18 10 02 0B 02 00 00

下载8位数据

80 发送 0x00000601 2F 60 60 00 03 00 00 00

81 接收 0x00000581 60 60 60 00 00 00 00 00

下载32位数据

90 发送 0x00000601 23 FF 60 00 00 00 14 00

91 接收 0x00000581 60 FF 60 00 00 00 00 00

下载16位数据

90 发送 0x00000601 2B 00 23 00 11 00 00 00

91 接收 0x00000581 60 00 23 00 03 00 00 00

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/478563.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

外包干了20天,技术退步明显.......

先说一下自己的情况&#xff0c;大专生&#xff0c;21年通过校招进入杭州某软件公司&#xff0c;干了接近2年的功能测试&#xff0c;今年年初&#xff0c;感觉自己不能够在这样下去了&#xff0c;长时间呆在一个舒适的环境会让一个人堕落! 而我已经在一个企业干了2年的功能测试…

3个好用的WP免费主题

免费wordpress模板下载 高端大气上档次的免费wordpress主题&#xff0c;首页大图全屏显示经典风格的wordpress主题。 https://www.wpniu.com/themes/289.html 经典的红色免费wordpress主题 这是一款经典的免费wordpress主题&#xff0c;被广泛应用于多个行业的网站。 https…

SQL:窗口函数之OVER()

窗口函数 通用格式 “函数 OVER (PARTITION BY 分组 ORDER BY 排序依据 升降序)”。 这里记录下OVER() 以及搭配LEAD/LAG函数的使用方法&#xff08;执行平台Impala&#xff09; 目录 OVER函数1、不加条件的OVER函数——得到所有的汇总结果2、仅有排序的OVER函数——得到按顺序…

HAL库W25Q16+fatfs文件系统移植

配置时钟树 配置时钟树时钟频率为72 SPI1外挂SPIflash 其他不用改这里挂的是一个W25Q16 文件分类管理 生成原始代码 加入W25Q16的驱动代码 忘记配片选线了&#xff0c;这里加上 /*Configure GPIO pin : PtPin */GPIO_InitStruct.Pin GPIO_PIN_4;GPIO_InitStruct.Mode GPIO_…

《由浅入深学习SAP财务》:第2章 总账模块 - 2.5 科目余额查询理

SAP提供了强大的科目余额查询功能&#xff0c;可以查询科目的借贷方及余额&#xff0c;同时&#xff0c;也可以追溯到明细凭证。在凭证记账后&#xff0c;科目的余额就会同步得到更新。预制凭证是不更新科目余额的。 科目余额查询及追溯的操作步骤 路径&#xff1a;SAP菜单&g…

我的春招求职面经

智能指针在面试时经常被问到&#xff0c;最近自己也在写&#xff0c;有一点思考&#xff0c;于是找到了这样一个题目&#xff0c;可以看看&#xff0c;上面这个代码有什么问题&#xff1f;留言区说出你的答案吧&#xff01; 最后分享一下之前的实习->春招->秋招等文章汇总…

atomgit访问令牌就创建的时候显示一下

AtomGit 是开放原子开源基金会提供的代码托管平台&#xff0c;帮助团队更快、更安全地交付更好的软件。 在创建访问令牌的时候&#xff0c;发现创建之后点不出来令牌字段&#xff0c;不像其它网站会在令牌列表那里显示出来。在“我的令牌”页面只能看到令牌名字和权限&#xff…

设计模式—组合模式

定义: 组合模式&#xff08;Composite Pattern&#xff09;又称为合成模式、部分-整体模式&#xff08;Part-Whole&#xff09;&#xff0c;主要用来描述部分与整体的关系。 定义&#xff1a;将对象组合成树形结构以表示“部分-整体”的层次结构&#xff0c;使用户对单个对象和…

适用于vue3的vant4组件 没有日期时间选择器

项目中需要用到日期和时间一同选择的场景 本来想用 如下代码 van-datetime-picker 发现咋整也不好使 刚开始还以为是引入的问题 后来发现是vant4根本就没这玩应了… <van-datetime-pickerv-model"currentDate"type"datetime"title"选择完整时间&q…

数据结构之排序一

目录 1.排序 一.概念及其分类 二.排序的稳定性 2.插入排序 一.基本思想 二.插入排序的实现 复杂度 稳定性的分析 3.希尔排序 一.预排序代码的实现 二.希尔排序代码实现 复杂度分析 4.clock函数 1.排序 一.概念及其分类 说到排序&#xff0c;我们都不陌生&#x…

向上生长

&#xff08;1&#xff09; 我记得2010年&#xff0c;在中国的苹果应用商店里&#xff0c;充斥的App还有很多&#xff1a;日历App、天气App、电池省电App、记事本App…。但这已经过去了2007-2008-2009三年&#xff0c;这些应用仍然很欢。 我有一个朋友算是中国最早一批开发iOS …

vue.js+element-ui的基础表单

遇到原生的html小型单页应用时&#xff0c;是脱离了vue框架&#xff0c;而我们又想使用vue的语法和element的组件加快我们的开发速度&#xff0c;这个时候就需要引用他们的js了。技术栈即htmlvue.jselement-ui。而使用它们的方法也很简单&#xff0c;引入对应的js和css文件即可…

博世力士乐发布在线配置液压系统3D CAD目录

博世力士乐自1795从美因河畔洛尔的一个铸铁铸造厂到20世纪50年代进入液压市场&#xff0c;2001年&#xff0c;曼内斯曼力士乐与博世自动化的合并&#xff0c;推动了驱动与控制解决方案的所有相关技术无缝集成的新水平。如今博世力士乐独特的行业专业知识已成为量身定制解决方案…

手上积累了一些企业目录,但是没有电话,在企XX天X查也没找到咋办?如何快速精准批量查询其他平台上查不到的企业电话?

在B端业务场景中&#xff0c;长期需要进行拓客。有时候是企业提供客户的联系方式&#xff0c;有时候是销售利用自己的人脉资源&#xff0c;对于资源不多的销售就需要查找到目标客户的联系方式。长期来说&#xff0c;销售都需要进行拓客&#xff0c;自己通过社交&#xff0c;网络…

下载 macOS 系统安装程序的方法

阅读信息&#xff1a; 版本&#xff1a;0.4.20231021 难度&#xff1a;1/10 到 4/10 阅读时间&#xff1a;5 分钟 适合操作系统&#xff1a;10.13, 10.14, 10.15, 11.x, 12.x&#xff0c;13.x, 14 更新2023-10-21 添加Mist的介绍支持版本的更新&#xff0c;13.x&#xff0…

Xilinx FPGA 远程升级时bin和bit文件使用注意

以Spartan-6 ISE开发环境为例。 ISE开发环境支持生成bit和bin格式的程序文件&#xff0c;可以在生成选项进行配置&#xff1a; 把生成的bit文件和bin文件进行二进制比较&#xff0c;发现bit比bin文件头部多了一些内容&#xff08;头部信息&#xff09;&#xff0c;剩余部分完…

web前端笔记+表单练习题+五彩导航栏练习题

web前端笔记 1-骨架快捷方式!enter<!DOCTYPE html><html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>骨架部分</titl…

mysql 事务基本介绍

目录 命令小结 一 MySQL事务的概念 &#xff08;一&#xff09;事务介绍 &#xff08;二&#xff09;事务特点 &#xff08;三&#xff09;事务的ACID特点 1&#xff0c;原子性 1.1 原子性具体形容 1.2 原子性案例 2 &#xff0c;一致性 2.1一致性具体介绍 2.2…

Cubemx串口配置

1.时钟 2.引脚配置 3.重写printf代码 /* USER CODE BEGIN 1 */ int __io_putchar(int ch){HAL_UART_Transmit(&huart1,(uint8_t *) ch, 1,1000);return ch; } /* USER CODE END 1 */

JavaEE 初阶篇-深入了解进程与线程(常见的面试题:进程与线程的区别)

&#x1f525;博客主页&#xff1a; 【小扳_-CSDN博客】 ❤感谢大家点赞&#x1f44d;收藏⭐评论✍ 文章目录 1.0 进程概述 2.0 线程概述 2.1 多线程概述 3.0 常见的面试题&#xff1a;谈谈进程与线程的区别 4.0 Java 实现多线程的常见方法 4.1 实现多线程方法 - 继承 Thread 类…