- 博客(52)
- 收藏
- 关注
原创 车载学习(7)——CAPL(2)Testmodule
完成一段时间内的持续探测检查,并统计这段时间内各项数据,获得检查结果。插入CAPLtestmodule。创建testmodule。
2025-06-20 00:44:58
858
原创 MCAL学习(5)——SPI
实际项目中大部分 Seq Job Ch 都是 1:1:1,一般都是 1 路 Spi 挂载一路从机设备,操作一个 Seq 数据发送 会操作对应的 Job 和 Ch。AutoSar考虑到通讯的安全以及软件的可拓张性,定义了很多软件层面的接口和数据结构,主要由有Sequence、Job、Channel三种软件层面的数据结构。
2025-06-20 00:44:40
542
原创 MCAL(7)-AutoSar存储
AUTOSAR FLS/FEE 的实现策略采用的是新增的方式,而非覆盖的方式,那么随着数据写入的次数增多,当前物理扇区势必存在写满的时刻,那么就需要一个新的物理扇区,但由于物理扇区的个数是有限的,不能一直有新的 BANK ,同时针对同一个 BLOCK 如果写入多次,对程序有用的数据只有最后一次,因此如何擦除无用的数据循环使用物理扇区是解决此问题的关键,这就引出了 FEE/FLS 换页机制(Bank Swap)另外,Data Flash 是有擦除寿命的,频繁的擦除是会减少 D-FLASH 的使用寿命。
2025-06-19 23:37:42
1021
原创 MCAL(8)-其他模块的一些基础知识
BswM(BSW Mode Manager)BSW 模式管理模块,该模块是 BSW(基础软件)模式管理家族的一员(后面都带 M)。:BSW Mode Manager(BSW 模式管理),BSW 模式的总管,注意是 BSW 模式:Communication Manager(通信管理),通信总管:Ecu Manager(Ecu 管理),Ecu 总管它的职责是根据简单的规则对来自应用层 SW-C 或其他 BSW 模块的模式请求进行仲裁,并根据仲裁结果执行动作。
2025-06-19 23:36:28
621
原创 车载学习(8)——CAPL与诊断相关
1.创建诊断请求变量变量成CAPL编程器,右侧的symbol框进行查询。针对不同诊断类型进行选择2.发送诊断请求3.等待请求发送完毕、等待接收到响应。4.获取诊断响应的响应码。
2025-06-19 23:36:01
920
原创 自学canoe-canoe从入门到精通(15)
汽车诊断技术是在不拆卸车辆的情况下,通过读取车辆在运行过程中所记录的数据或故障码来查明故障原因,并确定故障部位的汽车应用技术。利用该技术,可以快速检测汽车故障(如传感器短路/开路、排放错误、异常操作等)来提高汽车安全性和维修效率。诊断采用“问-答”模式,即诊断仪向车辆指定的ECU发送请求数据,指定的ECU会做出响应,将对应的应答数据返回给诊断仪。利用已定义的诊断描述文件,可将相应的数据解析为可读的诊断信息。诊断仪请求命令:22 4A 05(油箱温度请求命令)
2025-06-19 23:35:16
793
原创 MCAL学习(4)——LIN
LIN属于低成本单线总线主从模式帧头由主节点发送,因此主节点需要由调度表来管理发送报文顺序不需要特殊的网络管理报文,休眠指令由主节点发送,整个网络进入休眠,唤醒发送持续显性电平即可状态管理相对比较简单,不像CAN BUSOFF这样的复杂场景。AutoSAR4.4 版本之后,已经加入 LinTp 模块,并支持 Lin Slave 和 Lin Master。
2025-06-05 23:25:01
954
原创 MCAL学习(6)——AutoSar_BSW层的一些概念介绍
PduR 作为通信的通用模块,在通信诊断数据传输中起到重要作用,特别是总线之间报文网关路由的时候,该模块就需要实现内部逻辑。随着 AutoSAR 使用场景的复杂性,可能会要求 PduR 有很多的功能支持,比如:不同总线部署在不同核中,PduR 作为公共模块需要跨核支持。概念signal:信号,类似于引擎速度,车速,点火信号等。
2025-06-04 21:56:34
783
原创 车载学习(6)——CAPL(1)一些基础知识
CAPL通讯访问编程语言(Commmunication Access Programming language)
2025-05-10 14:30:14
771
原创 MCAL学习(3)
N-PDU:Network Layer PDU 网络层(也就是传输TP层)PDU,一般诊断报文会走TP层,通讯报文直接从IF层转到PDUR层,当诊断是多帧传输的时候,一个I-PDU就会被分成多个N-PDU。三种PDU代表在数据协议栈不同分层的协议数据单元,I-PDU就包含数据buffer指针,数据长度和I-PDU的ID,本质上是一个结构体。I-PDU:Interaction Layer PDU 交互层PDU ,PDUR路由转发I-PDU。
2025-05-05 19:58:51
636
原创 MCAL学习(2)-BSW/CAN的一些知识
BSW基础软件又可以分为服务层(绿色:Service layer)、ECU抽象层(紫色:ECU Abstraction Layer)、微控制抽象层(黑:MCAL),其他复杂驱动。主要实现芯片资源的管理,相当于操作系统底层实现的功能(IO、GPIO 、ADC、PWM;通讯、CAN、LIN、ETH;存储、flash、EEPROM;看门狗)
2025-05-04 01:28:15
547
原创 MCAL学习(1)——AutoSAR
汽车电子MCU工程师具备能力:汽车方向测试工程师具备能力应用层软件使用MATLAB建模开发底层软件:一般Mcal驱动使用EB tresos工具链,协议栈使用Vector Davinci(Developer 负责应用层;Configuration负责除驱动外的基础软件层)工具链。工具链提供全量的AutoSar架构软件,客户根据自己项目的要求,配置除符合自己项目的软件。工程中的静态代码是不会改变的配置代码根据配置工具根据客户不同的需求生成的代码。
2025-05-01 18:30:16
1777
原创 自学S32k144(18)————芯片锁死问题及成功解锁流程
找到Jlink安装目录,找到jink.exe。(下载失败,请擦除后再连接烧录)进入S32ds文件,勾选flash镜像。进入FLash配置,生成文件为S19文件。锁死芯片可以在S32DS的进行调试编程。进入命令行,连接芯片,选择JTAG。进入工程目录,找到需要的bin文件。通过J-flash进行烧录。连接成功后,解锁擦除芯片。找到Srec二进制文件。拖入srec二进制文件。确认后,再次编译项目。选折设备S32K144。生成一个二进制文件。
2025-04-30 17:10:48
628
原创 车载学习(4)-----一些知识
产品规划>概念设计>设计工程>工程开发与产品验证>生产准备>量产试销在设计工程阶段给出各零部件的设计需求。零部件研发是整车研发的一个子项目,受整车研发流程的影响。一个项目的流程:对接整车厂分出的需求,开发产品的需求规格书主要根据整车厂提供的CAN信号矩阵表和dbc文件,只有信号表还需自己制作dbc文件;软件硬件开发组:分解需求完成设计和实现。测试组:安排测试计划>分析测试需求>设计相关测试用例测试分类:功能测试:基础功能逻辑是否正确性能测试:时间,电压等是否符合要求。
2025-04-25 04:14:29
187
原创 自学S32K144(17)—autosar Mcal安装配置
MCAL是微控制抽象层。位于AutoSar架构的BSW(基础软件层)是可以直接驱动芯片外设和访问微处理器内寄存器的底层驱动,由芯片开发商提供,目的是实现上层软件和底层硬件分离,来达到开发标准化与通用化的目的。
2025-04-24 01:54:40
768
1
原创 S32K144学习(16)-Bootloader
Bootloader(引导加载程序) 是存储在设备非易失性存储器(如 ROM、Flash)中的一段特殊程序,负责在设备上电后初始化硬件、加载操作系统(OS)或用户应用程序,并最终将控制权移交给它们。它是设备启动过程中第一个运行的软件,扮演着“启动管理者”的角色。
2025-04-22 21:43:17
703
原创 S32K144(15)----I2C
实现I2c的板内互通,一路使用S32K144的板内外设,一路使用S32K144的FlexIO模拟I2c。i2c2 从机i2c0,同时取消配置中的Masterconfiguration 勾选。I2c1 主机 flexio 模拟 从机地址0x66, 速率 100000hz。主机读取过程中也会进入一次从机I2C_SLAVE_EVENT_RX_REQ。D1 D0模拟I2c。添加IIc硬件抽象层。
2025-04-19 19:07:02
569
原创 自学S32k144(12)-CANFD
在《 通信总线协议之CAN总线协议详解 》中介绍了CAN 2.0 A/B总线协议,但是随着总线技术在汽车电子领域越来越广泛的应用,特别是自动驾驶技术的迅速发展,汽车电子对总线宽度和数据传输速率的要求也越来越高,传统CAN(1MBit/s,8Bytes Payload)已难以满足日益增加的需求。
2025-04-16 23:44:43
1810
原创 自学CANoe-仿真+ 测试(从入门到精通14)
对于车载网络的测试,Vector公司提供了较为全面的、专业的ECU测试工具,包括物理层和数据链路层测试等,如使用CANscope和CANstress等工具来验证节点在电路设计、物理电平方面的性能,以及通信参数的一致性等。基于CANoe的自动化测试系统架构,根据ECU的测试环境和测试规范,搭建基于CANoe的测试系统,通过开发测试模块。
2025-04-13 16:49:54
823
原创 自学Canoe-Canoe从入门到精通第13章
由于LIN总线的低成本、易实现等优点,在安全性和实时性要求不高的模块中得到了广泛应用,如车窗控制、座椅调节和雨刮控制等。
2025-04-10 01:10:44
1638
原创 自学S32k144(10)---Can
CAN总线(Controller Area Network,控制器局域网)是一种广泛应用于汽车、工业控制等领域的串行通信协议,由德国Bosch公司在1980年代开发,主要用于设备间的实时数据交换。
2025-04-08 00:17:55
974
4
原创 canoe自学第十一章、十二章(canoe从入门到精通)
现今,每款车型上不同ECU之间的功能联系越来越复杂,每个ECU需要处理的CAN信息也越来越多。整车厂在每款车型的开发初期,可以使用CANoe建立仿真模型,在此基础上进行每个ECU的功能评估。对于各个ECU的供应商来说,基于CANoe建立的仿真环境可以实现其他ECU的功能,加快自身产品的开发和验证。这样,也可以尽早地发现开发过程中的问题并及时解决。总线仿真工程贯穿于ECU开发的整个过程,涉及需求分析、软件开发、软件测试、环境测试、硬件验证、生产检验、失效分析、客户支持等职能部门。
2025-04-06 14:24:45
920
原创 Canoe自学(Canoe从入门到精通第十章)
CAPL全称为Communication Access Programming Language,即通信访问编程语言。它是Vector公司专门为CANoe开发环境设计的编程语言,在语法和概念上与C语言类似。借助CAPL,用户可以编写程序并应用到网络的各个节点上,也可以利用CAPL编程加强测量分析功能,以及搭建高效的自动化测试模块。CANoe自带了一个CAPL程序的开发环境CAPL Browser(CAPL浏览器),用户可以在CANoe主界面的Tools功能区单击CAPL Browser图标。
2025-03-31 01:32:56
712
原创 Canoe自学(Canoe从入门到精通第八章)
总线系统中,ECU之间的通信、信息的交互以及相互之间的关系,都是通过总线数据库来管理的。总线数据库定义了总线系统中各个ECU所要发送和接收的报文,以及每个报文所有比特值的具体定义。CAN总线数据库格式是DBC文件,已成为行业内的标准文档格式。
2025-03-30 17:49:55
487
原创 Canoe自学(Canoe从入门到精通第九章)
Panel(面板)是CANoe的一个重要功能,为总线仿真提供了图形化的界面。用户可以在面板上添加合适的控件实时地改变信号或变量的值。根据功能,控件可以分为控制控件和显示控件两大类。控制控件可以关联信号、系统变量和环境变量。在仿真系统中,控制控件可以实时地改变所关联的信号或变量的值。显示控件可以实时地显示信号 、 变 量 以 及 诊 断 参 数 的 值。这是一个典型的面板,包含控制控件和显示控件。
2025-03-30 17:31:42
697
原创 自学S32K144(6)————PWM
本次实验使用FTM0的四个通道输出PWM波控制四路小灯结合之前学习的adc和按键输入实现调整滑动变阻器控制小灯的亮灭通过按键调整PWM的占空比和频率(gpio和adc函数不在此赘述)定时器外设初始化:uint32_t instance:定时器实例即要使用的定时器const ftm_user_config_t * info :定时器配置结构体ftm_state_t *state:定时器结构体PWM初始化:uint32_t instance:pwm实例即要使用的定时器。
2025-03-28 23:53:58
882
原创 s32k144_bug1:DefaultISR问题的解决
作者本人在移植了其他大大的延时实现文件,中间使用到了systick,但在运行自己的程序时一直进入DefaultISR,死循环。然而运行原大大的程序时并没有这个问题。
2025-03-28 02:01:21
290
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人