自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 资源 (1)
  • 收藏
  • 关注

原创 汽车电子学习笔记 --- EcuM

EcuM作用: 初始化和反初始化操作系统,SchM和BswM以及一些基本的软件驱动模块 根据需求,配置ECU为SLEEP或者SHUTDOWN模式 管理ECU上的所有唤醒事件 提供了唤醒验证协议,验证确定唤醒事件是否是真的唤醒事件 提供模式请求用户CallOut回调函数用作睡眠唤醒过程中的具体操作 EcuM阶段 整体过程图 startup阶段: 最...

2022-04-13 23:07:55 4893

原创 汽车电子学习笔记 --- IAR

官网 IAR Systems 命令行编译 \common\bin路径添加到系统环境变量path中 IarBuild xxx.ewp Debug ---- xxx.ewp为IAR工程名称,Debug为xxx.ewp文件中configuration的name 编译输出所有的编译信息:IarBuild XXX.ewp -build Debug -log all,编译信息生成到log文件:IarBuild XXX.ewp - b...

2022-03-06 22:11:26 1567

原创 汽车电子学习笔记---基于UDS的Bootloader

汽车电子学习笔记—基于UDS的BootloaderBootloader 又称引导加载程序,是系统上电之后运行的第一段代码,其主要用于软件更新。在每次上电/复位后,ECU首先执行Bootloader代码,Bootloader会执行一些基本的初始化,然后再检查刷新请求标志位是否为有效,如果刷新请求标志位有效,则停留在bootloader模式中进行软件升级操作。如果当前没有刷新请求,即刷新请求标志位为无效,则检查应用软件的状态。如果应用软件是有效的,则执行APP应用程序代码,如果应用软件无效,则继续执行Boot

2021-12-01 21:10:59 6895 1

原创 汽车电子学习笔记---UDS

汽车电子学习笔记—UDS一、概述UDS(Unified Diagnostic Services),统一的诊断服务。协议的应用层定义是ISO 14229-1,目前大部分汽车厂商均采用UDS on CAN的诊断协议。UDS本质上是一种定向的通信,是一种交互协议(Request/Response),可以理解为C/S模式,Tester为client端,ECU为Server端,即诊断方(Tester)给ECU发送指定的请求数据(Request),ECU服务端回复肯定或否定响应。1、SID:Service Id

2021-11-19 00:25:07 14122

原创 汽车电子学习笔记---RZ、NRZ、NRZ1、曼彻斯特编码

汽车电子学习笔记—RZ、NRZ、NRZ1、曼彻斯特编码1、RZ(Return Zero Code)编码也称为归零码,特性就是在一个周期内,用二进制传输数据位,在数据位脉冲结束后,需要维持一段时间的低电平。RZ编码又分为两种:单极性归零码低电平表示0,正电平表示1,如下图:红色的线表示数据,只占据一部分的周期,剩下周期部分为归零段双极性归零码高电平表示1,负电平表示0RZ编码特点:能够同时传递时钟信号和数据信号,但由于归零,需要占用一部分的带宽2、NRZ(Non Return Ze

2020-07-04 21:46:45 4760 1

原创 汽车电子学习笔记---CAN网络(二)

汽车电子学习笔记—CAN(二)1、CAN标准CAN标准分为底层标准(物理层和数据链路层)和上层标准(应用层)两大类。底层标准:CAN底层标准都相同,涵盖OSI模型中的物理层和数据链路层,与ISO/OSI模型的对应关系如下图所示:ISO 11898-1:数据链路层协议,描述CAN总线的基本架构,定义不同CAN总线设备在数据链路层通信方式ISO 11898-2:高速CAN总线物理层协议,最高数据传输速率 1Mbps,应用为两线平衡式信号(CAN_H, CAN_L)ISO 11898-3:

2020-07-03 23:52:27 3488

原创 汽车电子学习笔记---AutoSAR之RTE

汽车电子学习笔记—AutoSAR之RTE- 1、概念1)RTE是AUTOSAR虚拟功能总线(Virtual Function Bus,VFB)的接口的实现,它为应用程序软件组件之间的通信提供了基本的服务,同时也便于访问包含OS的基本软件组件2)提供基础的通信服务,支持AUTOSAR的软件组件间、基础软件间、软件组件与基础软件之间的通信3)从逻辑上RTE可以分为两部分: - 软件组件间的通信- 软件组件的调度- 2、具体实现1)RTE 事件触发RunnableAUTOSAR SWC不能

2020-06-23 00:29:14 11571

原创 汽车电子学习笔记---AutoSAR之BSW---NVRAM Manager(二)

汽车电子学习笔记—AutoSAR之BSW—NVRAM Manager(二)- 1、RAM Block dataRAM 状态转换图RAM状态转换说明1)上电最初状态:UNINITIALIZED2)初始化后(NvM_Init):INVALID / UNCHANGED3)NvM_ReadAll后更新:VALID/UNCHANGED,在这种状态下,WriteAll是不允许的4)调用NvM_SetRamBlockStatus()可以设置RAM状态:参数为true, VALID / CHANG

2020-05-12 23:37:25 4874

原创 汽车电子学习笔记---AutoSAR之BSW---NVRAM Manager(一)

汽车电子学习笔记—AutoSAR之BSW—NVRAM Manager(一)- 1、概述NVRAM Manager(NvM)是应用app层访问非易失性数据的唯一接口,提供非易失数据的管理服务。NvM上层是RTE,下层是对接Flash Driver或者EEPROM Driver的接口。位于基础软件的服务层,并为为所有NV data的(初始化、读、写、控制)维护以及管理作提供了各种同步/异步服务。无论是EEPROM还是Flash模拟的eeprom,都在这层被抽象为同一类型,直到MemIf层才会

2020-05-12 00:44:01 7345 4

原创 汽车电子学习笔记—AutoSAR之基础软件层(BSW)

汽车电子学习笔记—AutoSAR之基础软件层(BSW)- 1、概述如之前autosar概述笔记中说明,BSW按照层级结构可以分为服务层、ECU抽象层、硬件抽象层(MCAL)和复杂驱动层(CDD)。- 硬件抽象层(MCAL)主要包含了相关的Driver,通过该层次可以访问MCU的资源,比如访问整个芯片的CAN,LIN等控制器,配置MCU的Port脚,配置MCU的时钟等。主要包含下面的内容:...

2020-05-01 23:32:14 22535 3

原创 汽车电子学习笔记---AutoSAR概述

汽车电子学习笔记—AutoSAR概述1、概述Automotive Open System ARchitecture,汽车开放系统架构2、架构1)架构图2)详细描述应用软件层(AppL)由一个个SWC组成的,如车窗,锁,车灯等,每个SWC咱们可以理解为一个.c文件实时运行环境(RTE)1)可以理解成一个中间层,负责各模块中转调用和管理,将BSW和SWC做隔绝,使...

2020-04-27 23:21:26 5560 2

转载 CANoe的使用--CANoe常用操作(CANoe系列其一)(转载)

摘要1、CANoe工程的新建2、通过Trace工具查看交互的报文内容3、通过Logging保存日志文件4、创建IG发送报文5、通过Graphics界面抓取信号波形6、加载cdd文件7、过滤报文ID的接收8、其他

2020-04-26 22:07:28 34675 2

原创 汽车电子学习笔记---LIN

汽车电子学习笔记—LIN1、简介1)LIN(Local Interconnect Network)总线是基于UART/SCI(通用异步收发器/串行接口)的低成本串行通讯协议。主要用于网络宽带、性能没有过高要求的汽车功能模块:如车窗,天窗等模块。2) LIN网络在汽车中一般不独立存在,通常会与上层CAN网络相连,形成CAN-LIN网关节点。3)LIN总线采用的是单线传输形式,应用了单主...

2020-04-16 21:10:05 2441

原创 C语言性能优化

C语言性能优化- 1、数据类型1)如果确定整数非负,应直接使用unsigned int,处理器处理无符号unsigned 整形数的效率远远高于有符号signed整形数2)float可以用int替代,如果需要结果精确到小数点后n位,可以将其乘以n*10,结果尽可能晚的把它转换为浮点型数字3)局部变量尽可能的不使用char和short类型。对于char和short类型,编译器需要在每次赋值的时...

2020-04-09 22:46:11 1393

原创 汽车电子学习笔记---CAN

汽车电子学习笔记—CAN1、CAN(Controller Area Network)控制器局域网络是 ISO 国际标准化的串行通信协议。通俗来讲,CAN总线就是一种传输数据的线,用于在不同的ECU之间传输数据。CAN两个ISO国际标准:1)ISO11898 :定义了通信速率为 125 kbps~1 Mbps 的高速 CAN 通信标准,属于闭环总线,传输速率可达1Mbps,总线长度 ≤ ...

2020-04-07 22:44:29 2356

原创 ASCII码完整表

ASCII码完整表

2020-03-26 22:06:54 219

原创 c 语言---部分标准库函数及源码

部分标准库函数及源码- 数据和宏定义#define NULL ((void *)0)#define TOLOWER(c) ((((c) > 'A') && ((c) < 'Z')) ? ((c) - 'A' + 'a') : (c))typedef unsigned int size_t;1、memcpy:从存储区 src 复制 n 个字符到存储区 ...

2020-03-26 21:53:16 1487

原创 c语言接口(三)--- 队列接口

QUEUE接口数据结构定义typedef void* PLIST_QUEUE;typedef struct __queueNode{ struct __queueNode *pNext; int data;}ST_QUEUE_NODE;typedef struct __listQueue{ ST_QUEUE_NODE header; ST_QUEU...

2020-03-23 20:54:45 278

原创 c语言接口(二)--- 栈接口

Stack接口栈结构类型定义#define STACK_MAX_SIZE (1024)typedef struct __stack{ void *pData[STACK_MAX_SIZE]; int size;}ST_STACK;typedef void* PST_STACK;方式一创建和初始化栈PST_STACK init_stack(v...

2020-03-19 22:24:31 328

原创 汽车专用名词

汽车专用名词1、ECU电子控制单元,从用途上讲则是汽车专用微机控制器,汽车的大脑。由微处理器(CPU)、存储器(ROM、RAM)、输入/输出接口(I/O)、模数转换器(A/D)以及整形、驱动等大规模集成电路组成2、ECM1)汽车发动机控制模块,是发动机控制的核心部件,根据各传感器的输入信息,控制发动机的燃油喷射和点火时刻,并为其他输出装置提供最佳的控制指令2)ECM的核心部件是微...

2020-03-16 21:50:30 2388

原创 c语言接口(一)---链表

链表接口链表节点定义typedef struct LinkNode{ int data; struct LinkNode *next;}LINKNODE;1、创建链表并初始化/*init list*/LINKNODE *init_linklist(int data_array[], int length){ LINKNODE *pListHeader ...

2020-03-16 21:09:05 295

原创 C语言查漏补缺(二)

一、基本知识点 8、malloc/calloc/realloc区别 1)malloc:void * malloc(int n); n:申请空间大小(单个类型大小*总个数)

2020-03-10 23:04:01 193

原创 C语言查漏补缺

C语言查漏补缺一、基本知识点1、sizeof 1)sizeof()返回长度,以字节为单位 2)sizeof(n) 判断表达式的长度并不需要对表达式进行求值,所以sizeof(a=b+1)并没有向a赋任何值.int b = 3;int a = 0;printf("sizeof a: %d \n", sizeof(a=b+3)); /*sizeof 并不会计算*/pri...

2020-03-09 21:26:53 515

Python基础教程和Python爬虫开发与项目实战

实战型书籍,以大量系统实战项目为驱动,由浅入深讲述了爬虫开发的相关知识和技能

2019-01-15

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除