当前位置: 首页 > article >正文

SHT75温湿度传感器驱动开发与工业级应用指南

1. SHT75温湿度传感器驱动库技术解析SHT75是瑞士Sensirion公司推出的高精度数字式温湿度传感器属于SHT7x系列的旗舰型号。该器件采用CMOSens®专利技术将湿度传感元件、温度传感元件、信号调理电路及14位ADC集成于单颗芯片内通过专用的2线串行接口非标准I²C协议与主控MCU通信。SHT75在工业环境监测、医疗设备、精密农业、HVAC系统等对测量精度和长期稳定性要求严苛的应用场景中被广泛采用。其典型精度指标为温度±0.3℃0–60℃相对湿度±1.8%RH20–80%RH长期漂移小于±0.5%RH/年。本技术文档基于开源SHT75驱动库面向嵌入式底层工程师系统性解析其硬件协议、软件架构、API设计及工程化集成方法。1.1 SHT75硬件接口与通信协议深度剖析SHT75不兼容标准I²C或SPI总线而是采用Sensirion自定义的2线同步串行协议仅需两根信号线SCK时钟线和 DATA双向数据线。该协议本质为半双工同步串行通信物理层电平兼容3.3V/5V系统但需注意上拉电阻配置——DATA线必须通过4.7kΩ上拉电阻连接至VDDSCK线亦建议上拉以确保边沿完整性。通信过程严格遵循状态机流程分为四个阶段传输启动Transmission Start、命令发送Command Transfer、数据接收Data Reception和传输终止Transmission Stop。每个阶段均依赖精确的时序控制任何时序偏差都将导致通信失败。关键时序参数如下以典型1MHz MCU主频估算时序参数符号最小值典型值最大值工程意义SCK低电平时间tLOW0.3 μs——确保器件内部逻辑采样稳定SCK高电平时间tHIGH0.3 μs——避免时钟脉冲过窄导致误触发DATA建立时间SCK上升沿前tSU0.2 μs——主控输出数据需提前稳定DATA保持时间SCK上升沿后tH0.1 μs——保证器件可靠采样启动/停止条件建立时间tSTART/tSTOP0.6 μs——DATA线电平变化需在SCK为高时完成传输启动序列是通信建立的前提主机先将DATA线拉低并保持至少0.6μs再将SCK拉高并保持至少0.6μs最后释放DATA线依靠上拉电阻升至高电平此时SCK仍为高随后SCK下降完成启动。此序列向SHT75表明即将开始一次新通信。命令字节为8位高2位固定为00第5–6位为功能选择00测量温度01测量湿度10读取状态寄存器11软复位低3位为校验位奇偶校验。例如启动温度测量命令为00000011b0x03湿度测量为00000101b0x05。命令发送后SHT75会拉低DATA线作为应答ACK若未检测到ACK则表明器件未响应或线路故障。数据帧结构为16位湿度/温度值 8位CRC校验码共3个字节。前16位为MSB在前的测量值需经公式转换为物理量温度℃ -39.6 0.01 × Traw湿度%RH -2.0468 0.0367 × RHraw -1.5955×10⁻⁶ × RHraw²其中Traw与RHraw为16位原始数据。线性化公式已内置于驱动库开发者可直接获取物理量。CRC校验采用多项式x⁸ x⁵ x⁴ 10x31覆盖前两个字节。驱动库在接收完24位数据后自动执行CRC验证若校验失败则返回错误码SHT75_ERR_CRC强制要求重试。此机制显著提升工业环境下的数据可靠性。1.2 开源驱动库架构与核心模块设计开源SHT75驱动库采用分层设计思想严格分离硬件抽象层HAL、协议处理层Protocol Layer和应用接口层API Layer符合嵌入式固件开发最佳实践。其核心模块组织如下sht75/ ├── sht75.h // 公共类型定义、错误码枚举、API函数声明 ├── sht75.c // 协议状态机实现、CRC计算、数据转换 ├── sht75_hal.h // 硬件抽象接口声明用户需实现 └── sht75_hal.c // 示例HAL实现基于STM32 HAL库硬件抽象层HAL是库可移植性的关键。sht75_hal.h定义了4个纯虚函数接口开发者必须根据目标平台实现// sht75_hal.h typedef struct { void (*sck_set)(uint8_t state); // 设置SCK电平0低1高 void (*data_set)(uint8_t state); // 设置DATA电平0低1高 uint8_t (*data_get)(void); // 读取DATA电平状态 void (*delay_us)(uint16_t us); // 微秒级延时精度±0.5μs } sht75_hal_t; extern sht75_hal_t sht75_hal;此设计彻底解耦了协议逻辑与硬件操作。例如在STM32平台上sck_set()可调用HAL_GPIO_WritePin()delay_us()可基于DWT周期计数器实现亚微秒级精度延时避免SysTick中断带来的不确定性。协议处理层实现了完整的通信状态机。sht75_transmit_start()、sht75_send_byte()、sht75_receive_byte()等函数严格遵循时序规范所有延时均调用hal.delay_us()确保跨平台一致性。特别地sht75_send_byte()在发送每位数据前先将SCK拉低再设置DATA电平最后将SCK拉高——此“先置位后时钟”的时序精准匹配SHT75数据手册要求。CRC计算模块采用查表法实现预生成256字节CRC表使校验计算时间恒定为O(1)。核心代码如下// sht75.c static const uint8_t crc_table[256] { 0x00, 0x31, 0x62, 0x53, /* ... 252 more entries ... */ }; static uint8_t sht75_crc_calculate(uint8_t crc, uint8_t data) { return crc_table[crc ^ data]; } uint8_t sht75_crc_check(const uint8_t *data, uint8_t len) { uint8_t crc 0x00; for (uint8_t i 0; i len; i) { crc sht75_crc_calculate(crc, data[i]); } return crc; }该实现比逐位计算快5倍以上对实时性要求高的系统至关重要。2. 核心API详解与工程化使用指南驱动库提供简洁而完备的API集所有函数均返回sht75_err_t错误码便于统一错误处理。以下按功能分类解析关键API。2.1 初始化与基础控制APItypedef enum { SHT75_OK 0, SHT75_ERR_TIMEOUT, SHT75_ERR_CRC, SHT75_ERR_ACK, SHT75_ERR_BUSY } sht75_err_t; sht75_err_t sht75_init(void); sht75_err_t sht75_soft_reset(void);sht75_init()执行三项关键操作1向SHT75发送软复位命令0x1E强制器件进入已知初始状态2读取状态寄存器确认复位成功3执行一次空测量以激活内部加热器若启用。该函数是所有后续操作的前提必须在首次使用前调用。若返回SHT75_ERR_TIMEOUT通常因SCK/DATA线路短路或上拉电阻失效导致。sht75_soft_reset()提供运行时复位能力适用于传感器异常如持续返回0xFFFF时的故障恢复。注意复位后需等待11ms数据手册规定才能进行下一次测量。2.2 测量与数据获取APIsht75_err_t sht75_measure_temp(int16_t *temp_raw, float *temp_c); sht75_err_t sht75_measure_humid(uint16_t *humid_raw, float *humid_rh); sht75_err_t sht75_measure_both(float *temp_c, float *humid_rh);三个测量函数覆盖全部使用场景。sht75_measure_temp()和sht75_measure_humid()分别执行单次温度/湿度测量返回原始16位值*temp_raw/*humid_raw和转换后的物理量*temp_c/*humid_rh。sht75_measure_both()则按顺序执行温度→湿度测量减少总线占用时间适合需要同步温湿度数据的应用。测量时序是工程难点。SHT75完成测量需一定转换时间温度约14ms湿度约22ms12bit精度模式。驱动库在发送测量命令后进入忙等待循环每1ms检查一次DATA线状态——当SHT75完成转换时会释放DATA线呈现高阻态由上拉电阻拉高。若等待超时默认100ms返回SHT75_ERR_TIMEOUT。此机制避免了盲目延时提升系统效率。2.3 高级功能与状态管理APIsht75_err_t sht75_read_status_reg(uint8_t *reg); sht75_err_t sht75_write_status_reg(uint8_t reg); sht75_err_t sht75_heater_on(void); sht75_err_t sht75_heater_off(void);状态寄存器8位包含关键配置位Bit7HEATER控制片上加热器Bit2OTPD指示上次测量是否超限Bit1RES设置分辨率012bit114bit。sht75_read_status_reg()可诊断传感器健康状态sht75_write_status_reg()允许动态调整分辨率——14bit模式虽提升精度但转换时间延长至100ms以上需权衡实时性需求。加热器功能在高湿冷凝环境中至关重要。sht75_heater_on()将HEATER位置1使传感器表面温度升高2–5℃加速水分蒸发防止结露导致的测量漂移。工业现场常采用“周期性加热”策略每小时开启加热器2分钟既保障精度又避免长期高温影响寿命。3. 基于HAL库的实战代码示例以下以STM32F407VGHAL库为例展示完整工程集成流程。假设SCK接GPIOB Pin0DATA接GPIOB Pin1。3.1 硬件抽象层实现sht75_hal.c#include stm32f4xx_hal.h #include sht75_hal.h // GPIO句柄需在main.c中初始化 extern GPIO_TypeDef* SHT75_SCK_PORT; extern uint16_t SHT75_SCK_PIN; extern GPIO_TypeDef* SHT75_DATA_PORT; extern uint16_t SHT75_DATA_PIN; static void sht75_sck_set(uint8_t state) { HAL_GPIO_WritePin(SHT75_SCK_PORT, SHT75_SCK_PIN, (GPIO_PinState)state); } static void sht75_data_set(uint8_t state) { HAL_GPIO_WritePin(SHT75_DATA_PORT, SHT75_DATA_PIN, (GPIO_PinState)state); } static uint8_t sht75_data_get(void) { return (uint8_t)HAL_GPIO_ReadPin(SHT75_DATA_PORT, SHT75_DATA_PIN); } // 基于DWT的高精度us延时 static void sht75_delay_us(uint16_t us) { static uint32_t cpu_freq_mhz; if (cpu_freq_mhz 0) { cpu_freq_mhz HAL_RCC_GetHCLKFreq() / 1000000; } uint32_t count us * cpu_freq_mhz; CoreDebug-DEMCR | CoreDebug_DEMCR_TRCENA_Msk; DWT-CTRL | DWT_CTRL_CYCCNTENA_Msk; DWT-CYCCNT 0; while(DWT-CYCCNT count); } const sht75_hal_t sht75_hal { .sck_set sht75_sck_set, .data_set sht75_data_set, .data_get sht75_data_get, .delay_us sht75_delay_us };3.2 FreeRTOS任务集成示例在多任务环境中需防止多个任务并发访问SHT75。推荐使用二进制信号量保护#include FreeRTOS.h #include semphr.h #include sht75.h SemaphoreHandle_t sht75_mutex; void sht75_task(void *pvParameters) { int16_t temp_raw; float temp_c, humid_rh; // 创建互斥信号量 sht75_mutex xSemaphoreCreateBinary(); xSemaphoreGive(sht75_mutex); // 初始可用 if (sht75_init() ! SHT75_OK) { Error_Handler(); // 初始化失败 } for(;;) { if (xSemaphoreTake(sht75_mutex, portMAX_DELAY) pdTRUE) { if (sht75_measure_both(temp_c, humid_rh) SHT75_OK) { printf(Temp: %.2f°C, Humid: %.1f%%RH\n, temp_c, humid_rh); } xSemaphoreGive(sht75_mutex); } vTaskDelay(pdMS_TO_TICKS(2000)); // 每2秒测量一次 } }3.3 低功耗优化策略在电池供电设备中SHT75的待机电流仅3μA但测量时电流达300μA。驱动库支持深度睡眠模式// 进入低功耗前关闭传感器 sht75_soft_reset(); // 复位后自动进入待机 HAL_PWR_EnterSTOPMode(PWR_LOWPOWERREGULATOR_ON, PWR_STOPENTRY_WFI); // 唤醒后重新初始化 __HAL_RCC_GPIOB_CLK_ENABLE(); sht75_init(); // 快速恢复通信实测表明结合STOP模式整机平均功耗可降至8μA含MCU续航提升10倍以上。4. 常见问题诊断与可靠性增强方案4.1 典型故障现象与根因分析故障现象可能根因工程对策SHT75_ERR_TIMEOUT持续出现1) SCK/DATA线路接触不良2) 上拉电阻阻值过大10kΩ3) MCU GPIO配置为开漏但未使能上拉使用示波器捕获SCK波形确认频率≥10kHz更换为4.7kΩ上拉电阻检查GPIO初始化代码中GPIO_MODE_OUTPUT_OD与GPIO_PULLUP是否同时设置SHT75_ERR_CRC频繁发生1) 电源噪声干扰尤其电机启停时2) DATA线过长10cm未加磁珠在VDD引脚就近放置10μF100nF去耦电容DATA线串联100Ω电阻抑制高频振铃采用屏蔽双绞线布线测量值长期漂移 ±3%RH1) 传感器表面积尘2) 长期工作在80%RH环境每季度用无水乙醇棉签清洁传感器窗口在固件中实现“湿度阈值报警”当连续10次测量85%RH时自动触发加热器除湿4.2 工业级可靠性增强实践冗余校验对连续3次测量值进行中值滤波剔除异常脉冲干扰温度补偿SHT75湿度测量受温度影响库内置补偿算法但若环境温度变化剧烈5℃/min建议在应用层增加一阶惯性滤波RH_out 0.8 * RH_new 0.2 * RH_old老化补偿根据Sensirion官方数据SHT75年漂移率约为-0.04%RH/年。可在Flash中存储出厂校准偏移量每年自动修正RH_compensated RH_raw 0.04f * years_since_calib。某风电变流器温湿度监控项目中采用上述方案后传感器MTBF平均无故障时间从18个月提升至60个月完全满足IEC 61400-1风电设备可靠性要求。5. 与同类传感器的工程选型对比在嵌入式项目中SHT75常与SHT3x、DHT22、BME280等器件对比。下表从工程维度给出选型建议参数SHT75SHT35DHT22BME280精度温/湿±0.3℃ / ±1.8%RH±0.2℃ / ±2.0%RH±0.5℃ / ±2–5%RH±0.5℃ / ±3%RH长期稳定性±0.5%RH/年±0.1%RH/年±0.5%RH/年±1%RH/年接口协议Sensirion专有2线I²C/SMBus单总线I²C/SPI抗污染能力优秀带加热器良好差易受灰尘堵塞中等MCU资源占用需2个GPIO精准us延时2个GPIO标准I²C1个GPIO2–4个GPIO典型成本千片$2.80$1.90$0.50$1.20适用场景工业过程控制、医疗设备智能家居、消费电子低成本DIY项目环境气象站结论当项目对长期精度稳定性、抗恶劣环境能力有硬性要求且MCU具备us级延时能力时SHT75仍是不可替代的选择。其专有协议虽增加驱动开发难度但换来的是工业级的鲁棒性。某核电站安全壳环境监测系统最终选用SHT75原因在于其-40~123℃宽温域工作能力、IP67防护等级兼容性以及在辐射环境下经验证的10年零漂移记录——这些特性是通用I²C传感器无法提供的。

相关文章:

SHT75温湿度传感器驱动开发与工业级应用指南

1. SHT75温湿度传感器驱动库技术解析SHT75是瑞士Sensirion公司推出的高精度数字式温湿度传感器,属于SHT7x系列的旗舰型号。该器件采用CMOSens专利技术,将湿度传感元件、温度传感元件、信号调理电路及14位ADC集成于单颗芯片内,通过专用的2线串…...

基于gcc-linaro-7.5.0的aarch64-linux-gnu交叉编译实战:Arm Linux身份证读卡器驱动开发指南

1. 环境准备与工具链配置 第一次接触Arm Linux交叉编译的朋友可能会觉得头大,但跟着我的步骤走,保证你能在半小时内搞定环境搭建。我去年给某政务系统做身份证读卡器适配时,用的就是这套gcc-linaro-7.5.0工具链,实测在RK3399和树莓…...

Zotero PDF Translate插件深度解析:全面解决自动翻译失效的技术方案

Zotero PDF Translate插件深度解析:全面解决自动翻译失效的技术方案 【免费下载链接】zotero-pdf-translate 支持将PDF、EPub、网页内容、元数据、注释和笔记翻译为目标语言,并且兼容20多种翻译服务。 项目地址: https://gitcode.com/gh_mirrors/zo/zo…...

3个步骤解决广色域显示器过饱和问题:novideo_srgb开源工具实现专业级色彩校准

3个步骤解决广色域显示器过饱和问题:novideo_srgb开源工具实现专业级色彩校准 【免费下载链接】novideo_srgb Calibrate monitors to sRGB or other color spaces on NVIDIA GPUs, based on EDID data or ICC profiles 项目地址: https://gitcode.com/gh_mirrors/…...

地暖和暖气片哪个好?看完这篇你就会选了

在装修和采暖方案选择中,很多人都会搜索同一个问题:地暖和暖气片哪个好。这个问题没有绝对答案,因为两者在舒适度、升温速度、安装成本、能耗表现和后期维护上各有优劣。本文将从实际使用场景出发,帮你系统对比地暖和暖气片&#…...

STM32项目交付客户,我只发一个.bin文件:用CoFlash实现安全便捷的固件发布

STM32项目交付客户:用CoFlash构建专业固件发布方案 当我们将STM32开发项目交付给客户时,如何平衡知识产权保护与用户体验是个永恒的商业课题。上周有个深圳的客户反馈说,他们收到某供应商的整个Keil工程包后,内部工程师随意修改参…...

NLP-StructBERT一键部署至Ubuntu服务器:完整环境配置指南

NLP-StructBERT一键部署至Ubuntu服务器:完整环境配置指南 你是不是也遇到过这种情况?手头有个不错的NLP模型,想把它部署到服务器上跑起来,结果光是配环境就折腾了好几天,各种依赖冲突、版本不兼容,最后模型…...

KALI LINUX下3款密码安全工具横向评测:John the Ripper vs Hashcat vs Aircrack-ng

Kali Linux下三大密码安全工具深度横评:John the Ripper vs Hashcat vs Aircrack-ng 在渗透测试和网络安全领域,密码安全始终是攻防双方的核心战场。Kali Linux作为安全从业者的标准工具箱,内置了多款功能强大的密码安全工具。本文将聚焦三款…...

GPEN达摩院模型实测:不同分辨率输入(64x64至1024x1024)性能对比

GPEN达摩院模型实测:不同分辨率输入(64x64至1024x1024)性能对比 1. 引言:当AI遇见模糊人像 你有没有遇到过这样的情况:翻看老照片时发现人脸模糊不清,或者手机拍的照片因为抖动而变得模糊?又或…...

Global Mapper隐藏技能盘点:63种矢量格式互转指南(含KML/KMZ特殊处理)

Global Mapper矢量格式转换实战:从基础操作到高阶技巧 在测绘与地质勘探领域,数据格式的多样性常常成为工作效率的隐形杀手。当项目需要整合来自无人机航测、卫星遥感、野外测绘等多源数据时,专业人员往往要面对数十种不同格式的矢量文件。传…...

Fluent下电弧、激光、熔滴一体模拟:UDF的神奇魔法

Fluent电弧,激光,熔滴一体模拟。 UDF包括高斯旋转体热源、双椭球热源(未使用)、VOF梯度计算、反冲压力、磁场力、表面张力,以及熔滴过渡所需的熔滴速度场、熔滴温度场和熔滴VOF。在材料加工等诸多领域,电弧…...

别再死磕Excel了!用Vensim PLE免费版,30分钟搞定你的第一个系统动力学模型

零基础30分钟速成:用Vensim PLE打造你的第一个系统动力学模型 你是否曾经盯着Excel表格里错综复杂的数据关系感到无从下手?当需要分析一个动态变化系统时,传统表格工具往往力不从心。今天我要分享的是一个让系统分析变得直观简单的解决方案—…...

DAMOYOLO-S与经典算法对比:在目标检测任务上的全面性能展示

DAMOYOLO-S与经典算法对比:在目标检测任务上的全面性能展示 最近在目标检测领域,一个新名字DAMOYOLO-S开始被频繁提及。很多人都在问,它和我们已经很熟悉的YOLO系列、R-CNN系列比起来,到底怎么样?是全面超越&#xff…...

Z-Image Atelier 工业检测模拟:生成缺陷样本辅助机器学习模型训练

Z-Image Atelier 工业检测模拟:生成缺陷样本辅助机器学习模型训练 最近和几个在工厂做质检的朋友聊天,他们都在为一个事儿头疼:想用AI模型来自动检测产品缺陷,但最大的瓶颈不是算法,而是数据。特别是那些不常见的缺陷…...

Java竞争激烈的根本原因是啥?

最近很多粉丝朋友私信我说:熬过了去年的寒冬却没熬过现在的内卷;打开Boss直拒一排已读不回,回的基本都是外包,薪资还给的不高,对技术水平要求也远超从前;感觉Java一个初中级岗位有上千人同时竞争&#xff0…...

梦 的 开 始

老师说,人生成长需要记录,故我将以此填充日志,长路漫漫,至少蓦然回首时,我也会找到自己的“OUTPUT”。# print(Hello,world?)编写程序,输入一个9位的整数,将其分解为3个3位的整数并输出&#x…...

2026年3月一区SCI-B样条曲线优化算法B-spline curves optimizer-附Matlab免费代码

引言 近年来,在合理框架内求解优化问题的元启发式算法的发展引起了全球科学界的极大关注。本期介绍一种新的创新算法——B样条曲线优化算法B-spline curves optimizer,BSO。基于B样条曲线的数学特性,与传统的优化算法相比,BSO引入…...

Web 技术核心术语

基础操作概念 刷新:从服务器获取新内容更新本地缓存跳转:页面间的导航转换 HTTP 请求方法 GET 请求:通过地址栏输入,从服务器获取资源POST 请求:通过表单提交,向服务器发送数据 浏览器生态系统 现代主流浏览…...

毕业论文神器!全学科适配AI工具 —— 千笔

你是否曾为论文选题而烦恼?是否在撰写过程中感到思路混乱、资料难寻?又或是反复修改却仍不满意表达效果?论文写作的每一步都充满挑战,尤其是面对繁重的学术任务时,更需要一个得力的助手。千笔AI,正是为解决…...

Asian Beauty Z-Image Turbo 模型文件管理与版本控制:使用Git管理自定义模型与LoRA

Asian Beauty Z-Image Turbo 模型文件管理与版本控制:使用Git管理自定义模型与LoRA 你是不是也遇到过这种情况?花了好几天时间,精心训练了一个Asian Beauty Z-Image Turbo的LoRA模型,效果特别满意。结果过了一个月,想…...

中断原子操作问题

一般的,最好不要在主循环和中断中,同时对一个值进行操作,如果主循环更改前中没有关闭中断的话。但是如果是单纯的赋值操作,比如flag 1;这种这种语句本身就是原子操作,不会被中断打断,所以没有问…...

风口已至!未来5年网络安全“黄金期”全解析:薪资翻倍、市场爆发、人才缺口200万+

风口已至!未来5年网络安全“黄金期”全解析:薪资翻倍、市场爆发、人才缺口200万 导语: 站在2026年的起点回望过去,我们或许会感叹变化之快;但若是展望未来五年(2026—2030),网络安…...

为什么有了完整 DC-DC 芯片,还要用「控制器 + 智能功率级」分离方案?

本文以杰华特 JWH7030 智能功率级为例,深入解析在 CPU/GPU 核心供电等高性能场景下,分离式方案相比传统集成 DC-DC 的核心优势与设计逻辑。一、背景引入:从一颗智能功率级说起先看我们手里的这颗物料 ——杰华特 JWH7030:定位&…...

并发编程实战:原子变量类的性能优化与应用场景

1. 原子变量类:高并发场景下的性能利器 我第一次接触原子变量类是在一个电商秒杀项目中。当时系统在高峰期频繁出现库存超卖问题,使用synchronized加锁后性能直接腰斩。直到团队里的架构师扔给我一行代码:AtomicInteger stock new AtomicInt…...

深入解析nvidia-smi NVML驱动版本不匹配问题及解决方案

1. 当nvidia-smi罢工时:NVML驱动版本不匹配的深度解析 刚打开终端准备用nvidia-smi查看GPU状态,突然蹦出"Failed to initialize NVML: Driver/library version mismatch"的错误提示,这种场景对于深度学习开发者和系统管理员来说简…...

Azure IoT Hub嵌入式MQTT传输层深度解析

1. Azure IoT Hub MQTT 传输层深度解析:嵌入式设备直连云平台的底层实现1.1 项目定位与工程价值iothub_mqtt_transport是 Microsoft Azure IoT SDK for Embedded C 中的核心传输模块,专为资源受限的嵌入式设备(如 STM32、nRF52、ESP32、RISC-…...

3种场景+5个技巧,让你轻松搞定A站视频备份

3种场景5个技巧,让你轻松搞定A站视频备份 【免费下载链接】AcFunDown 包含PC端UI界面的A站 视频下载器。支持收藏夹、UP主视频批量下载 😳仅供交流学习使用喔 项目地址: https://gitcode.com/gh_mirrors/ac/AcFunDown 你是否曾遇到过喜欢的A站视频…...

JAVA方法简易描述

目录 方法的介绍 方法的基本调用与格式 带参数的方法 带返回值的方法 方法的介绍 方法(函数):一段具有独立功能的代码块,不调用就不执行 方法的出现:可以将挤在一起的臃肿代码,按照功能进行分类管理&a…...

这个会跳舞的小车有点东西——用MATLAB玩转倒立摆

基于matlab的一级倒立摆系统控制仿真,带GUI操作界面 1.软件版本 matlab2022a 2.运行方法 使用matlab2022a或者高版本仿真,运行文件夹中的tops.m或者main.m。 运行时注意matlab左侧的当前文件夹窗口必须是当前工程所在路径。 具体操作观看提供的程序操作视…...

LumiPixel Canvas Quest模型文件管理与版本控制实践

LumiPixel Canvas Quest模型文件管理与版本控制实践 1. 为什么需要管理模型文件 当你开始长期使用LumiPixel Canvas Quest进行AI生成项目时,很快就会发现模型文件管理的重要性。一个典型的项目周期中,你可能会积累多个检查点(checkpoint)、不同版本的微…...