【CAN】Hardware Object的配置规则

news2025/4/24 8:30:17

文章目录

  • 1. 前言
  • 2 发送缓存区的配置
  • 3 接收缓存区的配置
  • 4 Hardware Object的配置顺序


>>返回总目录<<

1. 前言

在英飞凌的芯片中,MCAN模块有一块Message RAM,这块空间主要用来划分过滤空间、接收数据空间以及发送数据空间,至于如何切分Message RAM,由用户或者工具设置。虽然Message RAM区可以按需切割,但是,切割的顺序需要按照手册要求实现,Message RAM如下所示:
在这里插入图片描述
这里以Vector的Configurator配置工具进行介绍,对Can Controller中RAM缓存区的配置是在Can->CanConfigSet->CanHardwareObjects中进行配置的。
在这里插入图片描述

2 发送缓存区的配置

如果Hardware Object的Object Type配置为Transmit,则该Hardobject Object指向的是RAM缓存区的Tx Buffers。进一步,如果Handle Type配置为Full,则该Hardware Object占用Tx Buffers中的一个element(也即一个PDU缓存区),也可以说该element使用的是Tx Dedicated Buffer模式;如果Handle Type配置为Basic,则该Hardware Object占用Tx Buffers中的一个或多个elements,这个(些)elements使用的是Tx FIFO Buffer模式。
这里有一个Hardware FIFO的勾选项,如果一个Can Controller中配置了多个Basic类型的发送Hardware Object,其中最多只能有一个可以勾选Hardware FIFO配置项,否则配置界面会报错,其实不难理解,因为2.2节介绍过Tx Buffers中最多存在一个Tx FIFO Buffer。从界面中也可以看到,Hardware FIFO不勾选时,Object Hw Size配置项默认为1,不支持用户编辑,Hardware FIFO勾选后,才可以输入。
那么对于未勾选Hardware FIFO的Basic类型Hardware Object,其对应的element是什么缓存模式?
当配置两个Basic,默认都不勾选Hardware FIFO,默认Hw Size为1。此时寄存器中可以看到,只有两个Tx Dedicated Buffer,而没有Tx FIFO Buffer。由此可以看出,即使配置成Basic类型的发送Hardware Object,如果不勾选FIFO选项,其本质上还是一个Dedicated类型的element。
在这里插入图片描述
在这里插入图片描述
当配置两个Basic,其中一个勾选Hardware FIFO,且Hardware FIFO设置为20,另一个不勾选,默认Hw Size为1。此时寄存器中可以看到,有一个Tx Dedicated Buffer,和一个Tx FIFO Buffer,且其长度为20。也即2.2节中的Dedicated Tx Buffers 和 Tx FIFO结合使用模式。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

3 接收缓存区的配置

如果Hardware Object的Object Type配置为Receive,则该Hardobject Object指向的是RAM缓存区的Rx FIFO 0,Rx FIFO 1或Rx Buffer。进一步,如果Handle Type配置为Full,则该Hardware Object占用Rx Buffer中的一个element(也即一个PDU缓存区),也可以说该element使用的是Rx Dedicated Buffer模式;如果Handle Type配置为Basic,则该Hardware Object对应Rx FIFO 0或者Rx FIFO 1。这里注意, 一个CAN Controller只能配置两个Basic类型的Hardware Object,分别对应的是Rx FIFO0和Rx FIFO1,否则会报如下的错误。
在这里插入图片描述

4 Hardware Object的配置顺序

Hardware Object的配置顺序:Tx Full CAN -> Tx Basic CAN -> Rx Full CAN -> Rx Basic CAN,CAN Controller(n)的所有Hardware Object要在CAN Controller(n-1)之前。
在这里插入图片描述
Hardware Object在Mailbox中的处理顺序如下:
在这里插入图片描述
在中断场景时,Rx FullCANs优先Rx BasicCANs进行处理;在polling场景下,Rx FullCANs优先Rx BasicCANs进行处理。
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Grind75第9天 | 733.图像渲染、542.01矩阵、1235.规划兼职工作

733.图像渲染 题目链接&#xff1a;https://leetcode.com/problems/flood-fill 解法&#xff1a; 可以用深度优先搜索和广度优先搜索。 深度优先搜索。每次搜索到一个方格时&#xff0c;如果其与初始位置的方格颜色相同&#xff0c;就将该方格的染色&#xff0c;然后继续对…

Ps:何时需要转换为智能对象

智能对象 Smart Objects提供了广泛的灵活性和控制能力&#xff0c;特别是在处理复杂的合成、重复元素或需要非破坏性编辑的项目中。 ◆ ◆ ◆ 何时需要转换为智能对象 1、当需要对图像进行缩放、旋转等变换时。 涉及到的 Photoshop 命令包括&#xff1a;变换、自由变换、操控…

【CAN】Mailbox/Hardware Object/HRH/HTH概念介绍

文章目录 1. 前言2. MCMCAN硬件RAM缓存区2.1 RAM缓存区分配2.2 发送缓存区2.3 接收缓存区 3. MailBox&#xff0c;HWObject&#xff0c;HRH&#xff0c;HTH概念1. MailBox2. HWObject3. HRH4. HTH5. 对应关系 >>返回总目录<< 1. 前言 Aurix TC3xx系列MCU中的MCMC…

小米数据恢复软件:如何从小米手机恢复已删除的数据

“买一部小米手机&#xff0c;送一个移动硬盘”。人们惊叹于小米手机以非常合理的价格提供的大容量。我们甚至可以把小米手机当做一个移动硬盘来使用&#xff0c;存储大量的照片、视频、文档等文件。但是&#xff0c;在我们使用手机的过程中&#xff0c;误删的情况时有发生&…

微信小程序 全局配置||微信小程序 页面配置||微信小程序 sitemap配置

全局配置 小程序根目录下的 app.json 文件用来对微信小程序进行全局配置&#xff0c;决定页面文件的路径、窗口表现、设置网络超时时间、设置多 tab 等。 以下是一个包含了部分常用配置选项的 app.json &#xff1a; {"pages": ["pages/index/index",&q…

springboot怎样设置全局的traceId(包括MQ)

一、Controller打印TraceId 1、拦截所有的controller&#xff0c;输入输出将traceId放入MDC中&#xff1a; package com.perkins.ebicycle.mobile.trace;import java.util.Arrays; import java.util.List; import java.util.UUID; import java.util.stream.Collectors;import…

数据结构【树+二叉树】

目录 线性表和非线性表 树的概念 树的存储表示 二叉树的概念 特殊二叉树 满二叉树 完全二叉树 二叉树的性质 二叉树的存储结构 顺序存储 链式存储 本篇我们开始进入数据结构中【树】的学习。 线性表和非线性表 逻辑结构&#xff1a;人想象出来的物理结构&#xf…

详解HTTPS加密工作过程

&#x1f697;&#x1f697;&#x1f697;今天给大家分享的是HTTPS加密的工作过程。 清风的CSDN博客 &#x1f6e9;️&#x1f6e9;️&#x1f6e9;️希望我的文章能对你有所帮助&#xff0c;有不足的地方还请各位看官多多指教&#xff0c;大家一起学习交流&#xff01; ✈️✈…

力扣双周赛第三题----2857. 统计距离为 k 的点对

这题我们的暴力做法就是o(n^2),但是根据数据量这样会超时&#xff0c;所以我们不能用暴力解法去解决 那么想一想双指针可以吗&#xff0c;不可以。为什么呢&#xff1f;因为他没有一个特性可以让他双指针跳过前面或者后面一个点。比如他们数组有顺序的情况下&#xff0c;还有一…

大数据StarRocks(七):数据表创建

1. 基本概念 1.1 Row & Column 一张表包括行&#xff08;Row&#xff09;和列&#xff08;Column&#xff09;。Row 即用户的一行数据。Column 用于描述一行数据中不同的字段。 ⚫ 在默认的数据模型中&#xff0c;Column 只分为排序列和非排序列。存储引擎会按照排序列对…

紫光展锐M6780丨画质增强——更炫的视觉体验

智能显示被认为是推动数字化转型和创新的重要技术之一。研究机构数据显示&#xff0c;预计到2035年底&#xff0c;全球智能显示市场规模将达到1368.6亿美元&#xff0c;2023-2035年符合年增长率为36.4%。 随着消费者对高品质视觉体验的需求不断增加&#xff0c;智能手机、平板…

【数据结构与算法】之数组系列-20240114

这里写目录标题 一、414. 第三大的数二、448. 找到所有数组中消失的数字三、561. 数组拆分四、594. 最长和谐子序列 一、414. 第三大的数 简单 给你一个非空数组&#xff0c;返回此数组中第三大的数。如果不存在&#xff0c;则返回数组中最大的数。 示例 1&#xff1a; 输入&…

前端八股文(性能优化篇)

目录 1.CDN的概念 2.CDN的作用 3.CDN的原理 4.CDN的使用场景 5.懒加载的概念 6.懒加载的特点 7.懒加载的实现原理 8.懒加载与预加载的区别 9.回流与重绘的概念及触发条件 &#xff08;1&#xff09;回流 &#xff08;2&#xff09;重绘 10. 如何避免回流与重绘&#…

kylin集群使用nginx反向代理

前文已经提到&#xff0c;我安装了kylin集群。 kylin3集群问题和思考&#xff08;单机转集群&#xff09;-CSDN博客文章浏览阅读151次&#xff0c;点赞3次&#xff0c;收藏6次。由于是同一个集群的&#xff0c;元数据没有变化&#xff0c;所以&#xff0c;直接将原本的kylin使用…

20240106----重返学习-在VMware里给centos7设置静态IP地址

在VMware里给centos7设置静态IP地址 场景 学习nginx中&#xff0c;想要设置静态IP地址&#xff0c;以便让win10主环境中的Xshell里能够连接到VMware中的CentOS7上&#xff0c;进而可以在Xshell里进行操作。可以做到如复制粘贴之类的&#xff0c;而不是在虚拟机中的默认终端上…

Mac安装nvm以及使用nvm安装node

1. 安装nvm命令 git clone https://gitee.com/mirrors/nvm.git ~/.nvm && cd ~/.nvm && git checkout git describe --abbrev0 --tags2. 配置环境变量 vi ~/.bash_profileexport NVM_DIR"$HOME/.nvm" [ -s "$NVM_DIR/nvm.sh" ] &&…

【每日一题】删除排序链表中的重复元素

文章目录 Tag题目来源解题思路方法一&#xff1a;比较相邻两节点 写在最后 Tag 【遍历】【链表】【2024-01-14】 题目来源 83. 删除排序链表中的重复元素 解题思路 方法一&#xff1a;比较相邻两节点 思路 比较两个相邻的节点&#xff0c;如果下一个节点值和当前节点值一样…

设计模式——1_4 外观(Facade)

文章目录 定义图纸一个例子&#xff1a;自动生成一杯茶沏茶的流程组合方式一&#xff1a;直接组合方法二&#xff1a;外观 碎碎念多个外观对象外观和封装外观和单例姑妄言之 定义 为子系统中的一组接口提供一个一致的界面&#xff0c;外观模式定义了一个高层接口&#xff0c;这…

Windows系统Outlook邮件备份导出与导入教程

注意&#xff1a;微软商店UWP版本outlook客户端暂时不支持邮件备份&#xff01;而Microsoft Office2003-目前(2021)中的outlook客户端才支持邮件备份。所以&#xff0c;想要备碧桂园集团邮箱邮件&#xff0c;请安装或者登录Microsoft Office中的outlook客户端以进行邮件的备份。…

Vue3+Vite连接高德地图JS API——地图显示、输入搜索

1 开通高德地图Web端JS API服务 1、进入高德地图API官网&#xff08;https://lbs.amap.com/&#xff09;&#xff1a; 2、注册登录。 3、进入控制台。 4、点击“应用管理”&#xff0c;点击“我的应用”&#xff0c;创建新应用。 5、添加Key&#xff0c;服务平台选择“Web端&…