【AUTOSAR】Bootloader说明(一)---- 时序流程

news2024/11/22 19:03:53

电机控制器选用TI TMS28xx DSP,包括boot-loader与应用软件两个部分。其中boot-loader包括下列内容:

  1. RAM自检
  2. 应用程序有效性检查
  3. UDS命令处理
  4. FLASH操作

下面分别说明DSP上电后整个软件运行流程及程序刷新过程。

    1. DSP软件执行流程

DSP复位后,将根据外部硬件配置选择boot-to-flash模式【参考8】:跳转到boot-loader入口,接着进行RAM自检。若自检成功并且监测到有有效的应用软件(检查应用软件完整性),将跳转到应用软件;不然,则进入boot-loader模式,等待刷新有效的应用软件。

当跳转到应用软件后,若有程序刷新请求,应用软件将擦除软件完整性标识字(实际是所在的整个扇区),然后触发软件看门狗复位。复位后,检测应用软件完整性信息,跳转到boot-loader模式。(到底应在应用程序中擦除完整性标识字还是跳转到boot-loader再擦除?TBD)

程序刷新结束后,外部Tester调用UDS服务,触发DSP软件看门狗复位。或进入死循环,等待硬件看门狗或软件看门狗复位。

 

1  DSP软件执行流程

    1. 程序刷新过程

DSP的刷新网络层基于15765-2,应用层基于15765-3及UDS(14229):当CAN模块接收到外部工具发送的UDS消息后,传递给网络层;网络层分析处理后,认为接收到有效的UDS命令再传递给应用层处理;应用层处理完毕,响应消息再通过网络层调用CAN驱动发送给外部工具。

应用层接收到有效的刷新数据后,调用TI的FLASH驱动库完成FLASH的编程。

在进入Boot-loader后,应周期性的调用网络层发送接收CAN消息及调用看门狗服务。

另外,由于FLASH编程时间较长,其运行时间有可能超过看门狗的溢出时间。所以在调用FALSH编程函数后,应使能一个定时器中断,在该定时器中断服务中调用看门狗服务。

 

2  程序刷新示意图

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

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

相关文章

【Mysql基础】-关于常用的函数简单案例

目录 一、系统函数 二、日期函数 三、字符串函数数 说明:以下所有的操作在8.0的mysql数据库操作系统上操作 一、系统函数 1 显示连接列表:show PROCESSLIST; 2 MD5加密:select MD5("root") 二、日期函数 1、 推算一周之后的…

QMI8658 - 姿态传感的零偏(常值零偏)标定

1. 零偏 理论上在静止状态下三轴输出为0,0,0,但实际上输出有一个小的偏置,这是零偏的静态分量(也称固定零偏)。 陀螺生产出来后就一直固定不变的零偏值。对于传统的高性能惯性器件来说,该误差在出厂标定时往往就被补偿…

《水经注地图服务》用户如何登录?

《水经注地图服务》(WeServer)是一款可快速发布全国乃至全球海量卫星影像的地图发布服务产品,该产品完全遵循OGC相关协议标准,是一个基于若干项目成功经验总结的产品。它可以轻松发布100TB级海量卫星影像,从而使“在内…

如何使用 Raycast 一键打开预设工作环境

工作中,你一定遇到过这样的场景:你正在认真写代码,线上突然出现报警。看到报警信息之后,你不得不打开浏览器,点开收藏夹,打开监控页面、告警页面、trace 页面、日志搜索平台……有时,还需要打开…

chatgpt赋能python:Python取值:了解基础知识和应用方法

Python取值:了解基础知识和应用方法 什么是Python取值? Python取值是指从一个对象中获取信息或者值。对象可以包括列表、字典、元组、变量等。Python提供了多种方法来取值,包括基础的索引和切片操作,以及高级的列表推导式、字典…

MySQL JDBC详解

文章目录 简介JDBC APIJDBC Driver ManagerJDBC 驱动 JDBC 开发步骤一,导入 JDBC 驱动包,并加载驱动类二,建立数据库连接三,发送 SQL 语句,并获取执行结果Statement 对象PreparedStatement 对象 四,处理返回…

ADAS方案的简单比较

ADAS方案的简单比较 1 概述2 厂商Tesla硬件布局网络基础结构:HydraNet多头网络 NVIDIA百度(Apollo)版本历史硬件布局软件框架各版本框架 WaymoVolvo-Uber 3 芯片4 其他from [最全自动驾驶技术架构和综述](https://blog.csdn.net/buptgshengod…

项目质量管理

质量与项目质量 质量的定义:一组固有特征满足要求的程序。 质量是反应实体主题明确和隐含需求的能力的特性总和 质量与等级的关系: 一个低等级(功能有限),高质量(无明显缺陷,用户手册易读&am…

《Datawhale南瓜书》出第二版啦!

Datawhale干货 作者:Datawhale开源项目团队 作为机器学习的入门经典教材,周志华老师的《机器学习》,自2016年1月底出版以来,首印5000册一周售罄,并在8个月内重印9次。先后登上了亚马逊,京东,当…

【运维知识进阶篇】iptables防火墙详解

这篇文章给大家介绍下iptables防火墙,防火墙大致分三种,分别是硬件、软件和云防火墙。硬件的话部署在企业网络的入口,有三层路由的H3C、华为、Cisco(思科),还有深信服等等;软件的话一般是开源软…

【服务器】iPad远程服务器进行开发

文章目录 前言1. 本地环境配置2. 内网穿透2.1 安装cpolar内网穿透(支持一键自动安装脚本)2.2 创建HTTP隧道 3. 测试远程访问4. 配置固定二级子域名4.1 保留二级子域名4.2 配置二级子域名 5. 测试使用固定二级子域名远程访问6. iPad通过软件远程vscode6.1 创建TCP隧道 7. ipad远…

人工智能 AI | ChatGPT 时代,程序员的生存之道

ChatGPT 近期炙手可热,仿佛没有什么问题是它不能解决的。出于对 ChatGPT 的好奇,我们决定探索下它对于前端开发人员来讲,是作为辅助工具多一些,还是主力工具更多一些? 2D 能力测试 我们就挑选一个著名的递归回溯问题—…

代码随想录算法训练营第三十九天|62.不同路径|63. 不同路径 II

LeetCode62.不同路径 动态规划五部曲: 1,确定dp数组(dp table)以及下标的含义:dp[i][j] :表示从(0 ,0)出发,到(i, j) 有dp[i][j]条不同的路径。 2&#xff0c…

cpu飚高的排查思路

cpu的衡量指标 使用率util:代表的是单位时间内CPU繁忙情况的统计。操作系统对cpu的管理就是利用周期的tick时钟中断,将cpu的使用划分时间片。每个时间片内去执行不同进程/线程里的代码。所以cpu的使用率统计其实也是以tick为单位的:统计周期…

开源代码分享(1)—考虑经济性的储能运行优化

参考文献: [1]Practical operation strategies for pumped hydroelectric energy storage (PHES) utilising electricity price arbitrage - ScienceDirect [2]Towards an objective method to compare energy storage technologies: development and validation of…

Python——Flask快速开发一个物资管理平台(源码+适合大作业)

目录 一、前言 二、项目展示 三、代码包 四、项目简介 五、运行步骤 一、前言 Flask 框架结合原生的 HTML 和 Bootstrap 可以快速开发 Web 应用程序。 Flask 框架是 Python 中一个轻量级的 Web 应用框架,它非常适合构建小型项目和原型化开发。Flask 框架具有可扩展的…

K8S利用nginx快速部署一个网站之基本概念(十)

在Kubernetes部署应用程序流程 使用Deployment控制器部署镜像: kubectl create deployment web --imagenginx --replicas3 kubectl get deploy,pods 使用Service将Pod暴露出去: kubectl expose deployment web --port80 --target-port80 --typeNodePor…

Pyside6-第六篇-各按钮的信号与槽

今天是Pyside6的第六篇内容。一起来看看各按钮的信号与槽。 from PySide6.QtCore import Qt from PySide6.QtGui import QAction from PySide6.QtWidgets import QApplication, QWidget, QRadioButton, \QPushButton, QCheckBox, QToolButton, QMenuclass Example(QWidget):def…

使用BERT进行文本分类

本范例我们微调transformers中的BERT来处理文本情感分类任务。 我们的数据集是美团外卖的用户评论数据集。 模型目标是把评论分成好评(标签为1)和差评(标签为0)。 #安装库 #!pip install datasets #!pip install transformers[torch] #!pip install torchkeras 公众号算法美食…

你知道ping命令是如何工作的吗?

你知道ping命令是如何工作的吗? 我们用来测试一台机器与另一台机器的网络连通性一般会使用ping命令,那么你知道ping命令是如何工作的吗?ping命令是基于ICMP协议工作的。 一、介绍ICMP协议 因特网控制报文协议ICMP(Internet Con…