全面讲解系统诊断管理模块设计

汽车ECU开发 2023-06-01 08:43

前言

Dem是AUTOSAR中配置项最多,实现功能最为复杂的模块之一,主要负责记录故障诊断以及其关联数据,是实现诊断功能至关重要的模块,本文将以最简单的方式将Dem的功能聊具体,聊透彻。为了方便大家学习,以下是本文的大纲。

1.诊断故障基础

当人患了疾病,便需要医治,医生根据各种检验结果找出病因,并得出诊治策略。当汽车出现故障时,DTC故障码就等同于“检验结果”,汽车工程师通过该标识码便可以查表的方式获得该故障信息,如故障触发条件、故障解除条件、系统功能表现等,得出解决该故障的策略。
DTC(Diagnostic Trouble Code)顾名思义诊断故障码,一种用来记录当ECU发生或者检测到某种故障时呈现给大家的标识码

1.1 DTC的组成

DTC故障码是一个4个字节的标识符,由以下两部分组成:DTC Catogory Failure Type,其中DTC Catogory 又可以根据PowertrainBodyChasisN etwork四大子系统来进一步定义其范围,简称PBCU四大子系统,如下表所示:

1.2 DTC的意义

故障码有以下两点意义:

1)产线下线检测:一辆车的零部件的开发,系统集成,整车组装,其中涉及的流程之长,零部件数量之多,可以说是相当复杂。为了产线生产的车能正常下线,安全上路,就需要确保在车辆下线前,各零部件本身以及零部件相互配合是没有问题的。因此在产线电检流程中,会读取整车故障码,通过故障码说明车辆是否正常。

2)车辆维修:当车辆出故障时,维修工程师是如何快速定位到故障零部件呢?车辆是由上万个零部件组成,如果依赖于维修工程根据经验慢慢排查,效率会极其低下。因此,维修工程师会使用诊断仪读取整车故障码,并将故障码与故障现象对照,快速得出维修策略。

1.3 DTC故障类型

以非排放相关的ECU为例,可以将DTC故障类型分为以下几个部分:

硬件故障:RAM、Flash、CPU时钟等硬件本身失效的问题

软件故障:如配置字故障,标定故障或客户定义的软件功能性故障

外部环境故障:电压过高或者欠压、环境温度过高或过低等

通讯相关故障:如报文丢失、信号无效,Checksum/Rolling 障等

1.4 DTC状态位介绍

每个DTC都有一个字节用来表示该故障的状态,这个字节中每个bit的含义如下:

status Of DTC: bit field name

Bit 

Bit state

Description

testFailed

0

0

DTC  is not failed at the time of the request

testFailedThisOperationCycle

1

0

DTC  failed during the current operation cycle

pendingDTC

2

0

DTC  was not failed on the current or previous

operation  cycle

confirmedDTC

3

0

DTC  is not confirmed at the time of the request

testNotCompletedSinceLastClear

4

0

DTC  test was completed since the last code clear

testFailedSinceLastClear

5

0

DTC  test never failed since last code clear

testNotCompletedThisOperationCycle

6

0

DTC  test completed this operation cycle

warningIndicatorRequested

7

0

Server  is not requesting warningIndicator to beactive

具体解释如下:
Bit0:请求时刻测试结果为失败;
Bit1:在当前点火循环至少失败过1次;

Bit2:在当前或者上一个点火循环测试结果不为失败;

Bit3:请求时刻DTC被确认,一般确认是在一个点火周期内发生错误1次;

Bit4:自上次清除DTC之后测试结果已完成,即测试结果为PASS或者FAIL结果;

Bit5:自上次清除DTC后测试结果都不是FAIL;

Bit6:在当前点火周期内测试结果已完成,即为PASS或FAIL状态;

Bit7:ECU没有得到点亮警示灯请求


1.5冻结帧与扩展数据

从上文可知,DTC中8bit位可以描述DTC状态,但8个bit位能够承载的信息是有限的,仅能说明故障是当前故障还是历史故障。故障发生时的车速,温度,油量,电量等关键信息怎么记录呢?

UDS中规定了冻结帧可以用来记录故障发生时的详细情况,扩展数据可以提供故障码相关的扩展信息,包括老化计数器

类型

组成

内容

冻结帧

由一系列DID组成,用户可以自定义DID内容

描述车速,温度,油量,等信息

扩展信息

由一系列DID组成,DID内容由BSW规定

描述故障码的额外信息,比如老化周期数量。


2.DEM详解

2.1 DEM主要功能

        Dem全称Diagnostic Event Manager,负责诊断故障事件的处理,存储诊断故障事件以及故障事件相关联的数据(故障发生时温度,车速等)。简而言之,Dem发挥了AUTOSAR架构中故障中央处理器作用,用户软件模块只需要将故障上报给DEM,所有故障信息的处理都由DEM执行:

1.故障确认前:用户模块上报故障的Debounce防抖处理,确保对应故障不为误报故障。

2. 故障确认时:故障事件确认时的故障数据存储至NVM,保证故障能长期保存。

3. 故障确认后:故障的老化,替代,实现故障修复后,故障能被清除的功能。例如,仪表上的发动机故障灯,在发动机修好后一段时间后就会熄灭。

2.2 DEM与其他模块关系

1DEMAUTOSAR架构位置

Dem位于AUTOSAR架构系统服务层,系统服务层提供了以下服务

1.操作系统调度与监控服务、

2.通信与网络管理服务

3.存储服务

4.诊断服务(UDS通信服务以及故障服务)

  5.ECU状态管理服务

从下面架构图可以看出,Dcm与Dem作为“诊断双雄”,完整提供了所有的诊断服务。区别在于,Dcm主修“UDS诊断通信服务”,对下与通信协议栈联系,与外部诊断仪交互提供诊断通信服务(10,22等服务);Dem主修故障诊断服务,与上层SWC,BSW模块交互,接收故障上报,与NVM交互使用存储功能。

               

 

‍‍‍

AUTOSAR架构图

‍‍‍

2)Dem与其他模块依赖关系

                                   

         

‍‍‍

 

Dem与其他模块关系链路图

‍‍‍

NVM: Nvm能够提供存储服务给Dem使用,即提供诊断故障存储所需的NVM BLOCK。需要注意的是,NvmDem提供了两类存储服务接口,Nvm_WriteBlock()DEM实时存储诊断故障,NvM_SetRamBlockStatus()Dem下电存储诊断故障,上述存储模式可以在DTC配置属性中体现。

DCM:从上图中可以看出,DCM在接收到诊断仪的19服务(get Dtc),14服务(Clear Dtc)时,需要实时通过Dem获取DTC数据以及对DTC进行清除操作。

ECUMDem模块执行初始化以及ShutDown操作。

SWC(Monitor)监控诊断故障事件Event,通过使用Dem_SetEventStatus()函数,将Event状态上报给Dem。使用Dem_SetOperationCycleState()对操作循环状态进行控制。

2.3 DEM核心Event

在介绍DEM的具体功能前,先引入概念Diagnostic eventDiagnostic event也是DEM模块中最重要的元素。对于AUTOSAR软件架构,DTC只是展示给诊断仪使用者,而Event才是DTC状态实际操控者,同时Event也是诊断NVM数据存储实际控制者。

各位读者肯定会有如下问题:

为什么要引入 “Diagnostic event”呢?

“Diagnostic event”来源?

“Diagnostic event”有哪些特性呢?

“Diagnostic event”怎么控制DTC?

“Diagnostic event”怎么控制诊断数据存储?

接下来将会给大家一一解答上述问题。

1)Event与DTC的联系与区别

区别:

1描述层级:DTC是系统层面对于故障的描述,而Event是软件层面对故障监控的最小单元。

例子:某个电机故障会由电压过高造成,但软件是无法直接识别该故障,软件只能监控是否产生了电压过高的时间Event,从而计算出是否产生DTC.

2.链接关系多个event可以mapping 同一个DTC;而同一个event不能mapping 多个DTC;

3.可见度DTC可以直接可见,但Event需通过进一步手段才能看到,有时仅对ECU供应商可见;

联系:

1.DTC代表某类event集中表现,而event则是某个DTC的具体实例;

2.event的优先级决定了DTC的优先级;

3.event之间的依赖关系决定了DTC的依赖关系;

2)“Diagnostic event的上报方式

上文提到了SWC监控故障Event的状态,并可以通过Dem_SetEventStatus(EventId,EventStatus)向DEM上报Event状态。那么对于SWC,应该怎样上报Event状态呢?周期调用Dem_SetEventStatus上报即为周期循环上报;当Event状态变化时,调用Dem_SetEventStatus上报为触发上报。两种上报方式各有优缺点,如下图所示,切不可一刀切。

一般来说,对于小型控制器,需要上报Event数量不多,可以选择周期循环上报。

对于域控制器,需要上报的Event数量庞大,为了保证负载率稳定,应该选择触发上报。

3)“Diagnostic event”有哪些特性呢?

1.Event Kind

Event Kind根据故障事件上报方式可分为:BSW EventSWC Event

Event Kind

来源

上报方式

函数名

BSW Event

BSW模块

标准C接口

Dem_ReportErrorStatus

SWC Event

SWC模块

RTE接口

SetEventStatusRTE

2.Event priority

对于诊断,能够存储的故障事件以及对应冻结帧等相关数据的数量是恒定的,需要软件开发工程师提前配置。当内部存储的故障事件已经满了,Event优先级可以解决新的故障事件如何存储的问题。

一般来说,诊断优先级的设定由诊断系统工程师从整车功能出发,根据诊断故障的重要性,安全性,严重性综合评估。比如汽车的动力故障远比空调故障严重,所以动力相关故障优先级一般会大于空调相关故障。

诊断事件优先级有下面几个重要特点

1)诊断事件优先级数值越小,优先级越高,数值为1优先级最大。

2)Event优先级仅在诊断事件已经存满情况下发挥作用,其余情况根据FIFO原则存储。

3.Event occurrence

Event occurrence顾名思义就是故障事件上报计数器,故障上报次数越多,Event occurrence值越大,标志着该故障越“老”。“新”‘老’故障标签在后续新的故障事件如何存储的仲裁机制上也会发挥重要作用,这部分内容在后面的内容会详细说明。

Event occurrence存在以下特点,如下所示:

1.每一个event memory entry都有对应的Event occurrence。

2.Event occurrence最大值为255。

3.Event occurrence的计数方式有如下两种配置选择:

配置属性

计数方式

DEM_PROCESS_OCCCTR_TF

Bit0(TestFail)由0跳变至1,Event  occurrence +1

DEM_PROCESS_OCCCTR_CDTC

Bit0(TestFail)由0跳变至1和Bit3由0跳变至1,Event  occurrence +1


2.4 Event Memory存储内容

上文对Event,冻结帧,扩展数据等作了详细描述,那么,这些数据在DEM中是怎么存储的呢?DEM提供了Event Memory概念,将Event,冻结帧,扩展数据全部归纳起来做了统一管理。废话不多说,开始探Event Memory吧。

Event Memory分类:

类型

含义

DemPrimaryMemory

存储EventId,故障状态,冻结帧,扩展数据

DemMirrorMemory


Permanent Event Memory

用于存储OBD相关的DTC

Event Memory的组成架构如下图所示:

Event Memory组成架构图


S1:Dem模块必须支持Primary MemoryMirrorPermanent memory可根据用户需要具体选择,一般用不上。

S2: Primary Memory是一个大小为DemMaxNumberEventEntryPrimary用于存储故障数据的非易失性存储空间。也就是Primary MemoryDemMaxNumberEventEntryPrimaryEvent Memory Entry组成。

本质上,DemMaxNumberEventEntryPrimary设置为多少,NVM就会提供多少个NVM Block用于存储Primary Memory,就只能存储多少个Event信息。

S3:每个Event Memory Entry存储的内容有:EventIdOccurance Counter,冻结帧,扩展数据,老化周期等。

2.5 Event Memory management

SWC或者BSW上报Event后,会经过哪些处理最终变成Flash中的Event Memory呢?

从下图中可以看出,Event上报后需要经过下列处理:
Event使能条件检测

Event控制DTC Bit位更新
Event Memory Retention

Event Memory management流程图


1)Event使能条件检测

Event使能条件就相当于Dem中的一个闸门,只有在条件合适的情况下Event才能真正进入Dem的处理流程中。

Event使能条件流程图

从图中可以看出,Event上报至最终能到第二阶段Event控制DTC bit位跳变,需要经历很多流程,接下来对上述流程进行详解。

S1:首先,需要判断当前是否开启了操作循环,操作循环一般指的是点火循环,一个操作循环可以认为是DTC检测的一个周期。如果操作循环开启了,则开始下列的Enable Condition判断,否则直接退出整个Event Memory management流程。

S2::Enable Condition判断指的是Event上报增加的一个附加条件判断,Dem通过对应的接口给SWC使用,SWC实现附件条件处理。一般可以用来处理一些电压,车辆模式等限制条件。如果Enable Condition条件满足,则进行85服务判断;如果Enable Condition条件不满足,则直接退出Event Memory management流程。

S3: 若现在使用了85服务抑制DTC使能,则直接退出整个Event Memory management流程。若没有执行85服务,开始Event Debounce流程。

S4:经过Debounce后,如果最终Event结果为Pass或者Fail,则开始下一阶段Event控制DTC跳变;否则直接跳出退出整个Event Memory management流程。

Event Debounce
“Debounce”顾名思义,指对于Event的防抖处理,防止Event误报导致DTC误报。
SWC通过Dem_SetEventStatus(EventId,EventStatus)上报Passed/Failed/PrePassed/Prefailed四种状态。
1)当SWC上报Passed和Failed状态时,Dem不需要进行Debounce处理。
2)当SWC上报Prefailed和Prepassed状态时,Dem需要进行Debounce处理。

本质上,Dem提供的Debounce为通过特定机制,处理PrePassed/Prefailed至Passed/Failed状态变化。

Dem提供了两种Debounce机制,即“Base Time”和“Base Counter”

1.基于计数器的Debounce策略

基于Counter的Debounce策略的几个重要参数如下表格:

参数

含义

FDC(Fault Detection Counter)

错误计数器,值范围为-128-127

DemDebounceCounterFailedThreshold

使Event诊断事件状态最终为FailedDebounce  Counter阈值

DemDebounceCounterPassedThreshold

使Event诊断事件状态最终为PassedDebounce  Counter阈值

DemDebounceCounterIncrementStepSize

SWC上报Prefailed,错误计数器增加量

DemDebounceCounterDecrementStepSize

SWC上报Prepassed,错误计数器增加量

基于Couneter的Debounce机制

如上图所示,在基于Counter的Deboucne机制中,Dem会提供一个计数器(FDC)用于记录判断的结果,当SWC上报给Dem的Event状态为Prefialed,计数器会按照步长增加,当达到设定的限值时,故障状态变成Failed。当上报状态为PrePassed时,计数器按照步长减少,当达到设定的限值时,故障状态变成Passed。


2.基于时间的Debounce策略

基于时间的Debounce策略的几个重要参数如下表格:

参数

含义

DebounceTimeBasedTaskTime

基本的检测周期

DemDebounceTimeFailedThreshold

定义故障状态从PreFailed跳转至Failed需要多少个DebounceTimeBasedTaskTime周期

DemDebounceTimePassedThreshold

定义故障状态从PrePassed跳转至Passed需要多少个DebounceTimeBasedTaskTime周期

基于时间的Debounce机制

在这种策略下,当SWC开始上报Event状态后,Dem模块会提供一个计时器用于记录判断的结果,计时器的增长方向由Event状态决定。当计时器累积到一定阈值后,故障状态变为Passed或者Failed。
3)Event 控制DTC状态更新

当Event经过一系列处理,最终能够对DTC状态进行更新,DTC 8个bit更新逻辑如下:

DTC Bit0 更新逻辑

Bit位更新

条件

0 -> 1

Debounce后最终上报状态为Failed

1 -> 0

Debounce后最终上报状态为Passed

OR

使用14服务清除DTC

OR

复位事件状态

DTC Bit0 更新逻辑图

DTC Bit1更新逻辑

Bit位更新

条件

0 -> 1

Debounce后最终上报状态为Failed

1 -> 0

操作循环更新

OR

使用14服务清除DTC

 

DTC Bit1 更新逻辑图

DTC Bit2更新逻辑

Bit位更新

条件

0 -> 1

Debounce后最终上报状态为Failed

1 -> 0

(操作循环更新 AND TestFailedThisOperationCycle == 0

OR

使用14服务清除DTC

OR

TestNotCompeleteThisOperationCycle == 0

 


DTC Bit2 更新逻辑图

DTC Bit3更新状态

Bit位更新

条件

0 -> 1

Debounce后最终上报状态为Failed

AND

     Fialure Counter > = 故障确认阈值

1 -> 0

达到老化条件

OR

使用14服务清除DTC

OR

      故障溢出被替换

DTC Bit3 更新逻辑图

DTC Bit4更新逻辑

Bit位更新

条件

0 -> 1

Debounce后最终上报状态为Failed

1 -> 0

使用14服务清除DTC

DTC Bit4 更新逻辑图

DTC Bit5更新逻辑

Bit位更新

条件

0 -> 1

经Debounce后最终上报状态为Failed

1 -> 0

使用14服务清除DTC

  

DTC Bit5 更新逻辑图

   DTC Bit6更新逻辑

Bit位更新

条件

0 -> 1

Debounce后最终上报状态为Failed

1 -> 0

使用14服务清除DTC

OR

操作循环更新

DTC Bit6更新逻辑图

DTC Bit7更新逻辑

Bit位更新

条件

0 -> 1

Debounce后最终上报状态为Failed

AND

点灯条件满足

1 -> 0

使用14服务清除DTC

OR

点灯条件不满足

DTC Bit7更新逻辑

4)Retention条件检测

DTC状态完成更新后,Dem将开始进行Retention条件检测。Dem给用户提供多种策略用以判断是否需要分配Event Memory Entry。分配策略由配置DemEventMemoryEntryStorageTrigger决定,具体如下面表格所示:

DemEventMemoryEntryStorageTrigger

分配条件

DEM_TRIGGER_ON_TEST_FAILED

DTC bit0 0跳变成1

DEM_TRIGGER_ON_CONFIRMED

DTC bit3 0跳变成1

DEM_TRIGGER_ON_PENDING

DTC bit2 0跳变成1

DEM_TRIGGER_ON_FDC_THRESHOLD

DTC bit0 0跳变成1

OR

DTC bit10跳变成1

OR

DTC bit20跳变成1

OR

DTC bit30跳变成1

 


5)Event Memory Retention处理

Event上报经过了使能条件检测,Event控制DTC Bit位状态更新,Retention条件检测重重难关,最终被允许进入Event MemoryDem会怎样将EventDTCs),DTC状态,快照,扩展数据存入Event Memory中呢?

基本思路如下:

Event Memory Retention处理机制
S1:在Event Mmeory所有Event Mmeory Entry中搜索,检查该Event及相关数据是否已经存入Event Memory中,如果已经存在,则进入Event Memory Entry Storage。如果不存在,则在Event Memory中寻找空间用于存储Event内容,如果Event Memory中空间已满,则需要使用Replacement机制。

S2:当进入Event memory Storage,Occurance Counter需要加1,判断是否需要更新冻结帧,扩展数据。
Event Displacement处理
Event Memory存储了数量为DemMaxNumberEventEntryPrimary的Event Memory Entry,当Event Memory Entry已满,需要进行Replacement,即根据一定的策略决定新增的Event如何存储。Dem模块提供了一套完善的机制用于Replacement,该机制有三个核心原则:

1.Event Priority(数字越小存储优先级越高)

2.Event Active或者Event Passive状态(Active优先级高于Passive优先级)

3.Event Occurance Counter(最近发生的存储优先级高于之前发生的)

被替换的Event对应DTC中Bit2,Bit3 ,Bit5会被设置为0.

下图展示了整套Event Displacement机制,体现了三个核心原则在替换机制中的作用。

Event Displacement机制

总结

DEM是以DTC为核心的AUTOSAR基础软件模块,实现了对DTC的监控上报,存储等功能,如果需要对AUTOSAR诊断进行进一步学习,还需要对DCM,Doip,Cantp等模块进行系统性学习。


分享不易,恳请点个【👍】和【在看】

汽车ECU开发 专注于汽车电子ECU软件开发,技术分享。
评论
  • 戴上XR眼镜去“追龙”是种什么体验?2024年11月30日,由上海自然博物馆(上海科技馆分馆)与三湘印象联合出品、三湘印象旗下观印象艺术发展有限公司(下简称“观印象”)承制的《又见恐龙》XR嘉年华在上海自然博物馆重磅开幕。该体验项目将于12月1日正式对公众开放,持续至2025年3月30日。双向奔赴,恐龙IP撞上元宇宙不久前,上海市经济和信息化委员会等部门联合印发了《上海市超高清视听产业发展行动方案》,特别提到“支持博物馆、主题乐园等场所推动超高清视听技术应用,丰富线下文旅消费体验”。作为上海自然
    电子与消费 2024-11-30 22:03 86浏览
  • 概述 说明(三)探讨的是比较器一般带有滞回(Hysteresis)功能,为了解决输入信号转换速率不够的问题。前文还提到,即便使能滞回(Hysteresis)功能,还是无法解决SiPM读出测试系统需要解决的问题。本文在说明(三)的基础上,继续探讨为SiPM读出测试系统寻求合适的模拟脉冲检出方案。前四代SiPM使用的高速比较器指标缺陷 由于前端模拟信号属于典型的指数脉冲,所以下降沿转换速率(Slew Rate)过慢,导致比较器检出出现不必要的问题。尽管比较器可以使能滞回(Hysteresis)模块功
    coyoo 2024-12-03 12:20 70浏览
  • 当前,智能汽车产业迎来重大变局,随着人工智能、5G、大数据等新一代信息技术的迅猛发展,智能网联汽车正呈现强劲发展势头。11月26日,在2024紫光展锐全球合作伙伴大会汽车电子生态论坛上,紫光展锐与上汽海外出行联合发布搭载紫光展锐A7870的上汽海外MG量产车型,并发布A7710系列UWB数字钥匙解决方案平台,可应用于数字钥匙、活体检测、脚踢雷达、自动泊车等多种智能汽车场景。 联合发布量产车型,推动汽车智能化出海紫光展锐与上汽海外出行达成战略合作,联合发布搭载紫光展锐A7870的量产车型
    紫光展锐 2024-12-03 11:38 65浏览
  • 11-29学习笔记11-29学习笔记习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习笔记&记录学习习笔记&记学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&学习学习笔记&记录学习学习笔记&记录学习学习笔记&记
    youyeye 2024-12-02 23:58 51浏览
  • 最近几年,新能源汽车愈发受到消费者的青睐,其销量也是一路走高。据中汽协公布的数据显示,2024年10月,新能源汽车产销分别完成146.3万辆和143万辆,同比分别增长48%和49.6%。而结合各家新能源车企所公布的销量数据来看,比亚迪再度夺得了销冠宝座,其10月新能源汽车销量达到了502657辆,同比增长66.53%。众所周知,比亚迪是新能源汽车领域的重要参与者,其一举一动向来为外界所关注。日前,比亚迪汽车旗下品牌方程豹汽车推出了新车方程豹豹8,该款车型一上市就迅速吸引了消费者的目光,成为SUV
    刘旷 2024-12-02 09:32 98浏览
  •         温度传感器的精度受哪些因素影响,要先看所用的温度传感器输出哪种信号,不同信号输出的温度传感器影响精度的因素也不同。        现在常用的温度传感器输出信号有以下几种:电阻信号、电流信号、电压信号、数字信号等。以输出电阻信号的温度传感器为例,还细分为正温度系数温度传感器和负温度系数温度传感器,常用的铂电阻PT100/1000温度传感器就是正温度系数,就是说随着温度的升高,输出的电阻值会增大。对于输出
    锦正茂科技 2024-12-03 11:50 66浏览
  • 光伏逆变器是一种高效的能量转换设备,它能够将光伏太阳能板(PV)产生的不稳定的直流电压转换成与市电频率同步的交流电。这种转换后的电能不仅可以回馈至商用输电网络,还能供独立电网系统使用。光伏逆变器在商业光伏储能电站和家庭独立储能系统等应用领域中得到了广泛的应用。光耦合器,以其高速信号传输、出色的共模抑制比以及单向信号传输和光电隔离的特性,在光伏逆变器中扮演着至关重要的角色。它确保了系统的安全隔离、干扰的有效隔离以及通信信号的精准传输。光耦合器的使用不仅提高了系统的稳定性和安全性,而且由于其低功耗的
    晶台光耦 2024-12-02 10:40 102浏览
  • 作为优秀工程师的你,已身经百战、阅板无数!请先醒醒,新的项目来了,这是一个既要、又要、还要的产品需求,ARM核心板中一个处理器怎么能实现这么丰富的外围接口?踌躇之际,你偶阅此文。于是,“潘多拉”的魔盒打开了!没错,USB资源就是你打开新世界得钥匙,它能做哪些扩展呢?1.1  USB扩网口通用ARM处理器大多带两路网口,如果项目中有多路网路接口的需求,一般会选择在主板外部加交换机/路由器。当然,出于成本考虑,也可以将Switch芯片集成到ARM核心板或底板上,如KSZ9897、
    万象奥科 2024-12-03 10:24 37浏览
  • 《高速PCB设计经验规则应用实践》+PCB绘制学习与验证读书首先看目录,我感兴趣的是这一节;作者在书中列举了一条经典规则,然后进行详细分析,通过公式推导图表列举说明了传统的这一规则是受到电容加工特点影响的,在使用了MLCC陶瓷电容后这一条规则已经不再实用了。图书还列举了高速PCB设计需要的专业工具和仿真软件,当然由于篇幅所限,只是介绍了一点点设计步骤;我最感兴趣的部分还是元件布局的经验规则,在这里列举如下:在这里,演示一下,我根据书本知识进行电机驱动的布局:这也算知行合一吧。对于布局书中有一句:
    wuyu2009 2024-11-30 20:30 106浏览
  • RDDI-DAP错误通常与调试接口相关,特别是在使用CMSIS-DAP协议进行嵌入式系统开发时。以下是一些可能的原因和解决方法: 1. 硬件连接问题:     检查调试器(如ST-Link)与目标板之间的连接是否牢固。     确保所有必要的引脚都已正确连接,没有松动或短路。 2. 电源问题:     确保目标板和调试器都有足够的电源供应。     检查电源电压是否符合目标板的规格要求。 3. 固件问题: &n
    丙丁先生 2024-12-01 17:37 83浏览
  • 遇到部分串口工具不支持1500000波特率,这时候就需要进行修改,本文以触觉智能RK3562开发板修改系统波特率为115200为例,介绍瑞芯微方案主板Linux修改系统串口波特率教程。温馨提示:瑞芯微方案主板/开发板串口波特率只支持115200或1500000。修改Loader打印波特率查看对应芯片的MINIALL.ini确定要修改的bin文件#查看对应芯片的MINIALL.ini cat rkbin/RKBOOT/RK3562MINIALL.ini修改uart baudrate参数修改以下目
    Industio_触觉智能 2024-12-03 11:28 41浏览
我要评论
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦