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

石家庄学做网站建设培训班网站seo优化心得

石家庄学做网站建设培训班,网站seo优化心得,北京展柜设计制作公司,广东省建设执业注册中心网站一、ECUM 1.1 缩略语 我在这里列出的一些名词的含义只是我在学习过程中自己并不知晓的名词,有其他不会的名词可以自行阅读文档。(会读文档真嘟很重要) Callback:回调函数,由高级的模块提供,由低级的模块…

一、ECUM

1.1 缩略语

我在这里列出的一些名词的含义只是我在学习过程中自己并不知晓的名词,有其他不会的名词可以自行阅读文档。(会读文档真嘟很重要)

Callback:回调函数,由高级的模块提供,由低级的模块调用,来通知高级的模块某些事情的发生。

Callout:Autosar中的一种重要机制,允许开发者在标准框架中插入自定义代码,以满足特定的应用需求。

Integration Code:也是一部分代码,用于将不同的SWC和BSW集成到一起的代码,确保各个模块协同工作,例如Callback和Callout。

Mode:模式是指车辆中运行的各种状态机(不仅限于ECU管理器)的一组特定状态,这些状态与特定实体、应用程序或整个车辆相关。

Passive Wakeup:由连接的总线引发的唤醒,而不是由内部事件。

Phase:阶段是ECU管理器的操作和事件在逻辑或时间上的组合,例如STARTUP(启动)、UP(运行)、SHUTDOWN(关闭)、SLEEP(休眠)等。阶段可以由子阶段组成,这些子阶段通常被称为序列(Sequences),尤其是当它们主要用于将执行的操作序列分组为逻辑单元时。

Shutdown Target:在将ECU置于休眠状态、断电或复位之前,必须将其关闭。因此,SLEEP(休眠)、OFF(断电)和RESET(复位)是有效的关闭目标。通过选择一个关闭目标,应用程序可以向ECU管理器模块传达其对ECU在关闭后行为的期望。

State:状态是其各自的基础软件(BSW)组件内部的概念,因此对应用程序不可见。它们仅由基础软件的内部状态机使用。ECU管理器内部的状态构成了阶段(phases),从而处理模式(modes)。

Wakeup Event:一个触发唤醒的事件呗,比如开关信号、CAN信号啥啥的。 

Wakeup Reason:唤醒原因是指触发最后一次唤醒的实际唤醒事件。

Wakeup Source:产生唤醒事件的外设或ECU组件被称为唤醒源。

1.2 状态机

状态机其实英文真正的翻译是状态机制(state machine),之前不是很理解状态机,原来人家全名叫状态机制,这下一下就明白了。

EcuM最重要的就是状态机,状态机又分为两种,其中最fixed比不过flex好用,所以fixed以后就不用了,我们和其他人一样,之研究flex模式。

接下来我们按照文档,查看相应代码,走一遍。

1.2.1 STARTUP Phase

C Init Code (c初始化代码)设置完stack后,运行EcuM_Init(),之后便是StartPreOS,那么StartPreOs Sequence 大概率在EcuM Init(),这个函数中,拭目以待:

int main(void)
{unsigned int i,j;//BrsHwWatchdogInitPowerOn();Os_InitMemory();Os_Init();EcuM_Init(); /* never returns */return 0;
}

我们看看StartPreOS Sequence要执行的代码。

EcuM_AL_SetProgrammableInterrupts

空的,或许可以自己编写?

一一对应。

检查配置数据的一致性,也在这里面。

在我的这个运行的代码里边没看到倒数第二个序列,直接就是到了:

启动OS之后,会通过激活Task来运行StartupTwo:

/*****************************************************************************/
/*** @brief      InitTask to call EcuM_StartupTwo()* @pre        -* @param[in]  -* @param[out] -* @return     -* @context    The task is started once by the OS*/
/*****************************************************************************/
TASK(Default_Init_Task)
{
#if defined (BRSASR_ENABLE_OS_MULTICORESUPPORT)/* Workaround for RTE ESCAN00078832 *//* Use this code, if you get a Det Error at the end of Rte_Start() on MasterCore *//* Rte_Start() on the SlaveCores has to be called first, before Rte_Start() on MasterCore *//* SET THIS InitTask TO FULL PREEMPTIVE (OsTaskSchedule) within OsConfig! *//*while(Rte_InitState_1 != RTE_STATE_INIT){(void)Schedule();}*/
#endif /*BRSASR_ENABLE_OS_MULTICORESUPPORT*/EcuM_StartupTwo();#if 0{ISRType i;for (i = (ISRType)0; i < OS_ISRID_COUNT; i++){Os_EnableInterruptSource(i, TRUE);}}#endif{ISRType i;for (i = (ISRType)0; i < OS_ISRID_COUNT; i++){Os_EnableInterruptSource(i, TRUE);}}(void)TerminateTask();
}

在startuptwo里边,又会运行SchM_Init()、BswM_Init()并启动RTE。(startuptwo就是StartPostOs Sequence)。

1.2.2 SHUTDOWN Phase

SHUTDOWN阶段负责处理基础软件模块的受控关闭,并最终实现所选的关闭目标,即OFF或RESET。如果在SHUTDOWN阶段有一个wakeup event发生,那么ECUM模块应该完成SHUTDOWN过程并在此之后立即重新启动。

调用EcuM_Shutdown()进入OffPostOS Sequence:

1.2.3 SLEEP Phase

Sleep Phase用来省电,在该Phase下,没有代码运行,但是ECU依然有电。

唤醒事件有预期和非预期两种,EcuM提供一种区分唤醒事件的协议。

写到这,我发现我的代码里面并没有Sleep Phase的相关代码,可能是我并没有设置MCU进入Sleep Phase 所以没有那部分代码,大家可以看灰老师的文章,等我把这玩意搞出来,再贴过来。

[AutoSar]状态管理(一)单核 ECUM_autosar schm-CSDN博客

1.2.4 UP Phase

在UP阶段,EcuM_MainFunction会被定期执行,它具有三大主要功能。

检查唤醒源是否已触发,并在必要时启动唤醒验证。

更新闹钟计时器。

对RUN和POST_RUN请求及释放进行仲裁。

害害,这几句话说得我,云里雾里的,等等我再研究研究......虽然这里是Up Phase,但是大部分篇幅都在讲Wakeup。

1.2.5 Wakeup

ECU的唤醒是一个非常重要的流程,涉及到多个模块的协同工作,大概流程是:

唤醒源检测->唤醒信号确认->电源恢复->硬件初始化->EcuM模块处理->BswM模块协调->应用层初始化->进入运行状态->错误处理。

1.2.5.1 唤醒源处理

什么是唤醒源?请看1.1。

唤醒源的处理不仅限于唤醒期间,而是持续进行,与所有其他EcuM活动并行。此功能在EcuM_MainFunction中运行,通过模式请求与ECU管理的其余部分完全解耦。

首先说一下唤醒源的状态。

然后是唤醒源的状态机制。

唤醒事件会触发Halt和Poll状态的结束。然后EcuM模块会自动执行WakeupRestartSequence然后返回到Up阶段。

1.2.5.2 唤醒源验证序列

这一部分太多了我r,先发出来吧,换取一点点鼓励......

http://www.dtcms.com/wzjs/224717.html

相关文章:

  • 学校精品课网站怎么做汕尾网站seo
  • 产品网站免费模板下载地址百度seo是啥意思
  • 建筑工程网站模板百度智能建站平台
  • 一起做网店网站特点沈阳优化网站公司
  • 做长页网站企业网站模板html
  • 网站建设上机考试推广的公司
  • 做网站兼容ie快速网站排名提升
  • wordpress主题制作入门网站推广seo设置
  • 敦煌做网站的公司电话免费网站推广方式
  • 菜户营做网站百搜网络科技有限公司
  • 辽宁建设工程信息网网站网站seo优化方案策划书
  • 两个人做类似的梦 网站晋城seo
  • 企业建设好一个网站后 如何进行网站推广今日军事新闻最新消息新闻
  • 论新疆政府网站职能建设网络广告的形式
  • 珠宝行网站建设方案网站建设合同
  • nike网站建设分析百度登陆
  • ecshop怎么做网站全国今日新增疫情
  • 自适应企业网站用什么框架做郑州做网站公司有哪些
  • 深圳微网站建设公司宣传方式
  • 十大图片素材网站最近三天的国际新闻大事
  • 北京网站建设 标准型 新翼网店代运营骗局流程
  • 做网店好还是网站哈尔滨seo网络推广
  • 做兼职设计去哪个网站好google官方入口
  • 做企业网站备案都需要什么如何推广公众号
  • 攀枝花做网站发布
  • 网站建设好后为什么要维护自媒体推广渠道
  • 百度描述 网站域名停靠浏览器
  • 网站制作带模板破解版网站排名怎么做上去
  • 河北网站制作公司报价淄博搜索引擎优化
  • 网站建设的一些专业术语快速seo软件