CAN:如何实现CAN报文带ID标识?

在CAN总线通信的应用领域中,很多客户需要将CANID放在CAN报文中,这样更方便接入不同的设备,有利于用户通过模块更方便地组建自己的网络,使用自定的应用协议。但是要实现这样的应用,用户往往需要不停地去修改参数,如果设备具备透明带标识功能则很好地处理这个问题。该方式把串行帧中的ID信息自动转换成CAN总线的帧ID。只要在配置中告诉模块该ID信息在串行帧的起始位置和长度,模块在转换时提取出这个帧ID填充在CAN报文的帧ID域里,作为该串行帧的转发时的CAN报文的ID。在CAN报文转换成串行帧的时候也把CAN报文的ID转换在串行帧的相应位置。

转换方式:

1、串行帧转CAN报文

串行帧中所带有的CAN报文的“帧ID”在串行帧中的起始地址和长度可由配置设定。起始地址的范围是0~7,长度范围分别是1~2或1~4。转换时根据事先的配置将串行帧中的CAN报文“帧ID”对应全部转换到CAN报文的帧ID域中,其它的数据依序转换,如果一帧CAN报文未将串行帧数据转换完,则仍然用相同的ID作为CAN报文的帧ID继续转换直到将串行帧转换完成。

Stargate DAO成员在社区会议上讨论如何处理即将收到的160万枚ARB:3月30日消息,Stargate DAO成员在周三社区电话会议上讨论如何处理160万枚Arbitrum(ARB)代币的预期分配,这些代币价值不到200万美元。LayerZero Labs的员工MaxPower表示,这些代币尚未收到,但当收到时将必须决定是否持有、出售、部署或委托这些代币。

一些与会者建议,DAO应该将ARB代币分发给用户,或将其部署为流动性激励。与此同时,其他治理代币持有者建议委托ARB代币,以便Stargate DAO可以参与Arbitrum治理。

据DeFiLlama的数据,Stargate的总锁定价值(TVL)为3.64亿美元,其中近22%来自Arbitrum平台。(CoinDesk)[2023/3/30 13:34:35]

注意:如果将ID长度大于2,设备发送的帧类别会设置为扩展帧。此时用户配置的帧ID和帧类别无效,由串行帧里边的数据决定。标准帧的帧ID范围为:0x000-0x7ff,分别表示为帧ID1、帧ID0,其中帧ID1为高字节,扩展帧的帧ID范围为:0x00000000-0x1fffffff,分别表示为帧ID3、帧ID2、帧ID1、帧ID0,其中帧ID3为高字节。

动态 | 捷豹路虎DLT开发人员解释如何通过报告路况获得加密货币奖励:英国最大汽车制造商捷豹路虎分布式账本技术团队的软件开发人员Aaron Hetherington解释了驾驶员如何通过报告道路问题而获得加密货币奖励。Hetherington称,捷豹路虎的技术可以追踪车辆何时何地撞到路上的坑洞,这样就可以将维修细节发送给英国和爱尔兰的地方议会。他补充道:“当然,发现这些不好的路况是有奖励的。利用像IOTA这样的加密货币,我们可以将奖励直接发送给客户。”通过让汽车自动向导航提供商或地方当局报告道路状况数据,比如交通拥堵或坑洼,司机将获得加密货币积分,这些积分可用于自动支付通行费、停车费和充电费。2019年4月,捷豹路虎表示正在测试软件,旨在允许其汽车司机获得加密货币IOTA作为共享数据的奖励。据悉,该公司正在开发“智能钱包”技术,以安装在其汽车中。目前还未确定何时上市。(SiliconRepublic)[2020/2/6]

动态 | 美国国防部将向国会提交“区块链技术如何增强美军工作”相关报告:今年晚些时候,美国国防部(DoD)将向国会提交报告,介绍区块链技术如何增强美军工作。价值技术协会(VTA)主席Jason Brett上周在拉斯维加斯举行的消费电子展(CES)上接采访时说,VTA将牵头要求国防部组织这样一个听证会。(Coindesk)[2020/1/16]

串行帧转换成CAN报文

转换示例:

串行帧转CAN报文。

该示例配置的CAN配置参数。转换模式:透明带标识转换,起始地址2,长度3。帧类型:扩展帧,帧ID:无需配置,转换方向:双向。则转换前后数据如下。

动态 | EOS社区在如何使用eosio的资金上存在分歧:据Coindesk消息,EOS区块链上的eosio.saving账户余额不断增加,价值接近1.92亿美元。EOS社区对如何处理这些资金存在分歧。EOS核心工作小组的成员希望看到这些资金被用于造福社会。然而,也有明显的声音,敦促社区关闭WPS,取消其资金来源,“烧掉”或销毁目前在eosio.saving帐户中的所有Token。[2018/8/27]

串行帧转CAN报文示例(透传带标识转

2、CAN报文转串行帧

对于CAN报文,收到一帧就立即转发一帧,每次转发的时候也是根据事先配置的CAN帧ID在串行帧中的位置和长度把接收到的CAN报文中的ID做相应的转换。其它数据依序转发。值得注意的是,无论是串行帧还是CAN报文在应用的时候其帧格式应该符合事先配置的帧格式要求,否则可能致使通讯不成功。

CAN报文转换成串行帧

转换示例:

该示例配置的CAN配置参数。转换模式:透明带标识转换,起始地址2,长度3。帧类型:扩展帧,帧类型:数据帧。转换方向:双向。发送标识符:0x00000123,则转换前后数据如下。

CAN报文转串行帧示例(透明带信息转换

在了解了ECAN-401的透明带标识功能后,我们可以开始实际操作,准备以下设备:ECAN-401一台、CAN分析仪ECAN-U01一台,XCOM串口助手。这里我们使用ECAN-401做数据转换工具,ECAN-U01发送和接收CAN报文,XCOM串口助手软件模拟串行设备发送串行数据。将ECAN-401与ECAN-U01的CAN_L和CAN_H连接,ECAN-401的485接口通过485换USB转换器连接到电脑,如下图所示:

通过ECAN-401的上位机,将设备通讯模式切换为透明带标识模式,CAN波特率1000K,ID长度2,ID位置2参数配置如下图:

打开CAN分析仪ECAN-U01以及XCOM软件,使用XCOM软件模拟出一串行设备,通过ECAN-401的485串口发送串行数据:首先使用标准帧发送两包数据:11220344556677889900,这里可以看到ECAN-U01设备已经接收到了ECAN-401所转换出来的数据:

这里可以看到ECAN-U01已经成功接收到ECAN-401转化出来的数据,帧ID:0344,数据域:1122556677889900。

再从CAN分析仪端发送数据到串行端口,如下图所示:

串口端也是按照透明带标识来组包,这样就成功实现了CAN协议按照透明带标识来收发数据。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

地球链

火币APPatc:Java程序设计习题

习题22 习题32 习题43 习题54 习题66 习题77 习题89 习题99 习题1011 习题1112 习题1213 习题1315 习题1415 习题1 1.Java语言的主要贡献者是谁?2.

[0:15ms0-0:547ms