- 博客(1327)
- 收藏
- 关注
原创 【车载开发系列】RH850中的中断
INTC = Interrupt Controller,也就是中断控制器。它是MCU内部的一个硬件模块,专门管理所有中断。INTC的核心功能:统一管理所有中断的开关、优先级、请求、响应。没有它,MCU 无法处理任何中断。中断请求标志也叫做IRQ Flag / IR Flag。它的英文全称是Interrupt Request Flag。它是一个“有中断来了”的硬件信号标记,用来告诉 CPU:某个外设需要被处理。它是中断从发生到处理的核心凭证。一般是由硬件来置1,软件必须清0。
2026-03-29 00:15:00
72
原创 【车载开发系列】系统时钟与定时器
PLL = Phase Locked Loop锁相环的意思,你可以把它理解成芯片里的“时钟倍频器”。PLL就是把低频精准时钟,成倍变高的硬件电路。
2026-03-26 07:35:44
190
原创 【车载开发系列】RH850中的GPIO中断
INTP的全称是Interrupt Controller for External Pin Input。RH850的GPIO中断由专用的INTP模块来管理。在RH850中共16个独立INTP 通道(INTP0 ~ INTP15),每个通道对应一个可配置的外部中断引脚。每个INTP通道支持:上升沿、下降沿、双边沿、电平 四种触发模式。只有INTP映射引脚才能产生GPIO中断;普通GPIO引脚只能轮询,不能触发硬件中断。
2026-03-22 00:30:00
364
原创 【车载开发系列】RH850延时函数的实现
随便等一下(上电初始化小延时) → 空循环驱动要精准、不许中断 → 定时器轮询裸机系统时基 → 1ms 中断 + tick 轮询跑 OS / 车载电控 → OS 延时(禁止自己阻塞轮询)
2026-03-22 00:15:00
194
原创 【车载开发系列】RH850中的分频
分频是把高频时钟降到外设能承受的频率。用一套高频时钟源,通过分频“变出”不同速度、不同功耗、满足不同外设要求的多路时钟,保证稳定、合规、精准、低功耗。注意点:分频必须在时钟稳定后再配置,这样可以避免毛刺。跑超了 → 外设分频(防死机)通信不准 → 外设分频(防乱码)定时太长 → 外设分频(防不够数)要省电/EMC → 分频要最快速度 → 不分频(1分频最快)
2026-03-21 10:59:01
318
原创 【车载开发系列】RH850常用的定时器
GPT的英文全称是General Purpose Timer。它是16位高精度的定时器,主要功能有:PWM 输出、输入捕获、触发 ADC、定时中断。GPT的本质就是一个高速往上数的计数器,上电后,从 0 开始往上数:0→1→2→3→…→最大值,每来一个时钟脉冲,就+1;数到你设定的最大值(周期),再清零重来。TAU的全称是Timer Array Unit。它是RH850的硬件定时器阵列,按型号分TAUA/B/J/D等,为GPT提供计时硬件载体;
2026-03-21 10:49:03
328
原创 【车载开发系列】TAU定时器
Timer Array Unit J,它是瑞萨RH850里轻量、低功耗、基础型定时器阵列,主打车身/低功耗场景,和TAUB/TAUG形成高低搭配。RH850中的一个轻量定时器,它有以下的特点:轻量通用、低功耗、基础定时/PWM,无死区/互补PWM常见4/8通道,单模块最多8路功耗低,适合车身/休眠唤醒场景结构:寄存器精简、配置简单、资源占用小时钟:支持PCLK、LOCO、EXTAL等多源,分频灵活。
2026-03-19 19:13:21
206
原创 【车载开发系列】RH850中的看门狗WDTA
WDTA是(Watchdog Timer A) 的缩写。它是内置的硬件看门狗定时器模块,核心作用是监控程序运行状态(防止死循环 / 跑飞),超时后触发复位或中断,保障汽车电子系统的安全性(符合 ISO 26262功能安全要求)。RH850型号内置多组WDTA,WDTA0就表示第0路WDTA模块。WDTA0 Watchdog Timer Enable Register(WDTA0 看门狗使能寄存器),WDTA模块的使能控制位,缩写为Watchdog Timer Enable。
2026-03-19 00:00:00
505
原创 【车载开发系列】一文搞懂N_Bs与N_Cs的区别
出自:ISO 15765-2;N_Cs=ECU作为发送方,等诊断仪回流控帧 FC 的超时时间。N = Network layer(网络层)C = Client(指 ECU,ISO-TP 里的客户端)s = Sender waiting for control frame(发送方在等流控帧 FC)同样出自:ISO 15765-2;诊断仪(总线主站)发送完帧后,等待 ECU 回流控帧 FC 的超时时间。N = Network layer(网络层)
2026-03-09 10:03:23
361
原创 【车载开发系列】数字电路图中的电阻表示
部分电路图还会在编号旁或附近标注电阻的阻值,单位通常是欧姆(Ω),比如10kΩ、1MΩ,有些小阻值电阻会用R表示,比如10R就是10Ω。一般会在电阻符号旁标注“R”加数字的编号,比如R1234,用来区分电路里的不同电阻,方便识别和维修。可变电阻/变阻器:在电阻符号上会有一根斜着的箭头,箭头从一端引出指向电阻中间,用于控制较大电流。电位器/微调电阻:符号中的箭头会接触在电阻中间位置,这根箭头代表可移动触点,用来改变阻值。在高速数字电路里,电阻可以匹配传输线的阻抗,减少信号反射,保障信号完整传输。
2026-03-06 10:57:59
367
原创 【车载开发系列】RH850中的HSI,MOSC与PLL
PLL = Phase Locked Loop(锁相环)你可以把它理解成单片机内部的“电子加速器 / 转速放大器”。输入一个低速、稳定的时钟(一般是外部晶振 8MHz / 16MHz / 20MHz)内部电路把这个频率成倍放大(×2、×6、×12、×24…)输出一个高频、干净、稳定的时钟给 CPU 和外设用。这一步放大频率,就叫:PLL 倍频假设你外部晶振是:8 MHz倍频系数:×30输出:8 × 30 = 240 MHz这就是 RH850 最常见的 240MHz 主频来源。
2026-03-06 10:48:28
484
原创 【车载开发系列】RH850的OSTM功能
OSTM(Output Compare Timer Module)是RH850系列MCU的高精度定时器。它是瑞萨RH850系列内置的专用定时器外设,常作系统Tick间隔定时,配置简单中断响应快。
2026-02-23 11:14:03
765
原创 【车载开发系列】RH850中的中断
RH850 内核特点:32位 RISC、哈佛架构、寄存器组内存布局:Flash、RAM、外设地址异常/中断基本概念:EI 异常、FE 异常、复位本文将详细介绍中断的概念,EI异常,以及中断复位等相关概念和RH850中的实现。
2026-02-23 00:45:00
1130
原创 【车载开发系列】ISO26262 ASIL基本概念
ASIL(Automotive Safety Integrity Level,汽车安全完整性等级)作为 ISO 26262 功能安全标准的核心评估指标,采用A、B、C、D,QM的分级体系。安全级别详细说明举例ASIL D最高安全等级。要求最严格,需要最复杂的安全机制和最高的测试覆盖率。故障可能导致生命危险或致命的伤害刹车、转向、安全气囊系统ASIL C高安全等级。要求严格,仅次于D自适应巡航ACC、自动紧急制动AEBASIL B中等安全等级尾灯、电动车窗ASIL A最低安全等级。
2026-02-22 11:48:15
603
原创 【车载开发系列】RH850中的GPIO操作
瑞萨RH850系列MCU的GPIO(车规级通用输入输出),主要包含了架构、寄存器、配置步骤、复用、安全/硬件特性与示例,方便直接落地开发。
2026-02-22 11:37:07
933
原创 【车载开发系列】GPIO核心概念理解
GPIO中断是GPIO引脚检测到特定电平变化或信号跳变时,向处理器发送中断请求,使处理器暂停当前任务并执行对应中断服务程序的机制,用于实现对外部事件的实时响应。输入—我听你的(读取外部信号)输出—我指挥你(向外发出信号)按键—上拉输入,浮空输入ADC—模拟输入LED—通用推挽软件I2C—通用开漏硬件I2C—复用开漏PWM、SPI—复用推挽GPIO中断—按键输入检测,传感器信号捕捉(红外,触摸传感器)
2026-02-21 11:52:28
883
原创 【车载开发系列】入坑RH850芯片
RH850 = 车规安全天花板 + 性能功耗黄金比 + 全场景覆盖 + 成熟AutoSAR生态 + 高集成度,是当前汽车MCU的主流首选。
2026-02-21 11:19:27
673
原创 【车载开发系列】瑞萨RH850芯片基础介绍
瑞萨芯片作为日本的品牌,它在全球的汽车电子芯片市场占据很高的地位,尤其是车规级MCU方面,基于此瑞萨也获得了大量的汽车零部件厂商的青睐。虽然国内国产化的呼声一直很高,但是不得不承认与国际的芯片巨头仍然存在着很大的距离,因为工作原因可以比较近的接触到瑞萨MCU芯片,所以本篇文章就介绍一下瑞萨车规级MCU RH850-F1x系列的使用指南。RH850/F1x是车规级MCU,不同系列在市场上定位也是不一样的。
2026-02-18 19:01:00
853
原创 【车载开发系列】Renesas Flash Programmer (RFP) 反向读取功能
在弹出的设置中,选择需要读取的存储区域(如Code Flash 1),设置好保存路径,点击确认后即可将芯片中的程序读取为.hex或.bin格式的文件保存到本地。从HexView可以查看到,一共有三段分别是CodeFlash,DataFlash以及UserBootArea。当我们不知道MCU当中烧录的是哪个软件的时候,我们可以使用这种方法来排查问题。使用HexView工具就可以打开刚刚我们保存出来的文件了。
2026-02-18 13:25:41
73
原创 【车载开发系列】Renesas Flash Programmer (RFP) 使用教程
RFP就是Renesas Flash Programmer的缩写。它是一款用于瑞萨系列MCU的闪存编程工具,它支持嵌入式程序的刷写、擦除以及Option Byte的配置。芯片中的Option Byte(OPBT)是用于配置芯片特定功能和属性的内存区域。通过修改Option Byte开发者能够根据需求对芯片进行灵活的配置,实现安全性和其他关键特性。
2026-02-16 00:15:00
1075
原创 【车载开发系列】浮点数与整型数的转换
浮点数与整数之间的转换需要特别注意的问题,当整形数为char或者short时直接强制转换便好了,但是如果整数是int型且是一个很大的数,那么就不能转了,因为float只能保存最大2的24次方的数字;同样float也是可以直接转换为int数,但要注意的是直接强转的话小数部分将被丢失,要想四舍五入的话推荐使用round函数。最后在浮点数当中有float和double两种类型,float直接转64位的double型时,自然没问题。
2026-02-15 00:15:00
75
原创 【车载开发系列】C语言浮点数入门
全世界人口数大约是:6,100,000,000,这样的数书写和显示都很不方便,为了免去写这么多重复的0,将其表现为这样的形式:6,100,000,000=6.1×10^9(10的九次方),即6.1E9或6.1e9。科学计数法采用%e或%E输出,完整的输出格式是%m.ne或%m.nE,指定输出数据整数部分和小数部分共占m位,其中有n位是小数。在浮点数的取值范围内,整数转换为浮点数不会有精度的损失,但是浮点数转换为整数后,会丢弃小数位,所以为了不丢失精度,建议使用库函数round。float采用%f占位符;
2026-02-14 11:33:56
430
原创 【车载开发系列】C语言浮点数运算
int类型与float类型都是占据4字节内存,所以都是32个0和1的组合,所以它们所能表示的数据个数是相同的;浮点数所表示的数据是不连续的;浮点数只是一种近似表示法,是不能用作精确数来使用的(比如条件判断 if (f == 0.1) 这种判断不要出现);浮点数的内存表示方法更复杂,所以浮点数的运算比int类型要慢很多。
2026-02-14 10:42:26
387
原创 【车载开发系列】安全算法与安全访问
所谓的消息摘要算法,就是对一个消息或文本,产生一个固定长度的值(也就是摘要),采用的是单向的Hash函数对消息或文本进行计算产生,且不同的明文生成的摘要结果 "总是"不同的,相同的明文产生的摘要 “必定” 一致。这里目前最常用的摘要算法有 MD5和SHA1。MD5是由MD4,MD3,MD2改进而来,摘要长度为128位,在目前应用比较广泛。
2026-01-18 17:42:09
1036
原创 【车载开发系列】AES-CMAC算法基础
AES(Advanced Encryption Standard)是对称加密算法的一个标准,主要用于保护电子数据的安全。CMAC(Cipher Block Chaining-Message Authentication Code),也简称为CBC_MAC,它是一种基于对称秘钥分组加密算法的消息认证。一般情况下每次操作128位有效数据位,也就是16个字节。
2026-01-18 14:09:43
339
原创 结构化思维之PERP原则
PERP是四个手写字母的缩写,强调先结论,后展开分析,最后再说结论的一种结构化思维分析与沟通的方式。广泛应用在提建议写邮件的过程中。在沟通过程中,往往我们采用先事实,根据事实进行分析预测,进而得出行动与结论,使用这种方式在职场沟通中使用,将更加高效。PREP原则是一种高效沟通框架,通过结构化表达提升了说服力和内容清晰度。强大的说服能力和沟通能力可以帮你得到想要的资源,而且良好的沟通能力也能促进不同部门人员之间的协作,最终有效达成目标。
2026-01-17 15:44:48
627
原创 职场人的结构化思维
结构化思维是一种从混乱中创造秩序的能力,是将零散、无序的信息,经过加工和整理,变成有条理、有层次、有逻辑的思考方式的过程。有结构的信息更适合大脑记忆和理解。结构化思维不是与生俱来的天赋而是一种可训练的后天思维习惯。本文首先介绍了什么是结构化思维,它将无序的信息经过拆解,归纳与重构之后,形成有规律便于记忆信息的过程。在日常沟通表达上,我们可以使用金字塔结构,PERP原则,结构化的表达与传递信息给需要的相关方。
2026-01-17 13:44:02
1064
原创 【车载开发系列】了解流控帧
流控帧(Flow Control Frame,FC)是ISO 15765-2(CAN协议)网络层中的一部分,用于管理在多帧传输过程中发送方与接收方之间的通信。
2026-01-10 17:30:59
1274
原创 【车载开发系列】指针指向数组并指定改数组首地址
这样就定义了一个指针,该指针指向数组类型为short类型,总长度为2048,但是这个指针或者说是数组并没有初始化的地址。于是需要给它初始化一下,也就是指定数组的起始地址,我是这样做的。)[2048])的类型的地址,可以理解成一个无名的指针(*)指向一个类型为short,长度为2048的数组的首地址,该首地址为0xc0001234,并将这个地址赋值给ptr。)[2048])0xc0001234将数字0xc0001234强制转换成(short(用一个指针来指向一个数组,同时定义了数组的数据类型。
2026-01-10 16:14:31
174
原创 【车载开发系列】总线物理层规范下篇
TSEG1由传播段和相位缓冲段1合并而成,我们也称之为时间段1。TSEG2是相位缓冲段2。它们的长度越大,容忍的误差范围越大,但同时也会影响传输速度。增加相位缓冲段1和相位缓冲段2的长度,以允许更多的时钟调整空间SJW的全称是sync Jump Width,它叫同步跳转宽度。它定义了在重新同步时可以缩短或延长的最大时钟周期数。因为重新同步时,相位缓冲段1会延长或是相位缓冲段2缩短。当接收到的边沿时间与预期不同步时,SJW定义了允许的时间跳跃范围。增大SJW可以容忍更大的时钟误差。
2026-01-03 17:14:24
909
原创 【车载开发系列】总线物理层规范中篇
由发送单元在非同步的情况下每秒钟发送的位数称为位速率,即一个二进制位在总线上传输所需要的时间就是位时间。1除以位时间之后可以得到波特率(也就是位的速率)。时间份额是通过MCU芯片的晶振周期分频得到的,它的作用是用于定义CAN通信中每一位的时序结构,确保数据传输的稳定性和同步性。每一位Tq都包含以下四个部分:同步段(Synchronization Segment)传播段(Propagation Segment)
2026-01-03 14:18:48
518
原创 【车载开发系列】总线物理层规范上篇
晶振的全名叫晶体振荡器,单片机系统里都有晶振,晶振是由石英晶体经过加工并镀上电极而做成的,主要特性就是通电后会产生机械振荡,可以给单片机提供稳定的时钟源。晶振提供时钟频率越高,单片机的运行速度也就越快。振荡周期就是晶振振荡一次花费的时间。以12Mhz为例,振荡周期=1秒/12Mhz,也就是频率的倒数。它是由单片机振荡器的晶振频率决定的,指的是振荡器每震荡一次所消耗的时间长度,也是整个系统中最小的时间单位。时钟周期其实就是振荡周期(因为晶振提供的是时钟,也就是时间,换个名字而已)
2025-12-27 19:50:32
312
原创 【车载开发系列】比特率与波特率
比特率(Bit Rate)是指单位时间内传输的二进制位数,通常以比特每秒(bps)为单位,它用于衡量数字通信系统中的数据传输速率。例如,网络带宽、文件下载速度等常常用比特率表示。波特率(Baud Rate)是衡量数据传输速率的单位,表示每秒传输的符号(或信号变化)的数量。一个波特代表一个状态的变化,它的衡量单位通常是波特每秒(Bd/s)。
2025-12-21 10:35:25
332
原创 【车载开发系列】总线负载率基础概念
实际数据传输速率和理论上能达到的数据传输速率的比值就叫做总线负载率。比如每个教室都有一个负荷上限,比如容纳100人,如此时教室中只有10个人时,我们就说教室的负载率是10%。他说明了在空间上资源被利用的情况。负载率直接关系到网络的实时性和可靠性。只有在低负载率(一般指定为低于30%)下,总线才能满足响应迅速,以及高可靠性和高实时性。当然有些主机厂也会要求在负载率达到90%甚至100%时,也要求正常按周期收发报文,所以在设计通信总线的报文时,更加需要设计合理的报文长度和数量。
2025-12-20 19:37:39
692
原创 【车载开发系列】车载总线的Busoff功能需求
如果ECU没有唤醒(通讯关闭,报文停止发送),或者供电电压范围在网络相关诊断开启电压范围(9-16V)之外,或者TDiagstart没有超时,那么即便Busoff故障,故障码也不会发生。ECU首次进入BusOff需执行快恢复,五次连续的快恢复(连续的快恢复是指两次快恢复之间该ECU未发送任何正常报文)之后再次进入Bus Off故障需执行慢恢复。当ECU进入Busoff之后快恢复要被执行,如果ECU经历三次连续快恢复之后仍然不能恢复,ECU需在第四次进入BUSOFF故障时,记录BUSOFF的故障码。
2025-12-07 15:46:33
1093
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
1