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

LoRa Feather固件设计:ESP32-S3多外设协同与低功耗调度

1. 项目概述“LoRa Feather”并非一个官方发布的标准化嵌入式库而是由开发者基于 Adafruit LoRa FeatherWing如 RFM95W/RFM96W 模块与 ESP32-S3特别是带 TFT 显示屏的 Adafruit Feather ESP32-S3 Reverse硬件平台所构建的一套实践性固件工程集合。其核心目标并非提供通用抽象层而是面向硬件工程师与嵌入式爱好者解决真实开发中高频出现的多模态外设协同、低功耗通信调度、TFT 图形界面实时反馈、LoRa 协议栈轻量化集成等具体问题。该工程不依赖于庞大框架如 Zephyr 或 PlatformIO 的完整生态封装而是以 STM32 HAL 风格为参考采用 C/C 混合编写深度绑定 ESP-IDF v5.1 SDK并显式启用 FreeRTOS 实时内核。所有代码均围绕 Adafruit 官方硬件设计展开LoRa 物理层基于 Semtech SX1276/SX1278 兼容芯片RFM95W 工作在 915MHz ISM 频段RFM96W 在 433MHz通过 SPI 总线连接至 ESP32-S3 的 VSPI 接口GPIO10–12, GPIO13显示子系统驱动 ST7789V 芯片的 2.4 TFT 屏幕分辨率 240×135使用 8-bit 8080 并行接口D0–D7 → GPIO16–23DC/CS/RES 引脚独立控制人机交互集成板载用户按键GPIO0、RGB LEDGPIO42 控制 WS2812B、以及可选的 I²C 环境传感器如 BME280挂载于 GPIO41/40。项目本质是硬件定义的固件模板——它将原理图约束如 SPI 速率上限 8MHz、TFT 并口时序裕量 ±5ns、PCB 布局限制如 RFM95W 天线馈点阻抗匹配要求 50Ω、以及 Adafruit BSP 的驱动缺陷如原生 TFT 驱动未启用 DMA 双缓冲导致刷屏撕裂全部编码为可复用的初始化逻辑与运行时策略。2. 硬件架构与引脚映射2.1 核心硬件拓扑模块主控接口关键引脚ESP32-S3电气特性工程约束RFM95W LoRaSPIVSPIMOSI: GPIO11, MISO: GPIO13, SCK: GPIO12, CS: GPIO10, DIO0: GPIO14, RESET: GPIO153.3V LVTTL, SPI Mode 0, Max CLK8MHzCS 必须硬拉低DIO0 用于中断唤醒RESET 需上电后 ≥100μs 延迟再初始化ST7789V TFT8080 并口D0–D7: GPIO16–23, DC: GPIO27, CS: GPIO39, RES: GPIO38, BLK: GPIO453.3V CMOS, 数据建立/保持时间 ≥15ns并口无专用 FSMC需 GPIO bit-bang RMT 外设模拟时序BLK 为 PWM 调光通道 0User ButtonGPIO 输入GPIO0下拉内部下拉按键接地需软件消抖≥20ms 低电平确认WS2812B LEDRMT 输出GPIO42RMT CH1单线协议800kHz 时钟严格时序T0H350ns±150nsT1H700ns±150ns关键设计决策说明SPI 与并口共用 GPIO12/13VSPI SCK/MISO 与 TFT D4/D5 物理复用但通过gpio_set_direction()动态切换方向避免总线冲突DIO0 中断优先级设为 5FreeRTOS configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY5确保 LoRa 收包中断不被其他外设抢占TFT 刷新采用双缓冲机制tft_framebuffer[2][240*135]前台缓冲写入后台缓冲由 RMT DMA 自动推送切换时仅交换指针消除视觉撕裂。2.2 电源管理策略ESP32-S3 的 ULP 协处理器未被启用因 LoRa 接收需持续监听信道RX current ≈ 10.3mA而 ULP 无法驱动 RFM95W。实际采用分级休眠// 休眠状态机单位ms typedef enum { SLEEP_ACTIVE 0, // LoRa RX TFT 更新 传感器采样 SLEEP_LORA_RX_ONLY, // 关闭 TFT/传感器仅维持 LoRa 接收 SLEEP_DEEP // RFM95W 进入 Sleep 模式Iq 1μAESP32-S3 进入 Deep-sleep } sleep_state_t; // Deep-sleep 唤醒源RTC GPIO0按键或 RFM95W DIO0LoRa 包到达 esp_sleep_enable_gpio_wakeup(GPIO_NUM_0, ESP_GPIO_WAKEUP_GPIO_LOW); esp_sleep_enable_ext0_wakeup(GPIO_NUM_14, 1); // DIO0 高电平触发实测从 Deep-sleep 唤醒至完成一帧 LoRa 解析耗时 83ms满足 Class A 终端 1s 窗口要求。3. LoRa 协议栈实现与配置3.1 底层驱动SX127x HAL 封装驱动不采用 Semtech 官方sx1276库因其未适配 ESP-IDF 的 SPI HAL而是重写寄存器级操作// sx127x_hal.h typedef struct { spi_device_handle_t spi_handle; gpio_num_t cs_pin; gpio_num_t dio0_pin; gpio_num_t reset_pin; } sx127x_hal_t; // 寄存器读写原子操作带 CS 控制 static inline uint8_t sx127x_read_reg(sx127x_hal_t *hal, uint8_t addr) { uint8_t tx_buf[2] {addr 0x7F, 0x00}; // Read bit 0 uint8_t rx_buf[2]; spi_transaction_t t { .length 16, .tx_buffer tx_buf, .rx_buffer rx_buf, }; spi_device_transmit(hal-spi_handle, t); return rx_buf[1]; } static inline void sx127x_write_reg(sx127x_hal_t *hal, uint8_t addr, uint8_t value) { uint8_t tx_buf[2] {addr | 0x80, value}; // Write bit 1 spi_transaction_t t {.length 16, .tx_buffer tx_buf}; spi_device_transmit(hal-spi_handle, t); }关键寄存器配置表LoRa 模式SF7, BW125kHz, CR4/5寄存器地址名称值Hex作用0x01OpMode0x80进入 LoRa 模式bit71Sleep 模式bit200x0EFrfMsb0xE4915MHz 频点0xE4C000 → 14.31818MHz × 0xE4C000 / 2^19 915.0MHz0x1DModemConfig10x72BW125kHz (bits7-4), CR4/5 (bits3-1), ImplicitHeader0 (bit0)0x1EModemConfig20xC5SF7 (bits7-4), TxContinuous0, RxTimeout00x26DetectOptimize0xC3SF7 专用优化值Semtech AN1200.220x31LowDbmReg0x00启用高灵敏度模式-148dBm SF12工程经验RFM95W 在 915MHz 频段需校准0x2FImageCal寄存器。实测未校准时接收灵敏度劣化 3dB校准值0x02可恢复标称性能。3.2 LoRaWAN Class A 协议精简实现项目未集成完整 LoRaWAN 栈如 LMIC而是实现最小可行 Class A 终端Join Request 流程手动构造 MAC 层帧DevEUI/AppEUI/AppKey 硬编码发送后监听 Join AcceptData Up/Down使用MHDR0x40Unconfirmed Data UpFPort1传输传感器数据RX1/RX2 窗口RX1 延迟 1s频率 JoinAccept.DLSettings.RX1DRoffsetRX2 固定 923.3MHzSF10。核心状态机代码// lora_mac.c typedef enum { LORA_STATE_IDLE, LORA_STATE_JOINING, LORA_STATE_JOINED, LORA_STATE_TX_UP, LORA_STATE_RX_WAIT } lora_state_t; void lora_task(void *pvParameters) { while(1) { switch(lora_state) { case LORA_STATE_IDLE: if (button_pressed()) lora_state LORA_STATE_JOINING; break; case LORA_STATE_JOINING: lora_send_join_request(); lora_state LORA_STATE_RX_WAIT; xTimerStart(rx1_timer, 0); // 1s 后进入 RX1 break; case LORA_STATE_RX_WAIT: // DIO0 中断触发 lora_rx_isr() → 解析 MAC 帧 → 更新 state break; } vTaskDelay(10 / portTICK_PERIOD_MS); } }4. TFT 显示驱动与图形库4.1 并口时序精准控制ST7789V 要求 8080 接口时钟周期 ≥200ns5MHz但 ESP32-S3 GPIO 翻转极限约 10MHz。采用RMT 外设模拟并口RMT channel 0输出 D0–D7 数据8 通道复用每通道 1 位RMT channel 1生成 WR 信号低电平有效脉宽 50ns所有 RMT 通道同步启动误差 5ns。初始化关键代码// tft_rmt.c rmt_config_t rmt_conf { .clk_div 2, // APB 60MHz → RMT 30MHz (33.3ns 分辨率) .mem_block_num 1, .tx_config.loop_en false, .tx_config.carrier_en false, .tx_config.idle_level RMT_IDLE_LEVEL_HIGH, }; rmt_config(rmt_conf); rmt_driver_install(RMT_CHANNEL_0, 0, 0); // 发送单字节D0-D7 WR 脉冲 void tft_write_byte(uint8_t data) { rmt_item32_t items[10]; items[0].level0 1; items[0].duration0 1; // WR high setup for(int i0; i8; i) { items[i1].level0 (data i) 0x01; items[i1].duration0 1; } items[9].level0 0; items[9].duration0 1; // WR low pulse rmt_write_items(RMT_CHANNEL_0, items, 10, true); }4.2 轻量级图形库TFT_GFX仅实现嵌入式必需功能tft_draw_pixel(x,y,color)直接写 framebuffertft_fill_rect(x,y,w,h,color)DMA 加速填充tft_draw_string(x,y,str,font,color,bgcolor)支持 Adafruit GLCD 字体5×8 点阵tft_draw_bmp(x,y,width,height,raw_data)解码 16bpp RGB565 BMP。字体渲染优化GLCD 字体数据存储为const uint8_t font5x8[96][5]索引ch-32ASCII 32space。渲染时逐列扫描void tft_draw_char(uint16_t x, uint16_t y, char ch, uint16_t color, uint16_t bg) { const uint8_t *glyph font5x8[ch-32]; for(uint8_t col0; col5; col) { uint8_t bits glyph[col]; for(uint8_t row0; row8; row) { if(bits 0x01) tft_draw_pixel(xcol, yrow, color); else if(bg ! 0xFFFF) tft_draw_pixel(xcol, yrow, bg); bits 1; } } }5. 系统集成与 FreeRTOS 任务划分5.1 任务优先级与栈分配任务名优先级栈大小字节功能调度策略tft_refresh_task104096双缓冲切换、RMT DMA 触发portTICK_PERIOD_MS*50周期lora_task123072LoRa 状态机、MAC 帧解析事件触发DIO0 中断sensor_task82048BME280 读取I²C、温湿度计算portTICK_PERIOD_MS*2000周期ui_task92048按键检测、LED 状态更新、TFT 文本刷新portTICK_PERIOD_MS*100周期idle_task0—FreeRTOS 空闲任务—关键同步机制lora_task通过xQueueSendToBack(lora_rx_queue, pkt, 0)向ui_task发送接收数据ui_task使用xQueueReceive(lora_rx_queue, pkt, portMAX_DELAY)阻塞获取避免轮询开销tft_refresh_task与ui_task共享 framebuffer通过xSemaphoreTake(tft_mutex, portMAX_DELAY)互斥访问。5.2 低功耗协同流程典型工作周期Class A 终端sensor_task采集温湿度 →ui_task更新 TFT 显示 →lora_task构造数据帧lora_task进入LORA_STATE_TX_UP→ 关闭 TFTtft_power_off()→ RFM95W 发送发送完毕RFM95W 进入 RX 模式lora_task启动 RX1 定时器若 RX1 未收到下行则lora_task切换至 RX2 模式923.3MHz, SF10无论是否收到下行1.5s 后lora_task进入SLEEP_LORA_RX_ONLY关闭传感器与 TFT持续 RX 30s 无包 → 进入SLEEP_DEEP等待按键或 DIO0 唤醒。实测整机平均电流ActiveTXRX85mARX Only18mADeep-sleep4.2μA6. 编译与烧录指南6.1 开发环境配置# 基于 ESP-IDF v5.1.2 export IDF_PATH~/esp/esp-idf cd LoRa-Feather idf.py set-target esp32s3 idf.py build # 烧录命令需先短接 ESP32-S3 的 BOOT 按键 idf.py -p /dev/ttyUSB0 flash monitor6.2 关键 Kconfig 选项配置项值说明CONFIG_SPI_MASTER_IN_IRAMy确保 SPI ISR 在 IRAM 运行避免 Flash cache missCONFIG_FREERTOS_HZ1000FreeRTOS tick 1ms满足 LoRa 定时精度CONFIG_ESP_MAIN_TASK_STACK_SIZE8192主任务栈容纳 TFT framebuffer240×135×264.8KB需外部 PSRAMCONFIG_SPIRAM_BOOT_INITy启用 PSRAMFramebuffer 分配至 PSRAMheap_caps_malloc(..., MALLOC_CAP_SPIRAM)6.3 调试接口JTAG使用 ESP-Prog调试lora_task中断响应延迟串口日志printf()重定向至 UART0GPIO44/45波特率 115200逻辑分析仪监测 DIO0GPIO14与 TFT WRGPIO39时序验证 RX 窗口对齐。7. 故障排查与性能调优7.1 常见问题清单现象根本原因解决方案LoRa 无法 JoinRFM95W 频点校准失败手动写0x2F0x02或使用sx127x_calibrate_image()函数TFT 显示撕裂RMT DMA 缓冲未对齐确保 framebuffer 地址 32-byte 对齐uint16_t *fb heap_caps_aligned_alloc(32, 240*135*2, MALLOC_CAP_SPIRAM)按键无响应GPIO0 未启用内部下拉gpio_set_pull_mode(GPIO_NUM_0, GPIO_PULLDOWN_ONLY)Deep-sleep 唤醒失败RTC GPIO 未配置唤醒源rtc_gpio_pullup_dis(GPIO_NUM_0); rtc_gpio_pulldown_en(GPIO_NUM_0);7.2 性能边界测试最大 TX 功率RFM95W 在 915MHz 下实测 20dBm电流 120mA需外接散热片TFT 刷新率全屏 240×135 填充耗时 42msRMT DMA理论最高 23fpsLoRa 接收灵敏度SF7/BW125kHz 下 -123dBm误码率 1%符合 Semtech 标称值。项目最终交付物为可直接编译的 ESP-IDF 工程所有硬件适配细节已固化于sdkconfig.defaults与components/目录下。开发者只需替换 DevEUI/AppKey即可接入任意 LoRaWAN 网关完成端到端验证。

相关文章:

LoRa Feather固件设计:ESP32-S3多外设协同与低功耗调度

1. 项目概述“LoRa Feather”并非一个官方发布的标准化嵌入式库,而是由开发者基于 Adafruit LoRa FeatherWing(如 RFM95W/RFM96W 模块)与 ESP32-S3(特别是带 TFT 显示屏的 Adafruit Feather ESP32-S3 Reverse)硬件平台…...

别再纠结了!PLC、运动控制卡、运动控制器,5分钟帮你理清选型思路

PLC、运动控制卡与运动控制器:工程师的高效选型实战指南 当项目启动会议的倒计时开始,面对PLC、运动控制卡和运动控制器这三种技术路线,许多工程师都会陷入选择困难。这不是简单的技术对比题,而是关乎项目成败的战略决策。本文将带…...

Nano-Banana Studio惊艳效果:高分辨率(1024x1024)运动服爆炸图细节展示

Nano-Banana Studio惊艳效果:高分辨率(1024x1024)运动服爆炸图细节展示 1. 开篇:当AI遇见设计拆解 你有没有遇到过这样的情况:想要展示一件运动服的所有设计细节,却不知道从哪里开始?传统的产…...

CodeBlocks高效开发环境配置指南:从字体优化到智能编码

1. CodeBlocks开发环境基础配置 刚接触CodeBlocks时,我经常被默认的界面和功能搞得头晕眼花。经过多年实战,我发现合理的初始配置能让开发效率提升至少50%。我们先从最基础的视觉优化开始。 字体设置是影响编码舒适度的首要因素。默认的字体大小在1080p屏…...

Pixel Script Temple 为C++高性能计算项目生成优化脚本

Pixel Script Temple 为C高性能计算项目生成优化脚本 1. 高性能计算开发的痛点 在C高性能计算领域,开发者经常面临一个共同困境:明明硬件资源充足,但程序性能就是上不去。你可能也遇到过这样的情况 - 代码逻辑没问题,算法也正确…...

Ubuntu 20.04 无头服务器福音:5分钟搞定虚拟显示器,让NoMachine远程桌面丝滑如本地

Ubuntu 20.04 无头服务器虚拟显示器终极配置指南 当你面对一台没有物理显示器的Ubuntu服务器时,远程桌面连接往往会遇到各种令人抓狂的问题——黑屏、卡顿、分辨率异常。作为长期管理分布式服务器的运维工程师,我深刻理解这种困境对工作效率的影响。本文…...

无需模拟器!Windows运行安卓应用的革命性方案——APK-Installer轻量级安装工具全解析

无需模拟器!Windows运行安卓应用的革命性方案——APK-Installer轻量级安装工具全解析 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 在数字化办公与娱乐融…...

提升社区运营效率:用快马ai为openclaw网站快速生成搜索与数据看板模块

提升社区运营效率:用快马AI为OpenClaw网站快速生成搜索与数据看板模块 维护一个活跃的开源技术社区网站,比如OpenClaw中文社区,经常需要根据用户反馈快速迭代功能。最近我们社区就遇到了两个需求:一是现有的搜索功能太简单&#…...

SVM实战:从线性可分到核技巧的全面解析

1. SVM入门:从分类问题到最优超平面 第一次听说SVM时,我正被一个简单的二分类问题困扰着。手头有一组客户数据,需要根据消费习惯将他们分成两类。试过逻辑回归,效果勉强及格;用决策树又容易过拟合。直到同事推荐了SVM&…...

阿里云百炼Coding Plan 的GLM-5等模型是全参数满血版的吗?显示售罄怎么回事?

模型是满血版,无需担心 阿里云百炼 Coding Plan 中包含的 GLM-5、Qwen3.5-Plus、Kimi K2.5 等模型,均为100%的完整版模型,并非量化阉割版本。 它与按量付费模式的区别仅在于计费方式(固定月费 vs 按 Token 扣费)&…...

比特币钱包恢复工具btcrecover:从原理到实践的开源解决方案

比特币钱包恢复工具btcrecover:从原理到实践的开源解决方案 【免费下载链接】btcrecover An open source Bitcoin wallet password and seed recovery tool designed for the case where you already know most of your password/seed, but need assistance in tryi…...

GetQzonehistory终极指南:三步永久备份你的QQ空间数字记忆

GetQzonehistory终极指南:三步永久备份你的QQ空间数字记忆 【免费下载链接】GetQzonehistory 获取QQ空间发布的历史说说 项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory 你是否也曾翻看QQ空间,发现那些承载青春记忆的说说正在…...

7个关键步骤:用Meshroom实现高精度三维重建的完整指南

7个关键步骤:用Meshroom实现高精度三维重建的完整指南 【免费下载链接】Meshroom 3D Reconstruction Software 项目地址: https://gitcode.com/gh_mirrors/me/Meshroom 开源三维重建工具Meshroom凭借摄影测量实战技术,为用户提供了从二维图像到点…...

Kandinsky-5.0-I2V-Lite-5s Web工具深度解析:非聊天页,专注图生视频的生产级界面

Kandinsky-5.0-I2V-Lite-5s Web工具深度解析:非聊天页,专注图生视频的生产级界面 1. 工具概述 Kandinsky-5.0-I2V-Lite-5s是一款专为图生视频任务设计的轻量级AI模型,它通过简洁直观的Web界面,让用户能够快速将静态图片转化为动…...

集成Touchgal与快马平台,高效开发移动端富交互图片浏览组件

集成Touchgal与快马平台,高效开发移动端富交互图片浏览组件 最近在开发一个电商项目时,遇到了一个常见需求:商品详情页的图片浏览组件需要支持各种手势操作。传统的做法是从零开始编写手势识别逻辑,但这样不仅耗时,还…...

Mysql 02:集合函数(聚合函数)查询全解——COUNT/SUM/AVG/MAX/MIN 实战指南

在 MySQL 中,集合函数(也叫聚合函数) 是对一组数据进行统计计算的核心工具,常用于数据汇总、报表生成、分组统计等场景。本文将围绕图片中的 5 大核心集合函数,从语法、用法、代码示例三个维度,带你彻底掌握…...

千问3.5-27B多模态入门:图片理解支持mask区域聚焦,如‘只分析左上角区域’

千问3.5-27B多模态入门:图片理解支持mask区域聚焦,如‘只分析左上角区域’ 你是不是遇到过这种情况:给AI看一张复杂的图片,比如一张满是商品的货架,你只想让它分析左上角那个红色包装的零食,但它却把整张图…...

生成式AI系统“内容生成”合规:架构师如何避免“虚假信息”?附4个方法

生成式AI内容生成合规指南:架构师如何系统性规避虚假信息? 元数据框架 标题 生成式AI内容生成合规指南:架构师如何系统性规避虚假信息?——从理论到实践的4大核心策略 关键词 生成式AI合规, 虚假信息防范, 事实一致性, 架构设计, …...

让ai当你的git导师:用快马开发智能github问答与代码生成助手

最近在尝试学习GitHub的使用时,发现很多操作命令记不住,尤其是遇到合并冲突或者需要回退版本的时候,总是要反复查文档。于是我想,能不能做一个AI助手来帮忙?经过在InsCode(快马)平台上的一番折腾,还真做出了…...

新手福音:在快马用ai生成你的第一个notepad编程入门项目

作为一个刚接触编程的新手,我完全理解那种面对空白编辑器时的迷茫感。还记得第一次想用Notepad写代码时,光是下载安装就折腾了半天。今天分享一个超实用的方法,用InsCode(快马)平台就能一键生成完整的入门指南,把下载、安装、写第…...

PROJECT MOGFACE自动化办公助手:集成Python脚本处理Excel与生成报告

PROJECT MOGFACE自动化办公助手:告别重复劳动,让报告自己“写”自己 你是不是也受够了每周、每月那些格式固定的数据报告?从一堆Excel表格里复制粘贴数据,再绞尽脑汁组织语言,最后排版成一份像样的文档。这个过程枯燥…...

RWKV7-1.5B-g1a部署教程:CSDN平台外网域名(gpu-guyeohq1so-7860)配置要点

RWKV7-1.5B-g1a部署教程:CSDN平台外网域名(gpu-guyeohq1so-7860)配置要点 1. 模型简介 rwkv7-1.5B-g1a是基于RWKV-7架构的多语言文本生成模型,特别适合以下应用场景: 基础问答文案续写简短总结轻量中文对话 2. 环境…...

Qwen2.5-14B-Instruct开源大模型实战:像素剧本圣殿8-Bit UI部署详解

Qwen2.5-14B-Instruct开源大模型实战:像素剧本圣殿8-Bit UI部署详解 1. 项目概览 像素剧本圣殿(Pixel Script Temple)是一款基于Qwen2.5-14B-Instruct大模型深度微调的专业剧本创作工具。这个独特的创作环境将强大的AI推理能力与复古8-Bit视…...

使用Tableau Public

一、实验准备 官网:探索 | Tableau Public 二、实验步骤 (一)数据获取与导入 打开 Tableau Public,点击左侧 **“获取数据”** → 选择 **“示例数据集”**。在示例数据集列表中选个顺眼的。数据加载后,在左侧 “数…...

AXOrderBook:解密A股订单簿重建与FPGA硬件加速的深度技术方案

AXOrderBook:解密A股订单簿重建与FPGA硬件加速的深度技术方案 【免费下载链接】AXOrderBook A股订单簿工具,使用逐笔行情进行订单簿重建、千档快照发布、各档委托队列展示等,包括python模型和FPGA HLS实现。 项目地址: https://gitcode.com…...

如何快速突破iOS限制:终极降级完全手册

如何快速突破iOS限制:终极降级完全手册 【免费下载链接】downr1n downgrade tethered checkm8 idevices ios 14, 15. 项目地址: https://gitcode.com/gh_mirrors/do/downr1n 你是否曾想过让旧款iPhone重获新生?是否对苹果系统的版本限制感到困扰&…...

别再只用Whisper了!WhisperX + Python 实战:如何为3分钟视频批量ASR搭建高效处理流水线

WhisperX Python 实战:构建高吞吐量语音识别流水线的工程实践 在音视频内容爆炸式增长的时代,语音识别技术已成为内容生产、知识管理、数字营销等领域的基础设施。当处理规模从单个文件扩展到数百小时的音视频素材时,传统单次处理模式显露出…...

【喜报】义翘神州再获CNAS认可,全面对标2025版药典新标准

义翘神州生物安全检测实验室近日成功通过中国合格评定国家认可委员会(CNAS)的扩项评审及定期监督评审,并已完成全部能力附表更新!这标志着实验室技术能力与质量管理体系持续符合ISO/IEC 17025:2017国际标准的严苛要求,…...

别再只用labelme了!用ENVI 5.3的ROI工具给遥感影像打标签,效率翻倍

遥感影像标注革命:ENVI 5.3 ROI工具如何让深度学习标签制作效率提升300% 当无人机航拍的高清影像铺满整个屏幕,标注员的手指在鼠标和键盘间机械重复着点击、拖拽、保存的动作——这是许多刚接触遥感影像深度学习的研究者再熟悉不过的场景。传统标注工具在…...

基于Ascend 950的Cube编程

直播回放链接:基于下一代硬件的Cube编程_哔哩哔哩_bilibili...