- 博客(114)
- 收藏
- 关注
原创 【CANape标定实战1】保存标定文件并比较上下电效果
我们在CANape中标定后的数据位于标定RAM区域中,在ECU断电过后,这部分已经标定修改后的数据参数就会丢失。因此,我们需要将这些标定后的数据固化下来,但是本篇不作这方面的介绍,只介绍如何保存标定参数,并在下次标定的时候如何导入标定好的参数。
2024-10-30 09:57:58 193
原创 S32DS编译过程说明
增量编译:编译器识别哪些文件已修改,仅重新编译这些文件。这是通过“Incremental Build”实现的,通常会提高编译效率。源文件编译预处理:对Dio.cGpt.c等源文件执行预处理操作,如宏展开和文件包含处理。编译:源文件编译为目标文件(.o),例如Dio.oGpt.o。编译器使用进行编译,并生成.d文件用于依赖管理。汇编和链接汇编:将编译生成的目标文件汇编成机器代码。链接:将所有目标文件(如Dio.oGpt.o等)和库文件链接成一个完整的可执行文件。这个过程由链接器完成,通过命令实现。
2024-10-22 14:22:43 759
原创 浅析一下char类型
虽然char通常用于表示字符,但它本质上是一个整数类型,可以存储整数值。在C语言中,字符和整数值之间的这种关系使得char类型非常灵活,可以用于表示字符的同时,也可以直接操作字符的ASCII码值。
2024-07-31 23:46:50 853
原创 TargetLink和Matlab代码生成区别
dSPACE的TargetLink和MATLAB的代码生成工具各有侧重。TargetLink更适合资源受限的嵌入式系统,提供高效的生产代码和紧密的硬件集成。MATLAB的代码生成功能则更为通用,适用于多种应用场景,提供广泛的优化选项和易用的用户界面。选择哪一个工具取决于具体的应用需求和开发环境。
2024-06-25 22:37:04 812
原创 MAB规范(1):Introduction 介绍
对于包含自定义参数的规则,所选择的值针对描述的项目中的特定项。在描述字段中提供了对象和值的示例。然而,在指定自定义参数时,应全面评估项目的流程、控制目标的状态以及工程师的技能水平。
2024-06-01 15:20:43 1141
原创 MAB规范:概览介绍
MATLAB的MAAB(MathWorks Automotive Advisory Board)建模规范是一套由MathWorks主导的建模指南,旨在提高基于Simulink和Stateflow进行建模的代码质量、可读性、可维护性和可重用性。这些规范最初是由汽车行业的主要厂商共同制定的,但其适用范围已经扩展到其他行业。本专栏将基于Version 5.0版本进行主要内容的翻译和对其中内容做一些补充解释,如有不全和不恰的地方,也请多批评指正,欢迎一起交流!
2024-06-01 15:09:27 1176
原创 我的创作纪念日
创作纪念日是一个重要的里程碑,让我有机会回顾过去、思考现在、展望未来。在汽车电子工程领域的创作之旅中,我收获了知识、成长了经验,也结识了许多志同道合的朋友。我相信,只要我们保持对技术的热情和探索的精神,就能够在这个充满机遇和挑战的领域里不断前行,为汽车行业的发展贡献自己的力量。让我们共同期待未来更加美好的汽车电子世界!
2024-05-19 15:55:50 304
原创 Visual Studio生成C++的DLL文件(最简单版)
通过按照以上步骤,你可以在Visual Studio中生成一个C++的DLL文件,并在其他项目中使用它。这样可以使你的代码更具有模块化和可重用性,使得你可以更高效地开发和维护你的程序。
2024-05-10 14:16:41 1111
原创 如何在Simulink中调用dll文件(MIMO篇)(附模型及代码)
针对之前文章调用dll库的问题,这里做一个扩展,之前的例子中介绍的多输入单输出的问题,本文将介绍如何应用到多输入多输出的情况上去。其它的步骤基本都是一样的,这里主要对修改部分进行强调。
2024-05-10 10:44:33 1044
原创 CANape中,Event list和DAQ list的区别介绍
一个 ECU 只能同时关联一个 DAQ 列表。”这句话意味着,对于任何给定的 ECU,我们只能定义一个用于管理其数据采集的 DAQ 列表。这有助于避免冲突并简化数据采集的管理。
2024-05-07 11:15:07 1080 1
原创 DV试验和PV试验介绍
DV试验和PV试验是产品开发过程中必不可少的两个环节,对于提高产品的质量和可靠性具有重要意义。随着科技的进步,DV试验和PV试验的技术和方法也在不断发展和完善,为产品的开发提供了更加有效的支持。
2024-05-07 10:09:41 15425
原创 AUTOSAR软件配置(4):S32DS下载安装
所有的NXP软件的下载安装都是需要自己在官网去注册账号的恩智浦半导体官方网站 | NXP 半导体注:本文指导安装教程将以S32K144平台为例展开。
2024-03-17 16:47:59 673 1
原创 AUTOSAR软件配置(3):MCAL下载安装
所有的NXP软件的下载安装都是需要自己在官网去注册账号的恩智浦半导体官方网站 | NXP 半导体注:本文指导安装教程将以S32K144平台为例展开。
2024-03-14 07:00:00 1135 1
原创 AUTOSAR软件配置(2):EB Tresos Studio下载安装
所有的NXP软件的下载安装都是需要自己在官网去注册账号的恩智浦半导体官方网站 | NXP 半导体注:本文指导安装教程将以S32K144平台为例展开。
2024-03-13 14:37:42 2956 1
原创 AUTOSAR软件配置(1):专栏导览
AUTOSAR(AUTomotive Open System ARchitecture)是汽车行业为汽车电子电气(E/E)架构标准化而制定的一套标准。它提供了统一的软件架构、接口定义和开发流程,旨在提高汽车软件的开发效率、可移植性和安全性。本专栏教程将会从以下整个框架来具体介绍如何安装 AUTOSAR 软件开发环境。
2024-03-13 12:36:20 468
原创 嵌入式开发的3种架构
对于简单的嵌入式系统,可以选择前后台顺序执行法或时间片轮询法。对于对实时性要求较高的嵌入式系统,可以选择操作系统架构。对于复杂的嵌入式系统,可以选择操作系统架构。对于成本敏感的嵌入式系统,应谨慎选择操作系统架构。开发人员可以根据具体的需求选择合适的嵌入式软件架构。
2024-03-10 20:44:21 1818 1
原创 什么时候我们用Stateflow(Stateflow基础)
Stateflow是由MathWorks公司开发的一款建模和仿真工具,主要用于处理复杂系统的设计、建模和仿真。它是MATLAB和Simulink的一部分,为工程师和科学家提供了一个强大的工具,用于开发和分析复杂的有限状态机(FSM)和流程图。总体而言,Stateflow为工程师提供了一种直观、强大的方法来建模和分析复杂系统的行为。它在控制系统、通信系统、汽车控制等领域得到广泛应用。
2024-03-10 20:30:37 2314
原创 STL之deque容器代码详解
双端数组,可以对头端进行插入删除操作。vector对于头部的插入删除效率低,数据量越大,效率越低。deque相对而言,对头部的插入删除速度回比vector快。vector访问元素时的速度会比deque快,这和两者内部实现有关。deque内部有个,维护每段缓冲区中的内容,缓冲区中存放真实数据。中控器维护的是每个缓冲区的地址,使得使用deque时像一片连续的内存空间。deque容器的迭代器也是支持随机访问的。
2024-03-09 21:07:31 1206
原创 STL之set容器代码详解
所有元素都会在插入时自动被排序set/multiset属于,底层结构是用实现。set不允许容器中有重复的元素;multiset允许容器中有重复的元素。
2024-03-09 11:00:00 970
原创 STL之map容器代码详解
map/multimap属于,底层结构是用二叉树实现。可以根据key值快速找到value值。map和multimapmap不允许容器中有重复key值元素;multimap允许容器中有重复key值元素。
2024-03-08 15:32:46 1151
原创 Matlab中安装mltbx工具箱文件
前提就是要已经下载好了相应的mltbx格式的工具箱文件一般来说可以直接在开源的Github上下到相应的文件,这里以为例一般来说你可以下载到的文件有两种: Source Code (.zip/.tar.gz)和 mltbx格式的文件。其中的Source Code 中不仅包含了项目中可用的部分,也包含了一些正在开发和测试的文件。那些正在开发和测试的文件,体积远比正式发行的要大。mltbx格式文件即可。
2024-03-08 15:13:13 1074 1
原创 STL之list容器代码详解
(list)是一种物理存储单元上非连续的存储结构,数据元素的逻辑顺序是通过链表中的指针链接实现的链表的组成:链表由一系列组成。结点的组成:一个是存储数据元素的,另一个是存储下一个结点地址的。STL中的链表是一个双向循环链表由于链表的存储方式并不是连续的内存空间,因此链表list中的迭代器只支持前移和后移,属于。采用动态存储分配,不会造成内存浪费和溢出,用多少开多少空间,不像vector那样预留很多空间;链表执行插入和删除操作十分方便,修改指针即可,不需要移动大量元素。
2024-03-07 15:23:06 868
原创 STL之vector容器代码详解
vector的数据结构和数组相似,也称为单端数组。主要的特点(优势)在于可以动态扩展。动态扩展并不是在原来的空间之后接新的空间,而是适当增加一定量的空间找一段新的内存去存储,然后将原来的数据拷贝过来并且释放原来的空间。vector容器的迭代器是支持随机访问的迭代器,最牛的那种,迭代器可以随意加数值。
2024-03-07 08:00:00 963
原创 C++的STL标准模块库介绍
STL(Standard Template Library)是C++标准库的一部分,它提供了一组通用的模板类和函数,用于实现常见的数据结构和算法。STL的设计目标是提供高效、可复用的工具,使C++程序员能够更容易地编写健壮、可维护的代码。STL的使用可以大大提高C++程序的开发效率和代码质量。通过使用标准的容器和算法,程序员可以避免重复编写相似的代码,减少错误的可能性,并利用已经优化过的实现来提高性能。STL是C++中的重要工具之一,为程序员提供了强大而灵活的编程工具。
2024-03-06 16:41:34 347
原创 英飞凌最新MCU之TC4XX系列量产介绍2024
即管理底盘执行器。它也是汽车MCU里最昂贵的一种。也有少数厂家如蔚来不仅在智能驾驶领域使用,在座舱领域也有使用。目前,
2024-03-06 08:00:00 2397
原创 Matlab/Simulink验证MAB建模规范
按照报告生成的问题提示逐个修改规范即可,另外如果模型很大,检查规范又多就需要花费大量的时间,我们可以采取先检查子模型的方式来完善整个项目。
2024-03-05 14:52:51 1743
原创 MAB建模规范介绍
MAB建模规范是MATLAB和Simulink建模的重要参考。遵循MAB建模规范可以帮助您创建更清晰、更易于理解和维护的模型。
2024-03-05 12:01:25 1395
原创 Linux下主线程 return 0 和 pthread_exit(NULL) 的区别
在Linux环境下,使用作为主线程的返回值会使主线程等待所有子线程执行完毕后再结束程序。在Windows环境下,主线程的return 0语句会导致程序立即结束,不会等待其他线程的完成。选择使用还是return 0取决于程序的需求,以确保线程的正确执行顺序和程序的正常结束。
2024-03-01 18:37:56 601 2
原创 嵌入式通信协议对比介绍(SPI/I2C/UART/RS485/CAN)
在实际应用中,这些概念可能会相互组合,例如串行半双工通信、并行全双工通信等,以满足特定的通信需求。
2024-03-01 14:04:04 1653
原创 深入理解ROS中的回调函数与spin()方法
随着机器人技术的飞速发展,Robot Operating System(ROS)已经成为一个广泛应用于机器人领域的强大框架。在ROS中,回调函数(Callback)和spin()方法是至关重要的概念,它们为实现异步通信、事件处理和节点运行提供了灵活而强大的机制。本文将深入探讨ROS中回调函数与spin()方法的工作原理,并通过示例代码进行详细说明。
2024-02-29 23:53:40 3475
原创 Linux下gcc编译常用命令详解
通过掌握这些常用的gcc编译命令,开发者可以更灵活、高效地进行程序开发和调试。同时,深入了解这些命令的原理和使用方式,有助于更好地理解编译过程,提高编程水平。希望本篇blog对您在Linux环境下使用gcc编译器有所帮助。
2024-02-29 23:48:36 940
原创 C++中全局变量、静态全局变量和全局常量详解
在C++中,全局变量、静态全局变量和全局常量是程序中常见的概念,它们在不同的情境下有着不同的用途和特性。让我们深入了解这些概念,以及它们的区别和用法。
2024-02-28 14:42:46 7381 2
原创 C 语言中的数据类型:uint8_t、uint16_t、uint32_t、uint64_t
这些数据类型来自于C语言的标准头文件stdint.h。在这个头文件中,定义了一系列固定宽度的整数类型,以确保在不同平台上数据类型的大小是一致的。这种固定宽度的整数类型对于需要确保位宽和大小一致性的底层编程任务非常重要。在stdint.h头文件中,这些数据类型的定义通常是通过使用 typedef 关键字来实现的,将已有的基本整数类型重新定义为特定宽度的无符号整数类型。// 8位无符号整数类型// 16位无符号整数类型// 32位无符号整数类型// 64位无符号整数类型。
2024-02-28 14:30:29 14328
原创 主动悬架底盘传感器介绍
主动底盘控制系统需要通过传感器测量悬架和底盘之间的距离。在可调节的减震器系统中,为了确定车身和车轮的加速度,加速度传感器沿车辆垂直轴方向测量车轮和车身的加速度。主动减震器的主要目标是进一步缓解底盘调节在运动性和舒适性之间的冲突。这种系统通常使用四个车轮位移传感器和三个Low-G系列加速度传感器来进行控制。系统控制单元利用这些输入信号和其他信息来确定车辆的状态。在存在控制策略的情况下,这些信息可用于计算每个车轮的最佳减震阻尼,并通过电子控制系统来调整减震器的电磁阀的开关量。
2024-02-27 15:34:40 1984
原创 S32DS IDE安装指南(手把手教程)
获取NXP任何的软件或文档,都需要使用NXP.com的账号。,点击右上角SIGN IN。选择Register Now,注册账号,注册步骤请按照网页提示操作,本文不做介绍。
2024-02-27 15:22:07 4632
原创 VMware虚拟机从一台电脑复制到另一台电脑
在一台电脑上利用虚拟机安装了OS系统,特别是如果虚拟机中的系统进行了各种繁琐的配置,因为换电脑或者需要在其他电脑上配置,这个时候就可以将虚拟机中的系统复制拷贝一份到新电脑上,省时省力。
2024-02-24 23:12:23 6819
原创 C++内联函数的使用
内联函数是一种告诉编译器在调用函数时将函数体直接插入到调用点的方法。这样可以减少函数调用的开销,因为不需要额外的栈帧和跳转指令。在C++中,我们可以使用关键字inline来声明内联函数。上面的例子中,add函数被声明为内联函数。// 替换为 int result = 3 + 5;在使用内联函数时,需要权衡其优缺点,并根据实际情况进行选择。小型函数、频繁调用的函数以及类的访问函数是内联的理想候选。通过合理的使用内联函数,我们可以在不牺牲代码结构的情况下提高程序的性能。
2024-02-24 01:00:00 362
原创 MacOS环境下用powerline配置Terminal终端
Powerline 是一个 stateless 状态栏,也就是一个全局状态/提示栏。你可以将其配置到你的 bash、Terminal、iTerm2 或 VIM 中,效果会如下所示:你的 Mac 终端提示栏将会呈现如下图所示:你的 VIM 状态栏会呈现如下图所示:配置一个赏心悦目的状态栏对提高工作效率有着巨大的帮助。
2024-02-23 13:35:50 1143
原创 MacOS上配置Sublime Text
这个工具可以来安装后面需要的所有插件。打开已经安装好的 Sublime Text 3,然后点击顶部菜单的 View -> Show Console(或者使用快捷键 command + ` )。到此为止的话已经把Sublime基本配置好了,但是如果你经常用命令行的话还不能直接用命令行打开Sublime,所以需要进行这一步,将搜索到的注册码复制粘贴到软件的输入框里,按回车,提示成功,这时就可以使用了。在打开的输入框中输入。在下面的输入框里复制下面的代码。这里根据你的需要下载相应的插件。的用户,可以把路径中的。
2024-02-23 01:30:00 3242
CSDN无法绑定Gitub
2024-01-25
TA创建的收藏夹 TA关注的收藏夹
TA关注的人