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

ESP-KeyBoard:基于 ESP32-S3 的三模客制化机械键盘

概述

在这个充满挑战与机遇的数字化时代,键盘已经成为我们日常学习、工作、娱乐生活必不可少的设备。而在众多键盘中,机械键盘,以其独特的触感、清脆的敲击音和经久耐用的特性,已经成为众多游戏玩家和电子工程师的首选。本文将为您介绍 ESP-KeyBoard,一款基于 ESP32-S3 系列模组开发的高性能、高性价比的机械键盘,并对其特性、功能以及软硬件设计进行深入讲解。

项目介绍

ESP-KeyBoard 是一款基于 ESP32-S3 系列模组开发的高性能、高性价比的三模客制化机械键盘。它支持 USB低功耗蓝牙 (BLE)2.4GHz 无线输出 三种工作模式。采用 75 配列键盘(即 75% 的键盘布局),总共 82 个按键,支持 全键无冲热插拔。每个按键都配备了一个独立的 RGB LED,支持 40+ 种的本地灯效控制,以及支持 WINDOWS11 神光同步功能。除此之外,ESP-KeyBoard 配备了 4000mA 的锂电池,并支持多种低功耗的工作模式,可在无线工作模式下,大幅延长电池的使用时间。

如下图所示,从外观上来看,ESP-KeyBoard 在保持整体结构简洁的同时,处处包含着对细节的把控。下面本文将逐步讲解如何轻松地定制一款属于你的 ESP-KeyBoard。

在这里插入图片描述


视频展示:

ESP32-S3 三模机械键盘 1.1 升级版

供电方式

  • USB 工作模式下,通过 USB 接口进行供电;
  • 低功耗蓝牙 (BLE)2.4GHz 无线输出模式下,通过 4000mA 锂电池进行供电。

功能演示与方案优势:

1. 个性化的键盘组装

ESP-KeyBoard 以其创新的键轴设计,提供了前所未有的个性化体验。键盘的键轴支持热插拔功能,意味着开发者无需关闭电源或拆卸键盘,就能在带电模式下轻松更换键轴或键帽,让键盘瞬间焕发新活力。这种设计还极大地方便了日常维护和个性化定制,无论客户追求具有独特手感的机械轴,还是偏好安静免打扰的静音轴,都能根据个人喜好随时调整 ESP-KeyBoard 的键盘配置,享受定制化键盘的乐趣。

在这里插入图片描述

2. 低延迟的输出速率

ESP-KeyBoard 使用矩阵键盘扫描方式,支持高达 20KHz 的软件扫描速率,同时可以做到全键无冲,对所有按键进行精准识别,即使是远距离打字也可以做到低延迟的稳定输出。

  • 在 USB 和 2.4GHz 无线输出工作模式下可达 1KHz 的回报率,低至 1ms 的延时。
  • 在 BLE 工作模式下可达 125Hz 回报率

在这里插入图片描述

3. 自定义的键盘灯效

当前市场上各品牌 RGB 外设普遍配备了专属的灯效控制软件,这导致了不同外设间 RGB 灯效难以实现统一。而 ESP-KeyBoard 不仅内置了超过 40 种本地灯效控制选项,还兼容 Windows 11 的神光同步技术,实现了与各类外设的灯效同步功能。

  • 本地灯效控制
    在这里插入图片描述

  • Windows11 动态等效控制
    在这里插入图片描述

4. 多种低功耗工作模式

在硬件设计上,ESP-KeyBoard 优化了 LED 灯组的电源管理电路,增加了 WS2812 LED 组的总功率控制,允许在使用锂电池供电时完全断开 WS2812 灯带的电源,降低待机电流约 40mA,实现了更低的能耗和更长的电池续航。

ESP-KeyBoard 采用高效的矩阵键盘扫描技术,仅在按键操作时进行全键盘扫描,而在键盘处于空闲状态时自动保持 浅睡眠模式(Light-Sleep),并支持通过任意按键瞬间唤醒键盘,确保在维持低能耗的同时,能够迅速响应用户的输入,以支持无线输出模式下的低功耗运行。

在这里插入图片描述

除此之外,ESP-KeyBoard 在硬件上增加了 32.768KHz 的外部晶振,这一精准时钟源专为低功耗蓝牙 (BLE) 工作模式而设计,显著提升了锂电池的续航时间。该设计允许键盘在保持 BLE 连接的同时,进入浅睡眠模式 (Light-Sleep),将待机电流降至 2mA,从而实现更高的能效。

5. 高度自定义

ESP-KeyBoard 采用分体式硬件设计,主控板与键盘 PCB 之间通过连接器相连,可方便用户自由更换主控板。

  • 如果想在键盘上配备额外的扩展副屏,只需升级到性能更强的主控 MCU。这不仅能够满足附加显示功能的需求,还能在此基础上进一步自定义更丰富的外观主题;
  • 若追求更优的能效比,可以选择升级至功耗更低的 ESP32-H 系列芯片,以满足不同的使用需求。

这种设计不仅提升了键盘的使用灵活性,还有效降低未来更新迭代的成本,可以轻松实现高度自定义的客制化键盘。

在这里插入图片描述

6. 舒适的敲击体验

ESP-KeyBoard 键盘无空仓,以其坚实的内部结构有效减少振动和噪音,而 PCB 板的悬浮减震设计则减轻了按键触底时的冲击。键盘整体结构采用四周固定、中间悬空的方式,使得触底感更为柔和且富有弹性,提供舒适的敲击体验,有效减轻长时间使用中的手部疲劳。
在这里插入图片描述


硬件设计

ESP-KeyBoard 采用分体式硬件设计,主控板与键盘 PCB 之间通过连接器相连,方便用户自由更换主控板,轻松实现高度自定义的同时降低了键盘更新迭代成本。ESP-KeyBoard 的硬件系统由以下部分组成:

ESP-KeyBoard 主板硬件设计

在这里插入图片描述

  • 主控 MCU : ESP32-S3- WROOM-1- N4 模组

  • 32KHz 晶振:基于 ESP32-S3 主控芯片增加了外部 32.768KHz 晶振,以支持 ESP-KeyBoard 在使用 BLE (低功耗蓝牙)工作模式下进入浅睡眠(Light Sleep)模式来降低待机功耗,此时待机电流约 2mA

  • TYPE-C(USB Type-C):采用 USBC200 芯片与 ESP32-S3 芯片的 USB (GPIO19GPIO20)接口直连,为 ESP-KeyBoard 产品提供一个 USB Type-C 端口,支持 ESP-KeyBoard 通过 USB Type-C 线连接到电脑,并为 ESP-KeyBoard 供电。

  • KEY(按钮):使用一个简单的物理按钮电路,连接到 ESP32-S3 芯片的 GPIO0CHIP_PU(EN)管脚,用于ESP-KeyBoard 产品硬件复位和手动切换 ESP32-S3 的启动模式 (SPI Flash BootDownload Boot)。如果是量产产品,可以省去按键电路。

  • BAT CHG (电池充电): 基于 ME4054BM5 芯片,使用 BAT 引脚连接到电池正极,用于控制电池的充放电,并具有充电状态指示灯来提醒实时电量情况,以确保为锂电池提供安全稳定的充电功能。

  • VBAT->3V3(电源管理):使用 TPS61033 电池管理芯片将电池电压 VBAT(通常在3.0V~4.2V 之间变化)转换为稳定的 3.3V 电压,给电路提供稳定的电压环境。同时使用 ESP32-S3 的 GPIO2 来检测电池电量,并支持使用灯光效果来提醒实时电量情况。

  • CONNECTOR(外部连接器):使用一个 30 针的外部链接器用于主板与子板建立连接,以实现主控板与键盘 PCB 的硬件分体设计。

在这里插入图片描述

ESP-KeyBoard 子板硬件设计

ESP-KeyBoard 使用 75 配列键盘(即 75% 的键盘布局),总共 82 个按键。并为每个按键都串联一个二极管,可以确保按下按键时电流只朝一个方向流动,以防止“重影”并更好地支持 N 键翻转。同时使用成本更低的矩阵键盘扫描方式(行输出列输入),最大可达 20KHz 扫描频率。通过使能按键中断,可以实时的检测按键是否按下,从而决定键盘是否工作,以支持极低的待机功耗。

在这里插入图片描述
另外,使用 ESP32-S3 的 六个 RTC GPIO (GPIO38、GPIO39、GPIO40、GPIO45 、GPIO47、GPIO48) 作为唤醒源,分别连接到矩阵键盘的 ROW0~ROW5 ,以此实现通过任意按键唤醒 ESP-KeyBoard 的待机模式,确保键盘仅在按键按下时工作,从而降低功耗。

除此之外,ESP-KeyBorad 为每个按键配备了一个独立的 WS2812 RGB LED,支持通过单个数据引脚控制每个 LED 的颜色和亮度。这允许用户自定义键盘的整体背光效果,并支持在使用锂电池供电时完全断开 WS2812 电源,将待机电流降低约 40mA

在这里插入图片描述

ESP-KeyBoard 完整的硬件开源资料可在【嘉立创-乐鑫小铁匠】ESP-KeyBoard 获取,更多 ESP 硬件设计说明请参考 《ESP 硬件设计指南》 。

软件设计

ESP-KeyBoard 使用了 ESP32-S3 的 USB 特性、BLE 特性、RMT 外设接口以及多个通用 GPIO 来实现全功能。完整应用代码可参考 “esp-iot-solution/examples/keyboard”示例,此示例支持多种组合模式:

连接模式本地灯效WIN11 灯效全键无冲回报率
USB1 KHz
BLE×125 Hz
2.4 GHz (暂未开源代码)×1 KHz

【技术解析】

  • Windwos11 神光同步:在 Windwos11 上支持基于标准 HID 的灯效控制,设备只需在固件中增加 HID 动态灯效的功能,即可以直接在 Windows 系统内直接控制 ESP-KeyBoard 灯光效果,也可以与其他外设进行灯效同步。在此技术上 ESP32-S3 通过 BLE HID Device 和 USB HID Device 特性来实现。

    • USB HID 应用例程可参考:esp-idf/examples/peripherals/usb/device/tusb_hid , 软件编程指南参见:TinyUSB 组件

    • BLE HID 应用例程可参考:esp-idf/examples/bluetooth/bluedroid/ble/ble_hid_device_demo

  • 多种键盘热键:软件设计参考了 QMK( qmk/qmk_firmware ) 代码逻辑,可以方便修改键盘映射,并支持多种键盘热键,如音量加、音量减等。ESP-KeyBoard 支持如下快捷键:

组合键功能
FN + F1USB 工作模式
FN + F2BLE 工作模式
FN + F10静音
FN + F11音量+
FN + F12音量 -
FN + Home切换本地灯光颜色
FN + PgUP正向本地灯光效果
FN + PgDN反向本地灯光效果
FN + END切换 WIN11动态灯光效果
FN + Blank切换本地灯光
FN + ↑增加本地灯光亮度
FN + ↓降低本地灯光亮度
FN + ←降低本地灯光变化速度
FN + →增加本地灯光变化速度
  • WS2812 LED 控制:在 WS2812 灯组控制应用上, 使用了 ESP32-S3 的 RTM 外设接口,借助 espressif /led_strip 组件来驱动 WS2812 LED 灯带,以实现 ESP-KeyBoard 灯光调控的功能。应用例程可参考 esp-idf/examples/peripherals/rmt/led_strip,软件编程指南参见:红外遥控 (RMT)

  • 低功耗模式: 在低能耗方面使用了乐鑫提供的 Auto Light Sleep 解决方案来自动进入休眠状态,这里借助了六个 RTC GPIOGPIO38、GPIO39、GPIO40、GPIO45 、GPIO47、GPIO48 )作为唤醒源,分别连接到矩阵键盘的 ROW0~ROW5 ,以此实现通过任意按键唤醒 ESP-KeyBoard 的待机模式。文档说明参见:低功耗模式使用指南 。 对应的 Auto Light Sleep 代码 如下:

            esp_pm_config_t pm_config = {.max_freq_mhz = CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ,.min_freq_mhz = 160,
    #if CONFIG_FREERTOS_USE_TICKLESS_IDLE.light_sleep_enable = true
    #endif};ESP_ERROR_CHECK(esp_pm_configure(&pm_config));
    

总结

无论是长时间的编程工作,还是激烈的游戏竞技,一款性能出色的机械键盘都是我们可靠的助手。ESP-KeyBoard 不仅提升了工作效率,更为用户的学习和娱乐生活带来了定制化的乐趣。欢迎开发者们利用 ESP32-S3 定制属于自己的 ESP-KeyBoard。

相关文章:

ESP-KeyBoard:基于 ESP32-S3 的三模客制化机械键盘

概述 在这个充满挑战与机遇的数字化时代,键盘已经成为我们日常学习、工作、娱乐生活必不可少的设备。而在众多键盘中,机械键盘,以其独特的触感、清脆的敲击音和经久耐用的特性,已经成为众多游戏玩家和电子工程师的首选。本文将为…...

PML和金属边界区别

一、完美匹配层(PML)边界 原理:PML是一种特殊的吸收边界条件。它基于麦克斯韦方程组的特殊解来设计,其材料参数是经过精心选择的,使得在这个边界区域内,电磁波能够无反射地进入并被吸收。从数学上来说&…...

机器学习基础--基于线性回归房价预测

经典的线性回归模型主要用来预测一些存在着线性关系的数据集。回归模型可以理解为:存在一个点集,用一条曲线去拟合它分布的过程。如果拟合曲线是一条直线,则称为线性回归。如果是一条二次曲线,则被称为二次回归。线性回归是回归模…...

【Y20030007】基于java+servlet+mysql的垃圾分类网站的设计与实现(附源码 配置 文档)

网垃圾分类网站的设计与实现 1.摘要2.开发目的和意义3.系统功能设计4.系统界面截图5.源码获取 1.摘要 随着全球环境保护意识的提升,垃圾分类已成为一项紧迫且重要的任务。为了有效推动垃圾分类的实施,提升公众的环保意识和参与度,垃圾分类已…...

47小型项目的规划与实施

每天五分钟学Linux | 第四十七课:小型项目的规划与实施 大家好!欢迎再次来到我们的“每天五分钟学Linux”系列教程。在前面的课程中,我们学习了并发编程的知识,包括如何管理和使用进程与线程。今天,我们将探讨如何规划…...

Linux---ps命令

​​​​​​Linux ps 命令 | 菜鸟教程 (runoob.com) process status 用于显示进程的状态 USER: 用户名,运行此进程的用户名。PID: 进程ID(Process ID),每个进程的唯一标识号%CPU: 进程当前使用的CPU百分比%MEM: 进程当前使用的…...

Qt Qt::UniqueConnection 底层调用

在这里插入图片描述 步骤1: 1:判断槽函数连接方式, 以及信号对象是否有效2: 信号计算格式是否 大于 signal_index 目前调试 signal_index 不太清楚怎末计算的(有清楚的帮忙街道)3:获取槽函数对…...

Jenkins + gitee 自动触发项目拉取部署(Webhook配置)

目录 前言 Generic Webhook Trigger 插件 下载插件 ​编辑 配置WebHook 生成tocken 总结 前言 前文简单介绍了Jenkins环境搭建,本文主要来介绍一下如何使用 WebHook 触发自动拉取构建项目; Generic Webhook Trigger 插件 实现代码推送后,触…...

2025-2026财年美国CISA国际战略规划(下)

文章目录 前言四、加强综合网络防御(一)与合作伙伴共同实施网络防御,降低集体风险推动措施有效性衡量 (二)大规模推动标准和安全,以提高网络安全推动措施有效性衡量 (三)提高主要合作…...

aws ses生产环境申请

* aws ses生产环境申请经验: 要有域名邮箱作为反馈联系邮箱 且有收发记录 最好使用aws的WorkMail要说明清晰的使用用途、预估量、如何处理退信和投诉、防spam策略 等内容,这里可以先问问AI(比如:如何处理退信和投诉?…...

velocity unable to find resource ‘xxx.vm‘ in any resource loader

大家好,我是 程序员码递夫。 [TOC]velocity unable to find resource ‘xxx.vm’ in any resource loader 1.问题 今天帮客户解决一个远古 java web系统的bug , 客户的系统用了非常古老的框架 jdk1.6struc1.1 velocity1.5 运行在tomcat6环境。 客户想迁移到 tomc…...

InfluxDB时序数据库笔记(一)

InfluxDB笔记一汇总 1、时间序列数据库概述2、时间序列数据库特点3、时间序列数据库应用场景4、InfluxDB数据生命周期5、InfluxDB历史数据需要另外归档吗?6、InfluxDB历史数据如何归档?7、太麻烦了,允许的话选择设施完备的InfluxDB云产品吧8、…...

c#编码技巧(十九):各种集合特点汇总

.NET 常用集合对比: .NET 常见的线程安全集合 .NET 只读集合...

Python中的__init__()函数

什么是__init__()函数? __init__()函数其实是用于初始化新建对象的状态,当你创建一个类的实例时,__init__()函数的方法就会被自动调用,允许你为对象设置初始属性或执行初始化操作。 接下来这里让我们举例说明: 首先&#xff0c…...

写的bug与调试

无论是代码中的逻辑混乱,还是环境配置引发的灾难,亦或是多人协作产生的诡异问题,都可以在这里分享。把你职业生涯里遇到或写过的最大 bug 故事讲出来,让大家一起感受那些惊心动魄、哭笑不得的瞬间,也为后来人敲响警钟吧…...

本地安装YAPI

项目中用到很多的RESTAPI,光靠人工管理或者普通文档肯定是不行的,翻了很多的RESTAPI管理工具,还是选择了YAPI,原因有2,一个是接口位于内网,外网网站上管理测试不到内网接口,另外一个是使用方式&…...

嵌入式Linux基于IMX6ULL tslib学习总结

目录 1. tslib开源库介绍1.1 tslib主要功能1.2 架构 2. tslib代码简单分析2.1 ts_print_mt.c分析代码2.2 ts_setup代码分析2.3 ts_open代码分析2.4 ts_config代码分析2.5 ts_read_mt代码分析2.6 tslib中4个模块的含义 3. 使用tslib库打印触摸屏2点之间的距离 基于韦东山IMX6ULL…...

pinia的使用

一、安装 Pinia 首先,确保你的项目已经安装了 Vue.js(版本 3.x)。如果没有,请先安装 Vue。 然后使用包管理器(如 npm 或 yarn)安装 Pinia: 通过 npm 安装:npm install pinia通过 ya…...

亚信安全携手飞书“走近先进” 与保隆科技探索制造业数字化转型

亚信安全携手飞书组织举办“走近先进”活动。近日活动“走近”了中国汽车供应链百强、上海市制造业五十强企业——上海保隆汽车科技股份有限公司(以下简称“保隆科技”)。活动围绕“突破桎梏 加速升级”的主题,聚焦企业数字化转型的核心议题&…...

mybatis-plus方法无效且字段映射失败错误排查

问题: Invalid bound statement (not found): com.htlc.assetswap.mapper.WalletMapper.insert,并且select * 进行查询时带下划线的字段未成功映射。 排查: 1.检查WalletMapper接口,确保继承自BaseMapper 2.启用驼峰命名法映射。a…...

poi模板动态导出,下拉框联动,公式设置

背景:有一个动态导出模板的需求,根据页面维护的数据比如模板名称,模板的sheet名称,列名称宽度高度等,导出excel文件。打破以往把excel上传到代码的resource中,或者文件服务中,再下载出来导入。这…...

string的实际应用 -- 大数相加 、大数相乘

前言:哎,做题好难o(╥﹏╥)o,有时候想不到,而有时候则是想到了却没办法理清思路,转化为代码。有必要反思了┓(;_`)┏,是否是做的太少了,或是自己的基础欠缺。 大学总是有些迷茫~ ​​…...

16:(标准库)ADC三:使用外部触发启动ADC/模拟看门狗

使用外部触发启动ADC 1、外部中断线EXTI11触发ADC2、外部定时器TIM2_CH2触发ADC3、ADC中模拟看门狗的使用 1、外部中断线EXTI11触发ADC ADC的触发方式有很多,一般情况都是使用软件触发反式启动ADC转换。除了软件触发方式还能使用外部事件触发启动ADC转换。如下图所…...

前端框架 react 性能优化

目录 一、不使用任何性能优化API进行优化 二、通过性能优化API优化 1、React.memo 2、useCallback 3、useMemo 4、PureComponent 三、总结​ 总览:react的优化核心思想就是让react跳过重新渲染那个些没有改变的Component,而只重新渲染发生变化的C…...

一加ACE 3 Pro手机无法连接电脑传输文件问题

先说结论:OnePlus手机无法连接电脑传输数据的原因,大概率是一加数据线的问题。尝试其他手机品牌的数据线(比如华为),再次尝试。 连接电脑方法: 1 打开开发者模式(非必要操作) 进入…...

✅ Qt流式布局

Qt流式布局 前段时间,曾经对某个软件的一个“流式布局”有点感兴趣,什么叫“流式布局”呢?请看下图: 简而言之,流式布局就是布局应能够根据界面尺寸的变化自动调整其内部控件的位置。然而,Qt 提供的标准布局&#xff…...

【微服务】RabbitMQ与SpringAMQP消息队列

一、初识MQ 1. 同步通讯 同步通讯就好比双方打电话,可以实时响应,但只能一对一,只能同时和一个人聊天。 异步通讯就好比两个人发信息,你发信息给对方,对方不一定给你回复,但是可以一对多,可…...

C++设计模式-中介者模式

动机(Motivation) 多个对象相互关联的情况,对象之间常常会维持一种复杂的引用关系,如果遇到一些需求的更改,这种直接的引用关系将面临不断的变化。在这种情况下,可以使用一种”中介对象“来管理对象间的关联关系,避免…...

js实现分页效果

分页总结: 先写好html格式和css样式 再写js时先将他们都获取过来,设置一个k为页数的下标,num为每页的数据数量,pages为页数,并且获取json数据,再将data获取到全局 写for循环,设置一个变量为i…...

【WRF-Urban】多层建筑能源参数化模型概述:原理

【WRF-Urban】多层建筑能源参数化模型概述:原理 1 概述1.1 原理1.2 使用步骤 2参考 多层建筑能源参数化(Multi-layer Building Energy Parameterization, BEP)模型是一种用于模拟城市环境中多层建筑群的能量交换和微气候影响的参数化模型。该…...

ShuffleNet V2:高效卷积神经网络架构设计的实用指南

摘要 https://arxiv.org/pdf/1807.11164 当前,神经网络架构设计大多以计算复杂度的间接指标,即浮点运算数(FLOPs)为指导。然而,直接指标(例如速度)还取决于其他因素,如内存访问成本…...

1123--collection接口,list接口,set接口

目录 一 java 1. 集合 2. 集合框架图--remember 3. collection接口 3.1 collection接口的常用方法 3.1.1 add() 3.1.2 remove()-返回删除后的对象 3.1.3 contains()--返回布尔值 3.1.4 size&…...

基于BindingList的WinForm数据绑定机制与DataGridView动态刷新技术

前言: 本文以连接SQLite为例进行代码演示 一、首先建立里一个模型类 public class MyData{public int id { get; set; }public string name { get; set; }public int age { get; set; }public string sex { get; set; }public string address { get; set; }} 二、…...

大数据新视界 -- Hive 数据分区:精细化管理的艺术与实践(上)(7/ 30)

💖💖💖亲爱的朋友们,热烈欢迎你们来到 青云交的博客!能与你们在此邂逅,我满心欢喜,深感无比荣幸。在这个瞬息万变的时代,我们每个人都在苦苦追寻一处能让心灵安然栖息的港湾。而 我的…...

对于相对速度的重新理解 - 插一句

因为发了太多的公式,系统提示插入图片太频繁,下一个部分稍后再写。 这里要强调一下: 狭义相对论的平方和形式,其实就是因为分不清虚数单位的大小才写成这个样子。或者用物理语言来说,就是认为所有惯性系的“光速”都…...

css基础(27)_行内、行内块元素之间的空白问题

行内、行内块元素之间的空白问题 产生的原因&#xff1a;行内元素、行内块元素&#xff0c;彼此之间的换行会被浏览器解析为一个空白字符。 案例一&#xff1a; <!DOCTYPE html> <html lang"zh"> <head><meta charset"UTF-8">&…...

如果接口返回值图片有很长一串码,需要添加前缀

需要在前面添加前缀&#xff1a;data:image/jpeg;base64,然后将值赋值给<img :src"originalImage" /> this.tableLists.map((item)>{item.originalImage "data:image/jpeg;base64,"item.originalImage})以上方法会导致出现一个小bug&#xff0c;…...

《AI大模型开发笔记》——ollama应用全面解析

入门篇 1 ollama是什么? Ollama 是一个支持在本地运行大语言模型的工具,兼容 Windows、Linux 和 MacOS 操作系统。使用 Ollama,您仅需一行命令即可启动模型。 2 如何安装? Windows和MacOS用户,从下面链接下载安装即可: 下载地址:https://ollama.com/download Linux系…...

Paddle Inference部署推理(三)

三&#xff1a;Paddle Inference推理 导出模型 Paddle Inference支持使用飞桨静态图模型进行推理&#xff0c;您可以通过以下两种方式获取静态图模型&#xff1a; &#xff08;1&#xff09;飞桨框架导出推理模型 飞桨框架在训练模型过程中&#xff0c;会在本地存储最终训练…...

CSP/信奥赛C++语法基础刷题训练(23):洛谷P1217:[USACO1.5] 回文质数 Prime Palindromes

CSP/信奥赛C语法基础刷题训练&#xff08;23&#xff09;&#xff1a;洛谷P1217&#xff1a;[USACO1.5] 回文质数 Prime Palindromes 题目描述 因为 151 151 151 既是一个质数又是一个回文数&#xff08;从左到右和从右到左是看一样的&#xff09;&#xff0c;所以 151 151 …...

《跨越语言壁垒:Python 人工智能原型到 C++可执行程序的转型之路》

在人工智能的广阔天地里&#xff0c;Python 以其简洁易用和丰富的库资源成为众多开发者快速搭建人工智能原型的首选语言。然而&#xff0c;在一些对性能和资源控制要求极高的场景下&#xff0c;C则展现出无可比拟的优势。那么&#xff0c;如何将 Python 中开发的人工智能原型代…...

flowable流程图详细绘制教程

文章目录 前言一、flowable是什么&#xff1f;回答下之前的问题 二、flowable-modeler使用1. 使用步骤2.开始绘制弄一个请假的流程 三 加载该流程总结 前言 flowable有些晦涩难懂的东西&#xff1a; 我最开始接触的时候,还是用的activity,当时觉得好复杂,那么这次经过我自己在…...

Figma入门-基本操作制作登录页

Figma入门-基本操作制作登录页 前言 在之前的工作中&#xff0c;大家的原型图都是使用 Axure 制作的&#xff0c;印象中 Figma 一直是个专业设计软件。 最近&#xff0c;很多产品朋友告诉我&#xff0c;很多原型图都开始用Figma制作了&#xff0c;并且很多组件都是内置的&am…...

在windows操作系统上,用git与github账户连接

一、环境准备 1.1 git软件 1.2 github账号 1.3 创建一个项目目录&#xff0c;比如 D:\project\gitproject 二、开始操作 1. 进入项目目录下&#xff0c;右键&#xff0c;如图&#xff0c;打开git bash命令行 2. 在命令行输入以下三个命令 $ git config --global user.name &quo…...

springboot系列--拦截器执行原理

一、拦截器核心概念 一、定义 拦截器&#xff08;Interceptor&#xff09;是框架级别的组件&#xff0c;用于在请求的不同阶段&#xff08;如到达控制器之前&#xff08;也就是接口&#xff09;、处理完成之后&#xff09;动态地拦截和处理 HTTP 请求。 二、使用场景 一、用户…...

数据可视化复习2-绘制折线图+条形图(叠加条形图,并列条形图,水平条形图)+ 饼状图 + 直方图

目录 目录 一、绘制折线图 1.使用pyplot 2.使用numpy ​编辑 3.使用DataFrame ​编辑 二、绘制条形图&#xff08;柱状图&#xff09; 1.简单条形图 2.绘制叠加条形图 3.绘制并列条形图 4.水平条形图 ​编辑 三、绘制饼状图 四、绘制散点图和直方图 1.散点图 2…...

STM32F10x 定时器

使用定时器实现&#xff1a;B5 E5的开关 添加相关的.h路径文件 添加相关的.c配置文件 led.h文件 用于声明LED函数 #ifndef __LED_H //没有定义__LED_H #define __LED_H //就定义__LED_H #define LED1_ON GPIO_ResetBits(GPIOB,GPIO_Pin_5) #defi…...

VBA技术资料MF230:展开所有折叠视图并恢复

我给VBA的定义&#xff1a;VBA是个人小型自动化处理的有效工具。利用好了&#xff0c;可以大大提高自己的工作效率&#xff0c;而且可以提高数据的准确度。“VBA语言専攻”提供的教程一共九套&#xff0c;分为初级、中级、高级三大部分&#xff0c;教程是对VBA的系统讲解&#…...

【数据结构OJ】【图论】图综合练习--拓扑排序

题目描述 已知有向图&#xff0c;顶点从0开始编号&#xff0c;求它的求拓扑有序序列。 拓扑排序算法&#xff1a;给出有向图邻接矩阵 1.逐列扫描矩阵&#xff0c;找出入度为0且编号最小的顶点v 2.输出v&#xff0c;并标识v已访问 3.把矩阵第v行全清0 重复上述步骤&#xff0…...

网络安全防范

网络安全防范技术 所属课程网络攻防实践作业要求第六次作业 实践内容 学习总结 PDR&#xff0c;$$P^2$$DR安全模型。 防火墙&#xff08;Firewall&#xff09;&#xff1a; 网络访问控制机制&#xff0c;布置在网际间通信的唯一通道上。 不足&#xff1a;无法防护内部威胁&…...