小知识点汇总
EMI、EMC、EMS

CPU、MPU、MCU、SOC
CPU(Central Processing Unit),是一台计算机的运算核心和控制核心。CPU由运算器、控制器和寄存器及实现它们之间联系的数据、控制及状态的总线构成。差不多所有的CPU的运作原理可分为四个阶段:提取(Fetch)、解码(Decode)、执行(Execute)和写回(Writeback)。 CPU从存储器或高速缓冲存储器中取出指令,放入指令寄存器,并对指令译码,并执行指令。所谓的计算机的可编程性主要是指对CPU的编程。
MPU (Micro Processor Unit),叫微处理器(不是微控制器),通常代表一个功能强大的CPU(暂且理解为增强版的CPU吧),但不是为任何已有的特定计算目的而设计的芯片。这种芯片往往是个人计算机和高端工作站的核心CPU。Intel X86,ARM的一些Cortex-A芯片如飞思卡尔i.MX6、全志A20、TI AM335X等都属于MPU。
MCU(Micro Control Unit),叫微控制器,是指随着大规模集成电路的出现及其发展,将计算机的CPU、RAM、ROM、定时计数器和多种I/O接口集成在一片芯片上,形成芯片级的芯片,比如51,AVR、Cortex-M这些芯片,内部除了CPU外还有RAM、ROM,可以直接加简单的外围器件(电阻,电容)就可以运行代码了。而如x86、ARM这些MPU就不能直接放代码了,它只不过是增强版的CPU,所以得添加RAM,ROM。
SOC(System on Chip),指的是片上系统,MCU只是芯片级的芯片,而SOC是系统级的芯片,它既MCU(51,avr)那样有内置RAM、ROM同时又像MPU那样强大,不单单是放简单的代码,可以放系统级的代码,也就是说可以运行操作系统(将就认为是MCU集成化与MPU强处理力各优点二合一)
MPU是嵌入式芯片,是嵌入式系统的一部分。CPU是通用计算机的一部分。MPU和CPU的功能相似,但是MPU的性能更加强大。
MCU通常携带大量的外设资源,比如蓝牙,串口等,基本的MCU指CPU+RAM+ROM,MPU只是处理器,不携带外设。
SOC=MPU+MCU。一个ECU可能有多个SOC片上系统。
共模干扰、差模干扰

地线的意义
1、主要功能:
- 提供给直流负载、交流负载和瞬变负载电流回路,连接蓄电池或发电机的负极端;
- 提供电压给传感器、通讯系统、单端数字输入等;
- 静电屏蔽,隔离外部RF辐射;
- 提供静电放电泄流,ESD保护;
- 汽车天线的地平面;
- 降低电平,减小腐蚀。
2、地线可靠性地线回路的可靠性主要由以下几个主要关键因素决定:
- 接地金属的连接面,包括接地板之间、接地线和接地板之间的连接情况;
- 涂覆层及润滑油对传导地线连接板及其紧固件的影响;
- 潜在的腐蚀;
- 潜在的机械退化。
汽车线束种类划分
Cables for Automotive Ethernet | Vector
H-MTD类别
HSD类别
MATEnet种类
D-SUB9
RJ45
AE Cable 2Y
CANoe工程中的报文方向
句柄的概念
1、什么是句柄?
句柄(Handle)是一个是用来标识对象或者项目的标识符,可以用来描述窗体、文件等,值得注意的是句柄不能是常量—引自科学百科
通过参考网上各路大神的解释,个人认为:句柄就是健康码,它的作用就是让你找到所需的对象去到了何处,因为你始终都可以根据健康码找到对象的所在地,然后找到对象给他做核酸检测。健康码(句柄值)是国家(操作系统)分给你的,你没有自定义的权利。
在操作系统中,我们想要操作一个对象,就要知道它的地址,但是对象的内存地址总是变化,因为在windows系统中的内存管理一般会将当前处于空闲状态的对象的内存释放掉,当需要访问的时候再重新提交分配物理内存,从而导致对象的物理地址是变化的。此时windows就搞了一个玩意—句柄,句柄用来管理对象的地址(句柄表),不管对象的地址如何变化,我都可以通过访问句柄来拿到对象的实时地址,进而操作对象。句柄值是操作系统给的,你不能定义。
2、句柄与普通指针的区别?
指针指向系统中物理内存的地址,而句柄是windows在内存中维护的一个对象内存物理地址列表的整数索引,句柄是一种指向指针的指针。也就是管理指针(内存地址)的工具。
句柄的作用范围也是存在局限性的,你只能用句柄最终调用到对象,并作一些系统允许你做的事情,但是你拿到指针的话就能干任何事情了,比如破坏对象。当然,句柄的优点也是显而易见的,句柄很明显更方便管理,部分场景处理对象时比指针快。
本文目的在于为各位初学者解释两者区别,更多的知识可翻阅其他博主的文章,感谢。
建议阅读:
https://blog.csdn.net/swordarcher/article/details/81744930
https://blog.csdn.net/macrossdzh/article/details/4588681
KLL15/30/ACC的区别
需要注意的是,KL50就是我们常见的ACC/Wakeup Line,在电动汽车中不存在。
除此之外,本着好奇的心态多方搜集信息,接下来我们说一说KL15的由来,它是德语Klemme的缩写,指的是ECU的管脚(夹子),跟常用的Pin是一个意思。
那为啥用15、30来表示电池电压和唤醒电压呢?是因为博世在1984的标准化中初次提出的,并在后续的标准化中制定了电压【1】。
CRC算法
CRC网站
CRC16-CCITT
word CRC_16_CCITT(byte data[], byte len) { stack int i = 0; stack int index = 0; word crc16 = 0x0000; while(len--) { for(i=0x80; i!=0; i>>=1) { if((crc16 & 0x8000) != 0) { crc16 = crc16 << 1; crc16 = crc16 ^ 0x1021; } else{ crc16 = crc16 << 1; } if((data[index] & i) != 0) { crc16 = crc16 ^ 0x1021; //crc16 = crc16 ^ (0x10000 ^ 0x11021) } } index++; } return crc16; }
本文来自博客园,作者:{张一默},转载请注明原文链接:https://www.cnblogs.com/YiMo9929/p/16559437.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了