车规MCU的C语言时钟编程实战(从入门到精通)

第一章:车规MCU的C语言时钟编程概述

在汽车电子系统中,微控制器(MCU)的时钟系统是确保各模块协同运行的核心。车规MCU对时钟精度、稳定性和可靠性有严苛要求,C语言作为主要开发语言,广泛用于配置和管理时钟树结构。

时钟源的选择与初始化

车规MCU通常支持多种时钟源,包括内部RC振荡器、外部晶振和锁相环(PLL)。启动时需通过C代码选择主时钟源并完成初始化。常见步骤如下:
  • 配置时钟控制寄存器以启用外部晶振
  • 等待时钟稳定标志置位
  • 切换系统时钟源至高速时钟
// 示例:STM32系列MCU时钟初始化片段
RCC->CR |= RCC_CR_HSEON;              // 启用HSE
while (!(RCC->CR & RCC_CR_HSERDY));   // 等待HSE稳定
RCC->CFGR |= RCC_CFGR_SW_HSE;         // 切换系统时钟至HSE
上述代码通过直接操作寄存器启用高速外部晶振(HSE),并将其设为系统主时钟。执行逻辑确保只有在时钟稳定后才进行切换,避免系统异常。

时钟分频与外设同步

为满足不同外设的频率需求,需对主时钟进行分频。例如,CPU可能运行在160MHz,而CAN控制器仅需40MHz。通过配置总线分频器(如AHB/APB),可实现灵活分配。
总线类型典型频率分频系数
AHB160 MHz1
APB140 MHz4
APB280 MHz2
graph TD A[外部晶振] --> B{时钟选择} B --> C[内部PLL倍频] C --> D[系统主时钟] D --> E[AHB总线] D --> F[APB1分频] D --> G[APB2分频]

第二章:车规MCU时钟系统基础与配置

2.1 车规MCU时钟架构与核心组件解析

车规级微控制器(MCU)的时钟系统是确保功能安全与实时响应的核心。其架构通常包含多个时钟源,以实现冗余与低功耗切换。
时钟源组成
典型的车规MCU时钟架构包含以下组件:
  • 高速外部晶振(HSE):提供高精度主时钟,频率通常为8–48MHz
  • 高速内部RC振荡器(HSI):启动快速,用于冷启动或HSE失效时的备用
  • 低速外部晶振(LSE):用于实时时钟(RTC),典型频率32.768kHz
  • 锁相环(PLL):对输入时钟倍频,生成CPU和外设所需高频时钟
时钟配置示例

// 配置HSE为PLL输入,系统时钟设为168MHz
RCC->CR |= RCC_CR_HSEON;                    // 启动HSE
while(!(RCC->CR & RCC_CR_HSERDY));          // 等待HSE稳定
RCC->PLLCFGR = (8 << 0) | (168 << 6);       // M=8, N=168
RCC->PLLCFGR |= (0 << 16);                   // 输出不分频
RCC->CR |= RCC_CR_PLLON;                    // 启用PLL
while(!(RCC->CR & RCC_CR_PLLRDY));           // 等待PLL锁定
RCC->CFGR |= RCC_CFGR_SW_PLL;               // 切换系统时钟至PLL
上述代码展示了基于ARM Cortex-M内核MCU(如STM32F4系列)的时钟初始化流程。通过寄存器直接操作,精确控制时钟源切换顺序,确保系统稳定性。M和N参数分别用于分频和倍频,实现从8MHz输入到168MHz系统时钟的转换。

2.2 外部晶振与内部RC振荡器选型实践

在嵌入式系统设计中,时钟源的选型直接影响系统的稳定性与功耗表现。外部晶振提供高精度时钟,适用于通信协议或实时时钟场景;而内部RC振荡器启动快、成本低,适合对成本和功耗敏感的应用。
典型选型对比
特性外部晶振内部RC振荡器
精度±10–50ppm±1–2%
启动时间毫秒级微秒级
成本较高无外设成本
配置示例(STM32)

RCC_OscInitTypeDef RCC_OscInitStruct = {0};
RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE;
RCC_OscInitStruct.HSEState = RCC_HSE_ON;
RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
// 启用HSE作为系统时钟源,提升定时精度
上述代码初始化外部高速晶振(HSE),适用于需要精确波特率生成的USART或USB应用。相比之下,若使用内部HSI,则可省去外部元件,加快启动速度。

2.3 时钟源切换与稳定等待程序设计

在嵌入式系统中,时钟源切换是功耗管理与性能调节的关键环节。为确保系统稳定性,切换后必须等待新时钟源达到稳定状态。
时钟切换流程
  • 配置目标时钟源(如PLL或外部晶振)
  • 启动时钟并启动稳定计数器
  • 查询时钟就绪标志位
  • 执行切换并验证时钟状态
稳定等待实现示例
void Clock_SwitchToPLL(void) {
    RCC-&CR |= RCC_CR_PLLON;                    // 启动PLL
    while (!(RCC-&CR & RCC_CR_PLLRDY)) {       // 等待锁定
        Delay_us(10);
    }
    RCC-&CFGR &= ~RCC_CFGR_SW;                 // 清除时钟选择位
    RCC-&CFGR |= RCC_CFGR_SW_1;                // 选择PLL为系统时钟
}
上述代码通过轮询 RCC_CR_PLLRDY 标志位确保PLL输出稳定后才进行切换,避免因时钟抖动导致系统异常。延时函数用于防止过频繁读取,提升等待效率。

2.4 PLL倍频配置与系统主频设定

在嵌入式系统中,PLL(锁相环)是实现高频时钟源的关键模块。通过倍频外部低频晶振信号,PLL可为CPU、总线和外设提供稳定且高性能的时钟输入。
PLL工作原理简述
PLL通过反馈控制机制调节输出频率,其核心参数包括输入分频系数(PREDIV)、倍频系数(MULT)和输出分频系数(POSTDIV)。最终系统主频计算公式如下:

// 主频 = 输入时钟 / PREDIV * MULT / POSTDIV
uint32_t system_clock = (xtal_freq / prediv) * mult / postdiv;
上述代码用于计算实际生成的系统时钟频率。例如,使用8MHz晶振,配置PREDEV=1、MULT=30、POSTDIV=2,则系统主频为120MHz。
典型配置流程
  • 启用外部晶振并等待稳定
  • 设置PLL的分频与倍频参数
  • 使能PLL并等待锁定(LOCK)
  • 切换系统时钟源至PLL输出
合理配置PLL不仅提升性能,还能平衡功耗与稳定性,是系统级优化的重要环节。

2.5 时钟安全机制与故障检测编程

在高可靠性系统中,时钟安全机制是保障时间同步与任务调度准确性的核心。微控制器通常集成看门狗定时器(WDT)和时钟监控单元,用于检测主时钟失效或频率漂移。
时钟故障检测流程
  • 启动内部低速RC振荡器作为备用时钟
  • 启用外部晶振并等待稳定
  • 配置时钟监控器(CSS)监听HSE异常
  • 发生故障时自动切换至内部时钟
  • 触发中断或复位进行恢复处理
编程实现示例
RCC->CR |= RCC_CR_HSEON;           // 启用HSE
while (!(RCC->CR & RCC_CR_HSERDY)); // 等待就绪
RCC->CR |= RCC_CR_CSSON;            // 启用时钟安全系统
上述代码片段通过设置时钟控制寄存器启用外部晶振与时钟安全系统。当HSE失效时,硬件自动切换至内部时钟,并可通过NMI中断进行故障记录与恢复操作,确保系统持续运行。

第三章:C语言中的时钟寄存器操作与封装

3.1 寄存器映射原理与内存访问技巧

在嵌入式系统中,寄存器映射是硬件与软件交互的核心机制。通过将外设寄存器地址映射到内存空间,处理器可使用标准的内存读写指令访问硬件资源。
内存映射基础
处理器通过定义寄存器的物理地址实现对功能模块的控制。例如,GPIO 控制寄存器可能位于 0x40020000,对该地址的写操作直接影响引脚状态。
代码示例:寄存器访问

#define GPIOA_BASE  (0x40020000UL)
#define GPIOA_MODER (*(volatile uint32_t*)(GPIOA_BASE + 0x00))

// 配置 PA0 为输出模式
GPIOA_MODER &= ~(0x3 << 0); // 清除原有配置
GPIOA_MODER |= (0x1 << 0);  // 设置为输出
上述代码通过指针强制类型转换实现对寄存器的直接访问。volatile 确保编译器不会优化掉关键读写操作,地址偏移 0x00 对应模式寄存器。
访问优化技巧
  • 使用位操作精确修改寄存器字段,避免影响其他功能位
  • 成组配置寄存器以减少总线事务次数
  • 配合内存屏障确保多级缓存一致性

3.2 使用位操作实现精准时钟控制

在嵌入式系统中,精准的时钟控制常依赖于对硬件寄存器的位级操作。通过直接操控定时器控制寄存器中的特定比特位,可精确配置时钟源、分频系数和启动模式。
寄存器位配置示例

// 设置定时器控制寄存器 TCCR1B:启用 CTC 模式,预分频器为 64
TCCR1B |= (1 << WGM12) | (1 << CS11) | (1 << CS10);
上述代码将第7位(WGM12)置1以启用清除定时器比较匹配模式(CTC),同时设置第1和第0位(CS11 和 CS10)选择64分频。这种位或与左移结合的方式,确保仅修改目标位而不影响其他配置。
常用位操作技巧
  • 置位:使用 |= (1 << bit)
  • 清零:使用 &= ~(1 << bit)
  • 翻转:使用 ^= (1 << bit)
这些操作具备高效性和原子性,适合实时环境中对时序敏感的控制场景。

3.3 时钟驱动模块的封装与接口设计

为了提升嵌入式系统中时钟管理的可维护性与复用性,时钟驱动模块采用面向对象的设计思想进行封装。通过统一接口屏蔽底层硬件差异,实现上层应用与硬件解耦。
接口抽象设计
定义标准API集合,包括初始化、频率设置与使能控制:

typedef struct {
    void (*init)(void);
    int (*set_frequency)(uint32_t freq);
    void (*enable)(void);
    void (*disable)(void);
} clock_driver_t;
该结构体封装了时钟操作的核心方法,便于多时钟源统一管理。各成员函数指针对应具体SoC实现,支持运行时动态绑定。
时钟源配置表
使用静态映射表管理不同外设的时钟参数:
外设默认频率(Hz)可调范围
UART04800000016MHz-64MHz
SPI110000000025MHz-100MHz
表格化配置提升系统可配置性,支持编译期优化与调试追踪。

第四章:典型车规MCU平台时钟编程实战

4.1 基于Infineon AURIX的时钟初始化代码剖析

在AURIX架构中,时钟初始化是系统启动的关键步骤,直接影响CPU和外设的稳定运行。核心流程包括晶振使能、PLL配置与系统时钟切换。
主要配置步骤
  • 启用外部晶振(XTAL)作为时钟源
  • 配置锁相环(PLL)倍频参数以生成高频系统时钟
  • 切换CPU时钟源至PLL输出
典型初始化代码片段

// 使能XTAL
SCU_PLLCON0.B.CLKSEL = 0;     // 选择XTAL为输入
SCU_PLLCON0.B.PLLPWD = 0;     // 退出掉电模式
while (SCU_EXTCON.B.OSCRES == 1); // 等待晶振稳定

// 配置PLL
SCU_PLLCON1.B.K2DIV = 0x10;   // VCO输出分频比
SCU_PLLCON1.B.K1DIV = 0x2;    // 参考时钟分频
SCU_PLLCON0.B.ENLD = 1;       // 启用锁相环
SCU_PLLCON0.B.SETFINDIS = 0;  // 允许FINDIS自动锁定
上述代码首先激活外部晶振并等待其稳定,随后配置PLL的输入/输出分频参数。K1DIV决定参考频率,K2DIV控制VCO输出到系统时钟的分频比,最终实现高达200MHz的CPU主频输出。

4.2 NXP S32K系列时钟树配置实战

在NXP S32K系列MCU中,时钟树的正确配置是确保外设稳定运行的基础。通过S32 Design Studio提供的Clock Manager模块,可直观配置系统主时钟源、分频系数与外设时钟使能。
核心时钟源选择
S32K1xx支持多种时钟源,包括内部IRC(48MHz)、外部晶振(通常8MHz或16MHz)及锁相环(PLL)。典型配置将外部晶振作为SOSC输入,再通过PLL倍频至160MHz作为系统主频。

CLOCK_SetSimSafeDivs(); // 设置安全分频
CLOCK_InitOscillator(&oscConfig); // 初始化外部晶振
CLOCK_SetPllFllSel(kCLOCK_PllFllSelPll); // 选择PLL输出
上述代码首先确保分频器处于安全状态,随后启用外部晶振并切换系统主时钟源至PLL,实现高性能运行。
外设时钟分配
使用门控控制寄存器(SIM->SCGCx)按需开启外设时钟,例如:
  • SIM->SCGC5 |= SIM_SCGC5_PORTA_MASK:启用PORTA时钟
  • SIM->SCGC2 |= SIM_SCGC2_LPUART0_MASK:启用LPUART0
合理管理时钟门控有助于降低功耗。

4.3 STMicroelectronics SPC56xB时钟编程案例

在SPC56xB系列微控制器中,系统时钟配置是启动流程中的关键环节。通过配置外设时钟控制器(PCC),可精确控制各模块的时钟源与分频系数。
时钟树配置步骤
  • 启用外部晶振(XOSC)作为时钟源
  • 配置锁相环(PLL)倍频参数以生成高频系统时钟
  • 选择内核时钟(CMIOSCDIV、PLLDIV)分频值
代码实现示例

// 启用外部晶振
PCC->PCC_XOSC |= PCC_PCCn_CGC_MASK;
// 配置PLL:输入8MHz,目标输出120MHz
CGM->SC_SS = 0x1; // 选择XOSC为PLL源
CGM->SC_PLL[0].CTL0 = 0x3E8; // NDIV=62 → VCO=496MHz
CGM->SC_PLL[0].CTL1 = 0x02; // PDIV=2 → 输出248MHz
上述代码首先激活外部晶振,随后设置PLL的NDIV和PDIV寄存器,实现从8MHz输入到248MHz PLL输出的频率合成,为后续分频提供高精度基准。

4.4 多核MCU时钟同步与协调启动策略

在多核MCU系统中,确保各核心间时钟同步与协调启动是实现确定性行为的关键。不同内核若未在统一时间基准下运行,将导致数据竞争与控制逻辑紊乱。
硬件同步机制
多数现代多核MCU提供专用的同步与启动控制寄存器(如SYSCON中的CPUxLAUNCH)。通过主核触发从核复位释放,可实现精确的协同启动。
软件协调流程
启动阶段通常采用“主-从”模式,主核初始化共享资源后,向从核发送启动信号。以下为典型启动同步代码:

// 主核释放从核
void start_secondary_core(void) {
    SCB->CPUID = 0x1;              // 配置从核入口
    SYSCON->CPU1LAUNCH = 0x1;     // 启动从核,写1生效
}
上述代码中,CPU1LAUNCH寄存器用于触发从核跳转至预设向量地址。主核需先配置向量表偏移和堆栈指针,确保从核上下文完整。
时钟同步策略对比
策略优点缺点
共享PLL源相位一致,延迟低资源耦合度高
独立PLL+同步脉冲灵活性强需额外同步逻辑

第五章:总结与车规时钟编程最佳实践展望

确保时钟源冗余设计
在车规级系统中,时钟稳定性直接影响ADAS和域控制器的实时响应。推荐配置主备时钟源(如外部晶振+内部RC振荡器),并通过寄存器切换机制实现自动故障转移。
  • 使用PLL锁定状态标志位监控主时钟健康度
  • 配置RCC_CSR寄存器启用时钟安全系统(CSS)
  • 在中断服务程序中执行时钟切换逻辑
优化时钟树配置策略
合理分配APB、AHB总线频率,避免外设因时钟过低导致采样延迟。以下为典型配置片段:
/* 配置HSE为主时钟,PLL倍频至180MHz */
RCC-&CR |= RCC_CR_HSEON;
while (!(RCC-&CR & RCC_CR_HSERDY));
RCC-&PLLCFGR = (HSE_VALUE / 1MHz) * 180 | RCC_PLLCFGR_PLLSRC_HSE;
RCC-&CR |= RCC_CR_PLLON;
while (!(RCC-&CR & RCC_CR_PLLRDY));
RCC-&CFGR |= RCC_CFGR_SW_PLL; // 切换至PLL
实施温度补偿机制
车载环境温差大,需结合片上温度传感器动态调整时钟校准值。例如,每500ms读取ADC_TSENSE通道,查表修正LSE偏差。
温度区间(°C)建议校准偏移(ppm)作用外设
-40 ~ -10+8.5RTC、CAN FD
25 ~ 850全系统
构建时钟一致性验证流程
在AUTOSAR架构下,通过BswM调度CcM模块定期比对各ECU时间戳,利用FlexRay同步帧进行纳秒级对齐,误差阈值设定为±50ns。
基于实时迭代的数值鲁棒NMPC双模稳定预测模型(Matlab代码实现)内容概要:本文介绍了基于实时迭代的数值鲁棒非线性模型预测控制(NMPC)双模稳定预测模型的研究与Matlab代码实现,重点在于通过数值方法提升NMPC在动态系统中的鲁棒性与稳定性。文中结合实时迭代机制,构建了能够应对系统不确定性与外部扰动的双模预测控制框架,并利用Matlab进行仿真验证,展示了该模型在复杂非线性系统控制中的有效性与实用性。同时,文档列举了大量相关的科研方向与技术应用案例,涵盖优化调度、路径规划、电力系统管理、信号处理等多个领域,体现了该方法的广泛适用性。; 适合人群:具备一定控制理论基础和Matlab编程能力,从事自动化、电气工程、智能制造等领域研究的研究生、科研人员及工程技术人员。; 使用场景及目标:①用于解决非线性动态系统的实时控制问题,如机器人控制、无人机路径跟踪、微电网能量管理等;②帮助科研人员复现论文算法,开展NMPC相关创新研究;③为复杂系统提供高精度、强鲁棒性的预测控制解决方案。; 阅读建议:建议读者结合提供的Matlab代码进行仿真实践,重点关注NMPC的实时迭代机制与双模稳定设计原理,并参考文档中列出的相关案例拓展应用场景,同时可借助网盘资源获取完整代码与数据支持。
UWB-IMU、UWB定位对比研究(Matlab代码实现)内容概要:本文介绍了名为《UWB-IMU、UWB定位对比研究(Matlab代码实现)》的技术文档,重点围绕超宽带(UWB)与惯性测量单元(IMU)融合定位技术展开,通过Matlab代码实现对两种定位方式的性能进行对比分析。文中详细阐述了UWB单独定位与UWB-IMU融合定位的原理、算法设计及仿真实现过程,利用多传感器数据融合策略提升定位精度与稳定性,尤其在复杂环境中减少信号遮挡和漂移误差的影响。研究内容包括系统建模、数据预处理、滤波算法(如扩展卡尔曼滤波EKF)的应用以及定位结果的可视化与误差分析。; 适合人群:具备一定信号处理、导航定位或传感器融合基础知识的研究生、科研人员及从事物联网、无人驾驶、机器人等领域的工程技术人员。; 使用场景及目标:①用于高精度室内定位系统的设计与优化,如智能仓储、无人机导航、工业巡检等;②帮助理解多源传感器融合的基本原理与实现方法,掌握UWB与IMU互补优势的技术路径;③为相关科研项目或毕业设计提供可复现的Matlab代码参考与实验验证平台。; 阅读建议:建议读者结合Matlab代码逐段理解算法实现细节,重点关注数据融合策略与滤波算法部分,同时可通过修改参数或引入实际采集数据进行扩展实验,以加深对定位系统性能影响因素的理解。
本系统基于MATLAB平台开发,适用于2014a、2019b及2024b等多个软件版本,并提供了可直接执行的示例数据集。代码采用模块化设计,关键参数均可灵活调整,程序结构逻辑分明且附有详细说明注释。主要面向计算机科学、电子信息工程、数学等相关专业的高校学生,适用于课程实验、综合作业及学位论文等教学与科研场景。 水声通信是一种借助水下声波实现信息传输的技术。近年来,多输入多输出(MIMO)结构与正交频分复用(OFDM)机制被逐步整合到水声通信体系中,显著增强了水下信息传输的容量与稳健性。MIMO配置通过多天线收发实现空间维度上的信号复用,从而提升频谱使用效率;OFDM方案则能够有效克服水下信道中的频率选择性衰减问题,保障信号在复杂传播环境中的可靠送达。 本系统以MATLAB为仿真环境,该工具在工程计算、信号分析与通信模拟等领域具备广泛的应用基础。用户可根据自身安装的MATLAB版本选择相应程序文件。随附的案例数据便于快速验证系统功能与性能表现。代码设计注重可读性与可修改性,采用参数驱动方式,重要变量均设有明确注释,便于理解与后续调整。因此,该系统特别适合高等院校相关专业学生用于课程实践、专题研究或毕业设计等学术训练环节。 借助该仿真平台,学习者可深入探究水声通信的基础理论及其关键技术,具体掌握MIMO与OFDM技术在水声环境中的协同工作机制。同时,系统具备良好的交互界面与可扩展架构,用户可在现有框架基础上进行功能拓展或算法改进,以适应更复杂的科研课题或工程应用需求。整体而言,该系统为一套功能完整、操作友好、适应面广的水声通信教学与科研辅助工具。 资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!
数据结构部分 -- 一、栈和队列 Stack && Queue 栈 - 结构图 alt 队列 - 结构图 alt 双端队列 - 结构图 alt 二、 链表 Linked List 单链表 - 结构图 alt 单项循环链表 - 结构图 alt 双向链表 - 结构图 alt 三、 树 基础定义及相关性质内容 - 结构图 alt - 另外可以参考浙江大学数据结构课程中关于遍历方式的图,讲的十分详细 alt 使用链表实现二叉树 二叉查找树 - 非空左子树的所有键值小于根节点的键值 - 非空右子树的所有键值大于根节点的键值 - 左右子树都是二叉查找树 补充 - 完全二叉树 - 如果二叉树中除去最后一层节点为满二叉树,且最后一层的结点依次从左到右分布,则此二叉树被称为完全二叉树。 - 满二叉树 - 如果二叉树中除了叶子结点,每个结点的度都为 2,则此二叉树称为满二叉树。 代码下载地址: https://pan.quark.cn/s/b48377ea3e78 四、 堆 Heap 堆满足的条件 - 必须是完全二叉树 - 各个父节点必须大于或者小于左右节点,其中最顶层的根结点必须是最大或者最小的 实现方式及条件 - 使用数组实现二叉堆,例如下图的最大堆,在数组中使用[0,100,90,85,80,30,60,50,55]存储,注意上述第一个元素0仅仅是做占位; - 设节点位置为x,则左节点位置为2x,右节点在2x+1;已知叶子节点x,根节点为x//2; - 举例说明: - 100为根节点(位置为1),则左节点位置为2,即90,右节点位置为3,即85; - 30为子节点(位置为5),则根节点为(5//2=2),即90; 根据上述条件,我们可以绘制出堆的两种形式 - 最大堆及实现 al...
基于自抗扰控制ADRC的永磁同步电机仿真模型(Simulink仿真实现)内容概要:本文介绍了基于自抗扰控制(ADRC)的永磁同步电机(PMSM)仿真模型,利用Simulink平台实现控制系统的设计与仿真。该模型重点突出ADRC在抑制外部干扰和系统参数不确定性方面的优势,通过构建PMSM的数学模型,结合ADRC控制器设计,有效提升了电机在复杂工况下的速度控制精度与动态响应性能。文中详细阐述了ADRC的核心结构,包括跟踪微分器(TD)、扩张状态观测器(ESO)和非线性状态误差反馈控制律(NLSEF),并通过仿真验证了其相较于传统PID控制在抗干扰能力和鲁棒性方面的优越性。; 适合人群:具备自动控制理论基础、电机控制相关知识以及Simulink仿真经验的高校学生、科研人员及工程技术人员;尤其适合从事电机驱动、高性能伺服系统或先进控制算法研究的专业人士。; 使用场景及目标:① 掌握自抗扰控制的基本原理及其在电机控制中的具体应用;② 学习如何在Simulink中搭建永磁同步电机控制系统并实现ADRC算法;③ 对比分析ADRC与传统控制方法在抗扰动、鲁棒性和动态性能方面的差异;④ 为实际工程中高性能电机控制系统的开发提供仿真验证基础和技术参考。; 阅读建议:建议读者结合控制理论基础知识,逐步理解ADRC各模块的设计思想,并动手在Simulink中复现仿真模型,通过调整参数观察系统响应变化,深入掌握ADRC的调节规律与优化方法。同时可扩展研究不同工况下的控制效果,进一步提升系统性能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值