ESP32-C3开发实战:从蓝牙广播到智能硬件设计
1. 从一块开发板说起为什么是ESP-C3-32S-Kit如果你最近在捣鼓物联网或者智能硬件大概率会听到ESP32-C3这个名字。它不像它的老大哥ESP32那样自带Wi-Fi和蓝牙双模而是主打一个“专精”——RISC-V内核加上蓝牙5.0。今天要聊的这块ESP-C3-32S-Kit就是乐鑫官方基于ESP32-C3推出的一款开发板。你可能在网上搜到过它或者看到别人用它做智能开关、蓝牙信标、低功耗传感器。但拿到手之后很多人会有点懵这板子看着挺全USB转串口、按键、LED、排针都有可具体能干嘛怎么上手和那些更便宜的“核心板底板”方案比它的价值在哪这就是我想聊的。ESP-C3-32S-Kit更像是一个“官方标准答案”和“调试利器”。它把ESP32-C3芯片所有该引出的引脚都通过排针引出来了并且板载了USB转串口芯片CH340C、复位和下载按键、用户LED甚至还有一个RGB LED。这意味着你不需要额外焊接任何东西用一根Type-C线连上电脑就能开始写代码、下载、调试。对于初学者或者想快速验证一个想法的开发者来说它能极大降低硬件上的门槛让你把精力集中在软件和逻辑上。当然它的价格会比单独的核心板贵一些这多出来的钱买的是便利性和可靠性尤其是那个稳定的USB转串口在调试阶段能省去很多“玄学”问题。从网络上的搜索热度也能看出大家的关注点怎么配置蓝牙广播数据、如何获取设备的MAC地址、天线阻抗匹配怎么做甚至还有用它做智能电池盒这种具体项目。这些恰恰说明了ESP32-C3的应用场景正在从简单的“点灯”向更专业的、需要与手机交互的物联网设备深入。而ESP-C3-32S-Kit作为官方开发板其硬件设计比如天线部分是经过验证的这为我们后续的软件开发和性能调优提供了一个可靠的起点。接下来我们就以这块板子为载体深入聊聊ESP32-C3开发中那些真正重要的事。2. 开箱即用ESP-C3-32S-Kit硬件解剖与开发环境搭建当你拿到ESP-C3-32S-Kit第一件事不是急着写代码而是先认识它。板子正面最显眼的是那颗ESP32-C3-MINI-1模组它已经集成了芯片、闪存、晶振和天线我们不需要再操心射频电路设计。模组旁边是Type-C接口和CH340C串口芯片这是和电脑通信的桥梁。板载的三个按键分别是Boot下载模式、RST复位和User用户自定义两个LED分别是GPIO8控制的用户LED和GPIO2控制的RGB LED。硬件连接要点用Type-C线连接电脑和开发板后电脑通常会识别出一个新的串行端口COM口在Windows设备管理器中查看或/dev/ttyUSB*在Linux/macOS下用ls /dev/tty*查看。如果没识别到可能需要安装CH340C的驱动这在乐鑫的官方文档站可以找到。板子上的Boot键很有用在固件下载时需要先按住Boot键不放再按一下RST键然后松开RST键再松开Boot键此时芯片进入下载模式串口会显示“等待下载上电同步”。很多新手下载失败问题都出在这个按键时序没掌握好。开发环境选择目前主流有两种。第一种是ESP-IDF这是乐鑫官方的物联网开发框架功能最全、最底层适合对系统控制要求高、需要深度优化功耗和性能的项目。它的安装可以通过乐鑫的离线安装包或者idf.py工具链。第二种是Arduino Core for ESP32如果你有Arduino开发经验上手会非常快库生态丰富但对于蓝牙5.0等新特性的支持可能稍慢于ESP-IDF。对于ESP-C3-32S-Kit我强烈建议从ESP-IDF开始因为它能让你接触到最完整和最新的API特别是蓝牙部分。你可以使用VS Code加上乐鑫官方的ESP-IDF插件这能提供代码补全、编译、下载、监控的一体化体验非常方便。第一个程序点灯。在ESP-IDF中创建一个新项目代码非常简单#include stdio.h #include driver/gpio.h #include freertos/FreeRTOS.h #include freertos/task.h #define BLINK_GPIO 8 // ESP-C3-32S-Kit用户LED连接在GPIO8 void app_main(void) { gpio_reset_pin(BLINK_GPIO); gpio_set_direction(BLINK_GPIO, GPIO_MODE_OUTPUT); while (1) { gpio_set_level(BLINK_GPIO, 0); // 点亮LED低电平有效 vTaskDelay(1000 / portTICK_PERIOD_MS); gpio_set_level(BLINK_GPIO, 1); // 熄灭LED vTaskDelay(1000 / portTICK_PERIOD_MS); } }编译后按照上述的Boot和RST按键操作进入下载模式然后使用idf.py -p PORT flash命令下载程序PORT替换为你的串口号。下载成功后按RST键就能看到LED开始闪烁。这个过程验证了你的开发环境、工具链、硬件连接都是正确的这是万里长征的第一步也是最重要的一步。3. 深入蓝牙核心广播数据、MAC地址与事件处理ESP32-C3的蓝牙功能是其最大亮点而蓝牙开发的第一步往往是从广播开始。广播就像是设备在不停地喊“我在这里我是XXX我能提供YYY服务”。手机上的蓝牙扫描列表听到的就是这些广播信息。自定义广播数据这是很多项目的需求比如把你的设备名称、自定义的服务UUID、甚至一些简单的传感器数据如电池电量放进广播包里让手机扫描时就能直接读到无需连接。在ESP-IDF中主要使用esp_ble_gap_config_adv_data函数来配置。广播数据由若干个“AD Structure”组成每个结构包含一个长度、一个类型AD Type和实际数据。举个例子如果你想在广播数据中加入设备名称和自定义的制造商数据Manufacturer Specific Data 对应网络热词中的adv_mfg_data可以这样配置#include esp_bt.h #include esp_gap_ble_api.h #include esp_bt_main.h // 自定义制造商数据例如0xABCD为厂商ID后跟两个字节数据0x01 0x02 static uint8_t mfg_data[] {0xAD, 0xBC, 0x01, 0x02}; // 注意小端格式0xABCD存储为0xAD 0xBC static esp_ble_adv_data_t adv_data { .set_scan_rsp false, // 这是广播数据不是扫描响应 .include_name true, // 包含设备名 .include_txpower false, .min_interval 0x20, // 最小广播间隔单位0.625ms0x2032*0.625ms20ms .max_interval 0x40, // 最大广播间隔0x4064*0.625ms40ms .appearance 0x00, .manufacturer_len sizeof(mfg_data), .p_manufacturer_data mfg_data, .service_data_len 0, .p_service_data NULL, .service_uuid_len 0, .p_service_uuid NULL, .flag (ESP_BLE_ADV_FLAG_GEN_DISC | ESP_BLE_ADV_FLAG_BREDR_NOT_SPT), }; // 在初始化蓝牙并注册GAP回调后调用此函数设置广播数据 esp_ble_gap_config_adv_data(adv_data);这里的关键是manufacturer_len和p_manufacturer_data它们允许你嵌入任意自定义数据。手机端扫描时可以通过解析广播包中的0xFF类型制造商特定数据来获取这些信息。获取蓝牙MAC地址每个蓝牙设备都有一个唯一的48位MAC地址。在ESP32-C3上你可以通过esp_bt_dev_get_address()函数获取到公共地址Public Address。但需要注意的是在广播或扫描时你可能会使用随机地址Random Address来保护隐私。获取当前使用的地址在GAP层通常是在事件回调中处理。例如在ESP_GAP_BLE_ADV_DATA_SET_COMPLETE_EVT事件中你可以调用esp_ble_gap_get_local_used_addr来获取实际用于广播的地址。FreeRTOS事件循环ESP-IDF的蓝牙协议栈是建立在FreeRTOS之上的它使用一个独立的事件任务Event Task来处理所有底层蓝牙事件如连接、断开、数据接收等。我们的应用程序通过向这个事件任务注册回调函数来响应这些事件。这就是网络热词中提到的freertos event机制。你需要理解的是所有蓝牙API的调用如开始广播、发送数据可能是异步的它们会触发一个事件事件的处理是在回调函数中进行的。因此你的程序逻辑需要适应这种“事件驱动”模型避免在回调函数中进行长时间的阻塞操作否则会影响整个蓝牙协议栈的响应。通常的做法是在回调函数里只做最简单的状态更新或数据拷贝然后通过队列Queue或任务通知Task Notification将事件传递给另一个专门的处理任务去完成复杂的逻辑。4. 射频性能基石天线阻抗匹配与PCB布局考量对于无线产品射频性能直接决定了通信距离和稳定性。ESP-C3-32S-Kit板载的模组已经做好了天线匹配但对于想要基于ESP32-C3芯片自行设计产品的开发者天线阻抗匹配是一个无法回避的硬核话题。网络热词中提到它说明大家开始关注更底层的硬件设计了。为什么需要阻抗匹配简单来说射频信号在传输线中传播时如果传输线的特征阻抗与负载天线的阻抗不相等就会产生反射。反射的信号会与原始信号叠加造成信号失真、功率传输效率下降最直观的表现就是通信距离变短、数据丢包率高。对于ESP32-C3这类2.4GHz设备标准阻抗是50欧姆。我们的目标就是通过无源元件电感、电容组成的匹配网络让天线端口的阻抗在2.4GHz频点附近尽可能接近50欧姆。如何进行匹配这通常需要网络分析仪VNA这样的专业设备。过程大致是测量将未焊接匹配元件的PCB天线端口通过测试线连接到VNA进行S11参数回波损耗扫描。你会看到一个曲线它显示了在不同频率下天线端口的阻抗情况。仿真将测得的S11数据导入到仿真软件如SimSmith、ADS软件会根据你选择的匹配电路拓扑通常是π型或L型网络计算出所需的电感电容值。焊接与验证将计算好的元件焊接到PCB上再次用VNA测量。观察S11曲线看其在2.4GHz频点是否达到最低例如小于-10dB意味着90%以上的功率被辐射出去了。可能需要多次迭代调整元件值。对于使用ESP-C3-32S-Kit的开发者虽然不需要自己动手匹配但必须理解以下影响射频性能的PCB布局原则如果你未来要设计自己的底板天线区域净空天线无论是PCB天线还是外接天线接口周围至少留出15mm的净空区这个区域内禁止敷铜、走线、放置任何元件包括丝印。射频走线控制从芯片RF引脚到天线或天线连接器的走线必须做50欧姆阻抗控制。这需要根据PCB板材的介电常数和层叠结构计算走线的宽度。走线要尽量短、直避免直角转弯用圆弧或45度角减少寄生效应。地平面完整性天线下方需要有一个完整的地平面作为参考但地平面边缘要与天线保持一定距离。同时整个系统的地要良好连接为射频信号提供稳定的回流路径。电源去耦在芯片的电源引脚附近必须放置足够多、容值搭配合理的去耦电容如10uF、1uF、0.1uF滤除电源噪声防止噪声通过电源线耦合到射频电路导致性能下降。即使你只是使用开发板如果发现通信距离异常也要检查是否将开发板放在了金属表面或封闭的金属盒内这些都会严重影响天线性能。5. 实战项目手把手打造智能电池盒ADC检测与手机联动现在我们结合一个具体项目把前面提到的点串联起来用ESP-C3-32S-Kit制作一个智能电池盒。这个盒子可以装干电池或锂电池通过ADC读取电池电压并将电量信息通过蓝牙发送到手机APP上显示。这个项目涵盖了GPIO、ADC、蓝牙GATT服务、手机端交互等多个知识点。硬件设计思路电源输入电池盒的正负极接入开发板的VIN如果电池电压在3.0V-3.6V之间或通过一个LDO降压到3.3V后接入3V3引脚。注意ESP32-C3的工作电压是3.3V直接接入高于3.6V的电压会损坏芯片。电压采样电路分压器由于ESP32-C3的ADC引脚如GPIO1只能测量0V-3.3V的电压而电池电压如单节锂电池满电4.2V可能超过此范围必须使用分压电路。这就是热词中提到的“分压电阻计算器”的应用场景。分压电阻计算假设我们使用单节锂电池最高4.2VADC参考电压为3.3V。我们需要将4.2V分压到不超过3.3V。选择一个常见的分压比例如使用两个电阻R1和R2串联。公式是V_adc V_bat * R2 / (R1 R2)。为了在满电4.2V时ADC读数不至于饱和我们设定V_adc_max 3.0V留一点余量。那么3.0 4.2 * R2 / (R1 R2)。简化得R1 / R2 (4.2 / 3.0) - 1 0.4。所以R1 : R2 0.4 : 1。为了方便可以取R210kΩ则R14kΩ。实际中4kΩ不是标准值我们可以选用3.9kΩE24系列标准值。重新计算V_adc_max 4.2 * 10 / (3.9 10) ≈ 3.02V安全。同时为了减小对电池的负载流过分压电阻的电流不宜过大I V_bat / (R1R2) 4.2 / 13.9k ≈ 0.3mA可以接受。分压后的连接点接到ESP32-C3的ADC引脚如GPIO1同时建议在ADC引脚到地之间加一个100nF的电容用于滤波稳定采样值。软件实现步骤ADC采样与电压计算#include driver/adc.h #include esp_adc_cal.h #define ADC_CHANNEL ADC_CHANNEL_0 // GPIO1对应ADC1通道0 #define ADC_ATTEN ADC_ATTEN_DB_11 // 衰减11dB量程约0~3.1V #define DEFAULT_VREF 1100 // 用于没有eFuse校准值时的参考电压单位mV esp_adc_cal_characteristics_t *adc_chars; void adc_init() { adc1_config_width(ADC_WIDTH_BIT_12); // 12位精度 adc1_config_channel_atten(ADC_CHANNEL, ADC_ATTEN); // 校准特性提高精度 adc_chars calloc(1, sizeof(esp_adc_cal_characteristics_t)); esp_adc_cal_characterize(ADC_UNIT_1, ADC_ATTEN, ADC_WIDTH_BIT_12, DEFAULT_VREF, adc_chars); } float read_battery_voltage() { int raw adc1_get_raw(ADC_CHANNEL); uint32_t voltage_mv esp_adc_cal_raw_to_voltage(raw, adc_chars); // 计算实际电池电压考虑分压比 (R1R2)/R2 (3.910)/10 1.39 float battery_voltage voltage_mv * 1.39 / 1000.0; return battery_voltage; }注意ADC读数有噪声实际应用中需要对连续多次采样取平均或使用滤波算法如滑动平均、卡尔曼滤波。创建蓝牙GATT服务我们需要创建一个服务来向手机报告电量。通常使用标准的电池服务Battery Service其UUID为0x180F其中包含一个电池电量特性Battery Level CharacteristicUUID为0x2A19。这个特性是一个8位无符号整数表示0-100%的电量。在ESP-IDF中你需要先初始化蓝牙创建GATT表定义这个服务和特性。特性需要设置为可读READ和通知NOTIFY这样手机既可以主动读取也可以在电量变化时自动收到通知。你需要将计算出的电池电压转换为百分比。对于锂电池一个简单的线性模型是假设3.0V为0%4.2V为100%。电量百分比 (Vbat - 3.0) / (4.2 - 3.0) * 100。注意要将结果限制在0-100之间。手机端应用可以使用现成的蓝牙调试APP如nRF Connect来连接你的设备查看电池服务并订阅电量通知。更专业的做法是开发一个简单的手机APP使用Android的BluetoothGATT API或iOS的CoreBluetooth框架连接设备后发现电池服务读取并订阅电量特性然后在UI上显示一个电池图标和百分比。项目优化与注意事项功耗如果希望电池盒续航长久必须考虑功耗。在不需要广播或连接时让ESP32-C3进入深度睡眠Deep Sleep模式此时ADC和外设都会关闭功耗可低至10μA以下。可以通过定时器或外部唤醒如按键来周期性地唤醒、测量电压、广播一下数据然后继续睡眠。ADC精度ESP32-C3的ADC存在非线性误差。对于电池电量这种不需要绝对精确的场景线性模型基本够用。如果要求高可以在生产时对每个设备进行两点校准测量两个已知电压下的ADC原始值计算出斜率和偏移。连接稳定性确保天线周围环境良好。在代码中合理设置蓝牙连接参数如连接间隔、从机延迟在功耗和实时性之间取得平衡。通过这个项目你不仅学会了如何使用ESP32-C3的ADC和蓝牙更理解了如何将一个想法从硬件选型、电路计算、软件实现到与手机联动的完整流程打通。ESP-C3-32S-Kit在这里扮演了一个快速原型验证平台的角色所有功能都可以在这块板子上先行测试待稳定后再去设计定制PCB这正是它最大的价值所在。

相关新闻

Java日志框架:深入解析java.util.logging(JUL)核心原理与实战应用

Java日志框架:深入解析java.util.logging(JUL)核心原理与实战应用

1. 项目概述:被低估的“原住民”日志工具聊到Java日志,大家脑子里蹦出来的多半是Log4j 2、Logback,再配上SLF4J这个门面,这几乎成了现代Java项目的标准答案。但很多开发者,尤其是刚入行的朋友,可能都忽略了…

2026/8/1 17:04:32 阅读更多 →
如何快速实现HTML转Word文档:html-to-docx完整指南

如何快速实现HTML转Word文档:html-to-docx完整指南

如何快速实现HTML转Word文档:html-to-docx完整指南 【免费下载链接】html-to-docx HTML to DOCX converter 项目地址: https://gitcode.com/gh_mirrors/ht/html-to-docx 还在为网页内容无法直接保存为专业Word文档而烦恼吗?html-to-docx作为一款强…

2026/8/1 17:04:32 阅读更多 →
终极FF14国际服汉化教程:3分钟实现中文界面完全指南

终极FF14国际服汉化教程:3分钟实现中文界面完全指南

终极FF14国际服汉化教程:3分钟实现中文界面完全指南 【免费下载链接】FFXIVChnTextPatch 项目地址: https://gitcode.com/gh_mirrors/ff/FFXIVChnTextPatch FFXIVChnTextPatch是一款专业的FF14汉化工具,能够快速将国际服客户端转换为中文界面&am…

2026/8/1 17:04:32 阅读更多 →

最新新闻

C++11 std::thread:从线程创建到同步原语的完整指南

C++11 std::thread:从线程创建到同步原语的完整指南

1. 从单核到多核:为什么C11的std::thread是游戏规则的改变者我记得十几年前刚接触C多线程编程那会儿,用的还是平台相关的API,比如Windows上的CreateThread或者Linux下的pthread_create。那时候写跨平台的多线程代码,简直是一场噩梦…

2026/8/1 17:51:59 阅读更多 →
为什么你的Windows和Office激活总是失败?5分钟掌握KMS智能激活的核心技巧

为什么你的Windows和Office激活总是失败?5分钟掌握KMS智能激活的核心技巧

为什么你的Windows和Office激活总是失败?5分钟掌握KMS智能激活的核心技巧 【免费下载链接】KMS_VL_ALL_AIO Smart Activation Script 项目地址: https://gitcode.com/gh_mirrors/km/KMS_VL_ALL_AIO 你是否曾经花费数小时在网上搜索Windows激活方法&#xff0…

2026/8/1 17:51:59 阅读更多 →
NFC供电电子纸屏开发全解析:从原理到实践

NFC供电电子纸屏开发全解析:从原理到实践

1. 项目概述:当电子纸遇上NFC,一个创意硬件的诞生最近在折腾一个挺有意思的小玩意儿:一块7.5英寸、支持NFC供电和刷新的高清电子墨水屏。这听起来可能有点“缝合怪”的感觉,但当你把它拿在手里,看着它仅靠手机“碰一碰…

2026/8/1 17:51:59 阅读更多 →
CVE-2026-64016 漏洞解析:内核 ksmbd 服务 UAF 缺陷风险处置方案

CVE-2026-64016 漏洞解析:内核 ksmbd 服务 UAF 缺陷风险处置方案

7 月 19 日 Linux 社区披露临界级漏洞 CVE-2026-64016,CVSS 评分 9.8,缺陷存在于内核 ksmbd SMB 服务的持久句柄重连逻辑,属于典型释放后复用(UAF)内存缺陷。区别于用户态 Samba,ksmbd 运行于内核态、直接监…

2026/8/1 17:51:59 阅读更多 →
Driver Store Explorer:彻底告别Windows驱动臃肿,轻松释放数GB系统盘空间

Driver Store Explorer:彻底告别Windows驱动臃肿,轻松释放数GB系统盘空间

Driver Store Explorer:彻底告别Windows驱动臃肿,轻松释放数GB系统盘空间 【免费下载链接】DriverStoreExplorer Driver Store Explorer 项目地址: https://gitcode.com/gh_mirrors/dr/DriverStoreExplorer 你是不是经常发现Windows系统盘空间在不…

2026/8/1 17:51:59 阅读更多 →
UE5 GAS游戏技能系统实战:从核心架构到RPG状态管理优化

UE5 GAS游戏技能系统实战:从核心架构到RPG状态管理优化

1. 项目概述:为什么RPG游戏开发者绕不开GAS? 如果你正在用UE5开发一款RPG游戏,无论是硬核的魂Like还是开放世界冒险,大概率会遇到一个灵魂拷问:如何优雅地管理角色身上那几十上百种状态、技能和属性?是继续…

2026/8/1 17:50:59 阅读更多 →

日新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/1 0:00:48 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/1 0:00:48 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/1 0:00:48 阅读更多 →

周新闻

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 数据集6000张 完整源码已标注数据集训练好的模型环境配置教程程序运行说明文档,可以直接使用!系统支持图片、视频、摄像头等多种方式检测裂缝,功能强大实用。 1数据集6000张 8各类别

2026/8/1 13:02:46 阅读更多 →
深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

pubg数据集 精选原图1.42万数据 1.49万标签 无任何重复、算法增强或冗余图像! pubg绝地求生目标检测数据集 1分类:e_body,14905个标签,txt格式 共计14244张图,99%为640*640尺寸图像 适合yolo目标检测、AI训练关键词&am…

2026/8/1 5:19:34 阅读更多 →
Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex检测数据集数据集详情检测类别: allies enemy tag图片总量:7247张训练集:5139张验证集:1425张测试集:683张标注状态:全部已标注,即拿即用数据格式:支持YOLO格式及其他格式&#…

2026/8/1 10:33:33 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/1 0:00:48 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/1 0:00:48 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/1 0:00:48 阅读更多 →