SH_MLCD_J:Sharp HR-TFT内存液晶驱动库详解

news2026/4/6 11:17:49
1. 项目概述SH_MLCD_J 是一款专为驱动 Sharp 公司 HR-TFT 系列单色内存液晶显示屏Monochrome Memory LCD设计的嵌入式底层图形库。该库被广泛应用于秋月电子等国内元器件分销商所售的 SHARP 原厂模组典型型号包括 LS013B7DH03、LS027B7DH01、LS032B7DD02 等。与常规 TFT 或 STN 液晶不同HR-TFT 属于“内存型”Memory-in-Pixel, MiP显示技术每个像素单元内置双稳态存储结构仅在内容变更时需刷新刷新后无需持续时钟驱动或背光维持静态功耗低至纳安级nA且断电后图像可保持数小时至数天。这一物理特性决定了其典型应用场景——超低功耗便携设备电子价签ESL、智能工牌、医疗记录卡、环境监测终端、电池供电的工业 HMI 等。SH_MLCD_J 的核心价值在于绕过专用 COG 驱动 IC 的封闭协议直接通过 MCU 的 GPIO 或硬件外设如 SPI完成像素数据的并行/串行写入与波形控制从而实现对显示内容的完全自主掌控避免依赖厂商提供的二进制库或复杂时序控制器。项目名称中的 “J” 明确指向其对日文显示能力的原生支持库内嵌了经过裁剪与优化的 JIS X 0208 标准汉字字模含平假名、片假名及常用汉字采用 12×16 和 16×16 点阵格式并提供紧凑的 Huffman 编码压缩方案以缓解 Flash 资源压力。但需注意完整字库约 3000 字符占用 Flash 约 120–180 KBRAM 占用约 4–8 KB用于帧缓冲与解码缓存对 STM32F030、nRF52810 等资源受限平台构成挑战。工程实践中常需按需裁剪字集或启用动态加载机制。2. 硬件接口与驱动原理2.1 HR-TFT 显示器电气特性与通信协议HR-TFT 模组虽标称“TFT”实则为非晶硅a-Si基板上的双稳态液晶其驱动逻辑与传统 TFT 截然不同。其核心接口信号如下信号名方向说明VCC/VDD输入主电源通常 2.8–3.3 VVCOM输入公共电极电压由内部电荷泵生成典型值 ±15 VSCLK输入串行时钟SPI 模式或并行锁存时钟Parallel 模式SDIN/D[7:0]输入串行数据线SPI或 8 位并行数据总线EXTCOMIN输入外部 COM 切换控制关键决定帧极性DISP输入显示使能高电平有效拉低则全黑VBD输出电池电压检测部分型号BS输入总线选择08-bit parallel, 1SPI关键驱动约束无标准 SPI 模式HR-TFT 不支持连续读写或多字节自动递增地址。每次写入必须包含完整的“命令数据”帧且命令字节固定为0x00写入显示数据或0x01写入系统寄存器。COM 极性切换EXTCOMIN这是 HR-TFT 正确显示的绝对前提。每写入一整行或一整帧数据后必须在SCLK低电平时翻转EXTCOMIN电平。若忽略此操作将导致严重残影、对比度下降甚至无法成像。SH_MLCD_J 将此操作封装为mlcd_extcom_toggle()并在所有绘图函数末尾强制调用。电压时序敏感VCOM电平切换需严格匹配SCLK边沿。典型要求为EXTCOMIN变化必须发生在SCLK下降沿之后、下一个上升沿之前且保持时间 ≥ 1 μs。库中通过__NOP()插入精确延时或使用硬件定时器触发 GPIO 翻转。2.2 SH_MLCD_J 支持的两种物理连接模式并行模式8-bit Parallel Interface适用于具备丰富 GPIO 的 MCU如 STM32F4/F7/H7。数据总线D[7:0]直接映射到 MCU 的 8 个 GPIO 引脚SCLK对应WR写使能DISP对应CS片选EXTCOMIN单独引出。优势是刷新速度快单行写入约 20–50 μs适合动画或快速更新场景。示例初始化代码// STM32 HAL 库配置以 GPIOB 为例 GPIO_InitTypeDef GPIO_InitStruct {0}; __HAL_RCC_GPIOB_CLK_ENABLE(); GPIO_InitStruct.Pin GPIO_PIN_0 | GPIO_PIN_1 | GPIO_PIN_2 | GPIO_PIN_3 | GPIO_PIN_4 | GPIO_PIN_5 | GPIO_PIN_6 | GPIO_PIN_7; GPIO_InitStruct.Mode GPIO_MODE_OUTPUT_PP; GPIO_InitStruct.Pull GPIO_NOPULL; GPIO_InitStruct.Speed GPIO_SPEED_FREQ_HIGH; HAL_GPIO_Init(GPIOB, GPIO_InitStruct); // 定义宏简化操作 #define MLCD_PARALLEL_WRITE(data) do { \ HAL_GPIO_WritePin(GPIOB, GPIO_PIN_0, (data 0x01) ? GPIO_PIN_SET : GPIO_PIN_RESET); \ HAL_GPIO_WritePin(GPIOB, GPIO_PIN_1, (data 0x02) ? GPIO_PIN_SET : GPIO_PIN_RESET); \ /* ... 其余6位 */ \ HAL_GPIO_WritePin(GPIOB, GPIO_PIN_7, (data 0x80) ? GPIO_PIN_SET : GPIO_PIN_RESET); \ } while(0) #define MLCD_PARALLEL_WR_LOW() HAL_GPIO_WritePin(GPIOB, GPIO_PIN_8, GPIO_PIN_RESET) // WR on PB8 #define MLCD_PARALLEL_WR_HIGH() HAL_GPIO_WritePin(GPIOB, GPIO_PIN_8, GPIO_PIN_SET)串行模式3-wire SPI-like Interface适用于 GPIO 资源紧张的 MCU如 STM32G0、nRF52。仅需SCLK、SDIN、EXTCOMIN三根线DISP可常高。此时SCLK承担双重角色既是数据移位时钟也是行锁存同步信号。库通过SPI_HandleTypeDef实现但禁用 DMA 和中断采用阻塞式HAL_SPI_Transmit()确保时序可控。关键配置SPI_HandleTypeDef hspi1; hspi1.Instance SPI1; hspi1.Init.Mode SPI_MODE_MASTER; hspi1.Init.Direction SPI_DIRECTION_2LINES; hspi1.Init.DataSize SPI_DATASIZE_8BIT; // 必须为8位 hspi1.Init.CLKPolarity SPI_POLARITY_LOW; // CPOL0 hspi1.Init.CLKPhase SPI_PHASE_1EDGE; // CPHA0 hspi1.Init.NSS SPI_NSS_SOFT; hspi1.Init.BaudRatePrescaler SPI_BAUDRATEPRESCALER_4; // 根据 MCU 主频调整确保 SCLK ≤ 10 MHz hspi1.Init.FirstBit SPI_FIRSTBIT_MSB; HAL_SPI_Init(hspi1); // 写入一字节先发命令 0x00再发数据 uint8_t tx_buf[2] {0x00, pixel_data}; HAL_SPI_Transmit(hspi1, tx_buf, 2, HAL_MAX_DELAY); mlcd_extcom_toggle(); // 立即翻转 EXTCOMIN3. 核心 API 接口详解SH_MLCD_J 提供面向对象风格的 C 接口所有函数均以mlcd_为前缀状态机管理集中于全局结构体MLCD_HandleTypeDef。以下为关键 API 的签名、参数说明与工程实践要点。3.1 初始化与基础控制函数参数说明工程要点mlcd_init(hlcd)hlcd: 指向已填充的MLCD_HandleTypeDef结构体指针。需预先设置hlcd-InstanceSPI 或 NULL、hlcd-IOGPIO 端口/引脚定义、hlcd-Width/hlcd-Height如 128×128、hlcd-BusModeMLCD_BUS_PARALLEL或MLCD_BUS_SPI必须在HAL_Init()后、任何绘图前调用。若使用 SPI 模式需确保hspi已HAL_SPI_Init()若并行模式需手动HAL_GPIO_Init()。mlcd_display_on(hlcd)hlcd: 同上拉高DISP引脚。调用后屏幕立即显示当前帧缓冲内容。首次上电后必须调用。mlcd_display_off(hlcd)hlcd: 同上拉低DISP引脚。屏幕变全黑但帧缓冲数据保留。功耗降至最低。mlcd_clear(hlcd, color)hlcd: 同上color:MLCD_COLOR_WHITE(0x00) 或MLCD_COLOR_BLACK(0xFF)清空整个帧缓冲区RAM不触发物理刷新。color0x00表示白底像素关0xFF表示黑底像素开。3.2 图形绘制 API函数参数说明工程要点mlcd_draw_pixel(hlcd, x, y, color)x,y: 像素坐标0≤xWidth, 0≤yHeightcolor: 同上最底层原子操作。直接修改帧缓冲区对应 bit。因 HR-TFT 为单色color仅表示置 0 或置 1。注意x为水平方向列y为垂直方向行符合 LCD 坐标系惯例。mlcd_draw_line(hlcd, x0, y0, x1, y1, color)(x0,y0)到(x1,y1)的线段端点使用 Bresenham 算法高效无浮点。适用于绘制 UI 边框、刻度线。mlcd_draw_rect(hlcd, x, y, w, h, color, fill)(x,y): 左上角w,h: 宽高fill: 是否填充fill1时调用mlcd_fill_rect()内部采用逐行memset()优化比循环调用draw_pixel快 10 倍以上。mlcd_draw_circle(hlcd, x0, y0, r, color, fill)(x0,y0): 圆心r: 半径使用中点圆算法仅计算 1/8 圆弧通过对称性绘制全部。fill为真时内部调用mlcd_fill_circle_segment()按扫描线填充。3.3 文字渲染 API含日文字库文字渲染是 SH_MLCD_J 的核心差异化功能。库采用两级架构字模数据层Flash 中的压缩字库 运行时解码层RAM 中的解码缓冲。关键 API函数参数说明工程要点mlcd_set_font(hlcd, font_id)font_id:MLCD_FONT_12X16_JP或MLCD_FONT_16X16_JP设置当前字体。12×16适合小屏如 96×9616×16提升可读性但降低字符密度。切换字体不改变帧缓冲仅影响后续draw_string行为。mlcd_get_char_width(hlcd, ch)ch: UTF-8 编码的单个字符ASCII 或 UTF-8 多字节必须调用HR-TFT 字库为变宽设计ASCII 字符占 6–8 pixel 宽日文字符固定 12 或 16 pixel 宽。此函数返回实际宽度用于计算字符串总长和光标位置。mlcd_draw_char(hlcd, x, y, ch, color)(x,y): 字符左上角ch: UTF-8 字符内部流程① 调用mlcd_utf8_to_jis()将 UTF-8 转为 JIS X 0208 码点② 查表定位字模在 Flash 中的偏移③ 解压Huffman到 RAM 缓冲④ 逐行memcpy()到帧缓冲对应位置。y为字符基线baseline非顶部。mlcd_draw_string(hlcd, x, y, str, color)str: 以\0结尾的 UTF-8 字符串封装draw_char的循环调用。关键优化预计算整串宽度避免重复调用get_char_width支持\n换行y自动增加font_height。日文字库组织细节字模存储于const uint8_t mlcd_jp_font_12x16[]数组位于 Flash。采用 Huffman 编码高频字符如「の」「は」「が」用短码2–4 bit低频字如生僻汉字用长码12–16 bit整体压缩率约 40%。解码使用查表法static const uint16_t huffman_table[]存储码长与对应 JIS 码解码速度 50 kchar/sCortex-M4 80 MHz。4. 帧缓冲管理与内存优化策略HR-TFT 的“内存型”本质要求 MCU 维护一份与屏幕分辨率完全一致的帧缓冲Frame Buffer这是其区别于“流式”LCD如 ILI9341的根本特征。SH_MLCD_J 的帧缓冲设计直面资源约束提供多种优化路径。4.1 帧缓冲布局与访问模式假设屏幕分辨率为W × H如 LS013B7DH03 为 144×168则所需最小缓冲大小为(W × H) / 8字节bit-mapped。SH_MLCD_J 默认采用行主序Row-major布局// 帧缓冲定义在 .bss 段 uint8_t mlcd_frame_buffer[MLCD_WIDTH * MLCD_HEIGHT / 8]; // 访问第 (x, y) 像素的 bit #define MLCD_GET_PIXEL(x, y) \ (mlcd_frame_buffer[((y) * MLCD_WIDTH (x)) / 8] (1 (7 - ((x) % 8)))) #define MLCD_SET_PIXEL(x, y, val) do { \ if (val) \ mlcd_frame_buffer[((y) * MLCD_WIDTH (x)) / 8] | (1 (7 - ((x) % 8))); \ else \ mlcd_frame_buffer[((y) * MLCD_WIDTH (x)) / 8] ~(1 (7 - ((x) % 8))); \ } while(0)此布局利于draw_line、draw_rect等行操作CPU cache 友好。但draw_circle等随机访问性能略低。4.2 针对小资源 MCU 的裁剪方案当 Flash 256 KB、RAM 32 KB 时如 STM32F030F4需主动裁剪字库精简修改mlcd_jp_font.c注释掉#define MLCD_JP_FONT_FULL启用#define MLCD_JP_FONT_BASIC。后者仅包含 1006 个 JIS Level-1 汉字覆盖 99% 日常文本Flash 占用降至 ~60 KB。禁用高级绘图在mlcd_conf.h中定义#define MLCD_DISABLE_CIRCLE和#define MLCD_DISABLE_LINE移除对应函数代码节省 ~1.5 KB Flash。动态缓冲分配放弃全局静态缓冲改用malloc()在堆中申请。需确保heap_size足够如 144×168/8 3024 bytes并启用HEAP_SIZE宏。优点是 RAM 可复用缺点是引入 malloc 开销与碎片风险。差分刷新Delta Update库未内置但可扩展维护两份缓冲old_fb和new_fbmlcd_refresh()前执行memcmp(old_fb, new_fb, size)仅传输变化的行。对电子价签等静态内容更新场景带宽节省可达 90%。5. FreeRTOS 集成与多任务安全在 FreeRTOS 环境下使用 SH_MLCD_J必须解决帧缓冲互斥访问与长时序操作抢占两大问题。库本身不依赖 RTOS但提供了安全集成范式。5.1 临界区保护信号量 vs 互斥量推荐使用Mutex互斥量而非 Binary Semaphore因其具备优先级继承可防止优先级反转。创建一个lcd_mutexSemaphoreHandle_t lcd_mutex; void lcd_task_init(void) { lcd_mutex xSemaphoreCreateMutex(); configASSERT(lcd_mutex); } // 在任何绘图函数前获取 BaseType_t result xSemaphoreTake(lcd_mutex, portMAX_DELAY); if (result pdTRUE) { mlcd_draw_string(hlcd, 10, 20, Hello 世界, MLCD_COLOR_BLACK); mlcd_refresh(hlcd); // 物理刷新 xSemaphoreGive(lcd_mutex); }为何不用临界区taskENTER_CRITICALHR-TFT 刷新一帧144×168在 SPI 模式下耗时约 150–300 ms远超临界区允许的微秒级。长时间关中断会破坏 RTOS 调度导致vTaskDelay()失效、看门狗误触发。5.2 刷新任务Refresh Task设计最佳实践是分离“内容生成”与“物理刷新”UI 任务负责业务逻辑、计算新内容、调用mlcd_draw_*修改帧缓冲然后xQueueSend()通知刷新任务。Refresh Task低优先级xQueueReceive()等待信号收到后执行mlcd_refresh()。此设计确保高优先级任务不被长时序阻塞。QueueHandle_t refresh_queue; void refresh_task(void *pvParameters) { TickType_t xLastWakeTime xTaskGetTickCount(); for(;;) { // 等待刷新请求或周期唤醒如每5秒 if (xQueueReceive(refresh_queue, NULL, 5000 / portTICK_PERIOD_MS) pdTRUE || (xTaskGetTickCount() - xLastWakeTime) 5000 / portTICK_PERIOD_MS) { mlcd_refresh(hlcd); // 执行耗时的物理刷新 xLastWakeTime xTaskGetTickCount(); } } }6. 实际项目调试经验与常见问题基于在电子价签ESL项目中的落地经验总结高频问题与解决方案6.1 屏幕全黑/无反应检查DISP引脚电平万用表确认是否为高电平。常见错误HAL_GPIO_WritePin()参数传反GPIO_PIN_SET/RESET混淆。验证EXTCOMIN时序用示波器抓取SCLK与EXTCOMIN。若EXTCOMIN翻转滞后于SCLK下降沿 1 μs需在mlcd_extcom_toggle()中增加__NOP()或改用定时器输出比较模式。确认VCOM电压用高压探头测量VCOM引脚应为 ±15 V。若为 0 V检查模组是否损坏或 MCU 未正确初始化电荷泵部分模组需特定序列启动。6.2 文字显示乱码□□□UTF-8 解码失败确认字符串字面量声明为const char* str u8こんにちは;而非こんにちは编译器可能按本地编码处理。字库未链接检查ld脚本是否将mlcd_jp_font.o加入SECTIONS或arm-none-eabi-gcc是否遗漏-lsh_mlcd_j。6.3 刷新后残留重影EXTCOMIN未在每行后翻转检查mlcd_draw_line()等函数是否遗漏mlcd_extcom_toggle()调用。库中所有绘图函数末尾均有此调用但自定义函数需手动添加。刷新频率过高HR-TFT 推荐最大刷新率为 1 Hz。频繁调用mlcd_refresh()会导致液晶材料疲劳出现永久性残影。应在应用层加入防抖逻辑如xTaskDelay(1000)。6.4 低功耗模式下显示异常GPIO 状态保持进入 Stop Mode 前确保DISP、EXTCOMIN等关键引脚配置为GPIO_MODE_ANALOG或GPIO_MODE_INPUT避免漏电流影响VCOM。唤醒后重初始化从 Stop Mode 唤醒后SCLK可能失步。务必调用mlcd_init()重新配置时序再mlcd_refresh()。7. 性能基准与选型建议在 STM32F407VG168 MHz平台上实测性能SPI 模式SCLK8 MHz操作分辨率耗时说明mlcd_clear()144×1681.2 msmemset()优化版本mlcd_draw_string(ABC)12×16 字体3.8 ms含 UTF-8 解码与字模拷贝mlcd_draw_string(日本語)12×16 字体12.5 ms3 个日文字符解码开销显著mlcd_refresh()144×168280 ms物理刷新整屏SPI 传输 3024 字节MCU 选型建议首选STM32F4/F7/H7 系列Cortex-M4/M7主频 ≥ 100 MHz具备充足 RAM≥64 KB与 Flash≥512 KB可流畅运行全功能。次选STM32G4/G0 系列Cortex-M4/M0需启用字库裁剪与动态缓冲牺牲部分日文支持换取资源。慎选Cortex-M0如 KL25ZFlash/RAM 极度紧张建议仅用于 ASCII 文本显示彻底移除日文字库。SH_MLCD_J 的价值在于将 Sharp HR-TFT 这一“低功耗显示明珠”的控制权从黑盒驱动芯片手中夺回交还给嵌入式工程师。它不是简单的封装而是一套深谙双稳态液晶物理特性的工程实践结晶——每一行代码都回应着EXTCOMIN的时序苛求每一个字模都承载着对日语信息密度的尊重。在电池寿命以年计的物联网终端里它让每一次像素的翻转都成为对能效边界的无声致敬。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2483948.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpringBoot-17-MyBatis动态SQL标签之常用标签

文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…

wordpress后台更新后 前端没变化的解决方法

使用siteground主机的wordpress网站,会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后,网站没有变化的情况。 不熟悉siteground主机的新手,遇到这个问题,就很抓狂,明明是哪都没操作错误&#x…

网络编程(Modbus进阶)

思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…

UE5 学习系列(二)用户操作界面及介绍

这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…

IDEA运行Tomcat出现乱码问题解决汇总

最近正值期末周,有很多同学在写期末Java web作业时,运行tomcat出现乱码问题,经过多次解决与研究,我做了如下整理: 原因: IDEA本身编码与tomcat的编码与Windows编码不同导致,Windows 系统控制台…

利用最小二乘法找圆心和半径

#include <iostream> #include <vector> #include <cmath> #include <Eigen/Dense> // 需安装Eigen库用于矩阵运算 // 定义点结构 struct Point { double x, y; Point(double x_, double y_) : x(x_), y(y_) {} }; // 最小二乘法求圆心和半径 …

使用docker在3台服务器上搭建基于redis 6.x的一主两从三台均是哨兵模式

一、环境及版本说明 如果服务器已经安装了docker,则忽略此步骤,如果没有安装,则可以按照一下方式安装: 1. 在线安装(有互联网环境): 请看我这篇文章 传送阵>> 点我查看 2. 离线安装(内网环境):请看我这篇文章 传送阵>> 点我查看 说明&#xff1a;假设每台服务器已…

XML Group端口详解

在XML数据映射过程中&#xff0c;经常需要对数据进行分组聚合操作。例如&#xff0c;当处理包含多个物料明细的XML文件时&#xff0c;可能需要将相同物料号的明细归为一组&#xff0c;或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码&#xff0c;增加了开…

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造&#xff0c;完美适配AGV和无人叉车。同时&#xff0c;集成以太网与语音合成技术&#xff0c;为各类高级系统&#xff08;如MES、调度系统、库位管理、立库等&#xff09;提供高效便捷的语音交互体验。 L…

(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)

题目&#xff1a;3442. 奇偶频次间的最大差值 I 思路 &#xff1a;哈希&#xff0c;时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况&#xff0c;哈希表这里用数组即可实现。 C版本&#xff1a; class Solution { public:int maxDifference(string s) {int a[26]…

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型

摘要 拍照搜题系统采用“三层管道&#xff08;多模态 OCR → 语义检索 → 答案渲染&#xff09;、两级检索&#xff08;倒排 BM25 向量 HNSW&#xff09;并以大语言模型兜底”的整体框架&#xff1a; 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后&#xff0c;分别用…

【Axure高保真原型】引导弹窗

今天和大家中分享引导弹窗的原型模板&#xff0c;载入页面后&#xff0c;会显示引导弹窗&#xff0c;适用于引导用户使用页面&#xff0c;点击完成后&#xff0c;会显示下一个引导弹窗&#xff0c;直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…

接口测试中缓存处理策略

在接口测试中&#xff0c;缓存处理策略是一个关键环节&#xff0c;直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性&#xff0c;避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明&#xff1a; 一、缓存处理的核…

龙虎榜——20250610

上证指数放量收阴线&#xff0c;个股多数下跌&#xff0c;盘中受消息影响大幅波动。 深证指数放量收阴线形成顶分型&#xff0c;指数短线有调整的需求&#xff0c;大概需要一两天。 2025年6月10日龙虎榜行业方向分析 1. 金融科技 代表标的&#xff1a;御银股份、雄帝科技 驱动…

观成科技:隐蔽隧道工具Ligolo-ng加密流量分析

1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具&#xff0c;该工具基于TUN接口实现其功能&#xff0c;利用反向TCP/TLS连接建立一条隐蔽的通信信道&#xff0c;支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式&#xff0c;适应复杂网…

铭豹扩展坞 USB转网口 突然无法识别解决方法

当 USB 转网口扩展坞在一台笔记本上无法识别,但在其他电脑上正常工作时,问题通常出在笔记本自身或其与扩展坞的兼容性上。以下是系统化的定位思路和排查步骤,帮助你快速找到故障原因: 背景: 一个M-pard(铭豹)扩展坞的网卡突然无法识别了,扩展出来的三个USB接口正常。…

未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?

编辑&#xff1a;陈萍萍的公主一点人工一点智能 未来机器人的大脑&#xff1a;如何用神经网络模拟器实现更智能的决策&#xff1f;RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战&#xff0c;在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…

Linux应用开发之网络套接字编程(实例篇)

服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …

华为云AI开发平台ModelArts

华为云ModelArts&#xff1a;重塑AI开发流程的“智能引擎”与“创新加速器”&#xff01; 在人工智能浪潮席卷全球的2025年&#xff0c;企业拥抱AI的意愿空前高涨&#xff0c;但技术门槛高、流程复杂、资源投入巨大的现实&#xff0c;却让许多创新构想止步于实验室。数据科学家…

深度学习在微纳光子学中的应用

深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向&#xff1a; 逆向设计 通过神经网络快速预测微纳结构的光学响应&#xff0c;替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…