FPC 不良导致 设备无法正常被识别。
在 USB 接口包括传统的 Micro USB、USB Type-A 以及现在通用的 USB Type-C中D 和 D- 是极其重要的两条信号线。结合你提到的产线维修、FPC柔性电路板折弯以及 Type-C 口不良的背景以下为你详细拆解什么是 D/D- 以及在产线/维修时如何具体进行测试。一、 什么是 D 和 D-D (Data Plus)和D- (Data Minus)是 USB 2.0 协议中规定的一组差分数据信号线。核心作用它们负责在设备如手机、嵌入式板卡和主机如电脑、U盘、OTG设备之间传输数据和识别设备。识别/握手当设备插入时系统通过 D/D- 上的电平变化来识别是否有设备接入以及设备是低速、全速还是高速设备。数据传输USB 读写文件、ADB 调试、刷机等在 USB 2.0 速率下全靠这对双绞线。充电协议握手许多传统的快充协议如 QC2.0/3.0部分 BC1.2 标准需要通过 D/D- 线的电压“对暗号”来决定输出 5V、9V 还是 12V。为什么叫差分信号D 和 D- 传输的是大小相等、方向相反的电压信号例如 D 为高电平 3.3V 时D- 对应低电平 0V。接收端通过计算二者的差值D 减去 D-来判断数据是“0”还是“1”。这种设计能极大地抵消外界的电磁干扰。如果 FPC 受到折弯、拉扯导致这两条线其中一条断裂或断续通信就会立刻失败。二、 在产线与维修中如何测试 D 和 D-根据你提到的“万用表/示波器量 Type-C 口 VBUS、D/D- 通断”在实际操作中通常有以下几种递进的测试方法方法 1用万用表测量“对地阻抗”最常用、最快这是产线和维修判断芯片引脚、FPC、座子是否虚焊/断路最经典、最高效的方法。测试准备设备断电拔掉电池和外部电源万用表打到二极管档Diode档也就是蜂鸣器档旁边那个。测试方法将万用表的红表笔接板子的主地GND。用黑表笔分别去点测Type-C 母座上或 FPC 测试点上的 D 和 D- 引脚。结果分析正常情况D 和 D- 的对地阻抗数值应该非常接近通常在 300mV ~ 700mV 之间具体取决于主控芯片和保护器件。数值为“1”或“OL”溢出说明断路Open。对应你的排查点FPC 焊接虚焊、金手指折弯断线、或 Type-C 座子压接开裂。数值接近 0或蜂鸣器响说明短路Short。可能是 D / D- 与旁边的 GND 短路或者芯片内部被静电ESD击穿。方法 2用万用表测量“通断/电阻”验证 FPC 物理链路当你怀疑“换 FPC 即好”是 FPC 自身的问题时可以直接测线缆。测试方法万用表打到电阻档Ω或蜂鸣器档。一根表笔接 Type-C 座子的 D 焊接脚另一根表笔接主板端接收芯片侧的 D 测试点。结果分析电阻应接近 0 欧姆如果阻值很大或不通说明 FPC 内部走线断裂特别是折弯处最容易发生。方法 3用示波器测量“波形/电平”用于深度分析如果万用表测阻值正常但软件仍然报 OTG 错误或无法连接就需要抓取动态信号。测试准备设备供电并开机插入 USB 或者是触发 FactoryTest OTG 测试。测试方法示波器探头分别接 D 和 D-地线接 GND。结果分析正常情况在设备插入的瞬间可以看到 D 或 D- 有明显的电压跳变比如从 0V 被拉高到 3.3V 保持或者看到密密麻麻的连续方波数据包信号。异常情况若一条线有波形另一条线完全是死线一条直线或者波形严重变形、幅值不够说明线路上有严重的寄生电容、阻抗不匹配、或者 FPC 处于“似断非断”的临界状态。三、 结合你业务背景的维修建议制作专属的“Type-C 测试小板Fixture”直接拿万用表表笔去扎 Type-C 母座内部细小的引脚很容易打滑甚至造成短路。产线维修通常会使用一个带有 Type-C 公头的引出小板测试治具把 VBUS、GND、D、D-、CC1、CC2 等引脚引出来做成大测试点方便员工用万用表快速点测。重点看 CC 线和 D/D- 的配合因为是 Type-C 口且涉及 OTGType-C 还有两根关键线叫CC1 / CC2配置通道。OTG 设备如主控端需要通过 CC 线上的电阻检测来决定自己是做 Host给别人供电还是 Device被供电。如果 CC 线断了VBUS 甚至可能都不会输出电压如果 CC 线正常但 D/D- 断了就会出现“能充电/能供电但无法识别设备/无数据传送”的现象。环节 状态VBUS✅ 有~5VPD sink充电 online ✅ online1, type5Type-C HAL ✅ ufp / device / connectedtrueextcon 切 Device ❌ 没切musb❌ 仍在 Hosthub_control代码里两条路都被堵了mediatek,bypss-typec-sink 1 → PC 插入不走 Type-C SINK → set_role(DEVICE)usb_is_online() 只认 type4/6不认 type5 → psy 备用路径也不切 Device一键快照adb shell “date; getprop ro.build.type; getprop ro.debuggable” usb_diag_base.txtadb shell getprop | grep -iE “usb|adb|persist” usb_diag_base.txtadb shell dumpsys usb usb_diag_base.txtadb shell ps -A | grep -iE “adbd|usb” usb_diag_base.txtadb shell ls -l /sys/class/android_usb/ 2/dev/null usb_diag_base.txtadb shell ls -l /config/usb_gadget/ 2/dev/null usb_diag_base.txtadb shell cat /config/usb_gadget/g1/UDC 2/dev/null usb_diag_base.txtadb shell ls -lR /config/usb_gadget/g1/ 2/dev/null usb_diag_base.txtadb shell ls -l /sys/bus/usb/devices/ usb_diag_base.txtadb logcat -b kernel -d -t 500 | grep -iE “usb|musb|typec|tcpc|extcon|vbus|sc8989|chg|gadget|udc” usb_diag_base.txtadb logcat -d -t 500 | grep -iE “UsbService|adbd|UsbDeviceManager|UsbPort|configfs” usb_diag_base.txt$ adb shell dmesg | grep -iE “typec|extcon|vbus|musb|gadget|udc|connect|sc8989|role” | tail -80[ 1154.802146] charger_thread: [__mtk_pdc_get_setting]watt:28800000,45000,5000000 up:0,1 vbus:9410000 ibus:5, mivr:0,0[ 1154.802181] charger_thread: [__mtk_pdc_get_setting]vbus:9000:5000:5000 current:3000 idx:0 default_idx:1[ 1154.803198] charger_thread: [mtk_chg_enable_vbus_ovp] en:1 ovp:12500000[ 1154.820687] kworker/u16:0: pd_adapter pd_adapter: pd_tcp_notifier_call: sink vbus mv:5000, ma:3000, type:130[ 1154.821037] kworker/u16:0: rt-pd-manager rt-pd-manager: pd_tcp_notifier_call sink vbus 5000mV 3000mA type(0x82)[ 1154.977205] charger_thread: [__mtk_pdc_setup]idx:1:0:1:0 vbus:5000 cur:3000 ret:0[ 1158.679760] binder:502_2: [MUSB]usb_spm_dpidle_request 3061: USB_DPIDLE_FORBIDDEN, skip_cnt9[ 1158.679803] binder:502_2: [MUSB]usb_spm_dpidle_request 3054: USB_DPIDLE_ALLOWED, skip_cnt9[ 1158.679833] binder:502_2: [MUSB]musb_hub_control 374: port status 00000100,devctl0x80[ 1158.769088] binder:502_2: [MUSB]musb_hub_control 374: port status 00000100,devctl0x80[ 1159.749090] binder:502_2: [MUSB]usb_spm_dpidle_request 3061: USB_DPIDLE_FORBIDDEN, skip_cnt5[ 1159.749144] binder:502_2: [MUSB]usb_spm_dpidle_request 3054: USB_DPIDLE_ALLOWED, skip_cnt5[ 1159.749182] binder:502_2: [MUSB]musb_hub_control 374: port status 00000100,devctl0x80[ 1159.855923] binder:502_2: [MUSB]musb_hub_control 374: port status 00000100,devctl0x80[ 1160.568494] binder:502_2: [MUSB]musb_hub_control 374: port status 00000100,devctl0x80[ 1160.681172] binder:502_2: [MUSB]musb_hub_control 374: port status 00000100,devctl0x80[ 1161.372276] binder:502_2: [MUSB]usb_spm_dpidle_request 3061: USB_DPIDLE_FORBIDDEN, skip_cnt11[ 1161.372308] binder:502_2: [MUSB]usb_spm_dpidle_request 3054: USB_DPIDLE_ALLOWED, skip_cnt11[ 1161.372330] binder:502_2: [MUSB]musb_hub_control 374: port status 00000100,devctl0x80[ 1161.440061] binder:502_2: [MUSB]musb_hub_control 374: port status 00000100,devctl0x80[ 1163.159046] binder:502_2: [MUSB]usb_spm_dpidle_request 3061: USB_DPIDLE_FORBIDDEN, skip_cnt5[ 1163.159078] binder:502_2: [MUSB]usb_spm_dpidle_request 3054: USB_DPIDLE_ALLOWED, skip_cnt5[ 1163.159100] binder:502_2: [MUSB]musb_hub_control 374: port status 00000100,devctl0x80[ 1163.159602] binder:502_2: [MUSB]musb_hub_control 374: port status 00000100,devctl0x80[ 1164.223158] charger_thread: [__mtk_pdc_setup]idx:0:0:1:0 vbus:5000 cur:3000 ret:-100[ 1164.231542] kworker/4:2: mtk_charger_external_power_changed event, name:mtk-master-charger online:1 type:2 vbus:5350[ 1164.237025] kworker/4:1: mtk-extcon-usb extcon_usb: online1, type5[ 1164.239561] charger_thread: Vbat4326 vbats0 vbus:5360 ibus:1 I1 T-10 uisoc:86 type:stdstd idx:0 ta_stat:0 swchg_ibat:0 cv:4352000 cmd_pp:-1[ 1167.420321] binder:502_2: [MUSB]usb_spm_dpidle_request 3061: USB_DPIDLE_FORBIDDEN, skip_cnt3[ 1167.420350] binder:502_2: [MUSB]usb_spm_dpidle_request 3054: USB_DPIDLE_ALLOWED, skip_cnt3[ 1167.420371] binder:502_2: [MUSB]musb_hub_control 374: port status 00000100,devctl0x80[ 1167.535780] binder:502_2: [MUSB]musb_hub_control 374: port status 00000100,devctl0x80[ 1168.244787] binder:502_2: [MUSB]musb_hub_control 374: port status 00000100,devctl0x80[ 1168.379155] binder:502_2: [MUSB]musb_hub_control 374: port status 00000100,devctl0x80[ 1169.080095] binder:502_2: [MUSB]usb_spm_dpidle_request 3061: USB_DPIDLE_FORBIDDEN, skip_cnt11[ 1169.080126] binder:502_2: [MUSB]usb_spm_dpidle_request 3054: USB_DPIDLE_ALLOWED, skip_cnt11[ 1169.080149] binder:502_2: [MUSB]musb_hub_control 374: port status 00000100,devctl0x80[ 1169.195230] binder:502_2: [MUSB]musb_hub_control 374: port status 00000100,devctl0x80[ 1169.876056] binder:502_2: [MUSB]musb_hub_control 374: port status 00000100,devctl0x80[ 1169.996782] binder:502_2: [MUSB]musb_hub_control 374: port status 00000100,devctl0x80[ 1170.892514] binder:502_2: [MUSB]usb_spm_dpidle_request 3061: USB_DPIDLE_FORBIDDEN, skip_cnt11[ 1170.892566] binder:502_2: [MUSB]usb_spm_dpidle_request 3054: USB_DPIDLE_ALLOWED, skip_cnt11[ 1170.892605] binder:502_2: [MUSB]musb_hub_control 374: port status 00000100,devctl0x80[ 1170.893637] binder:502_2: [MUSB]musb_hub_control 374: port status 00000100,devctl0x80[ 1174.488325] kworker/1:2: mtk_charger_external_power_changed event, name:mtk-master-charger online:1 type:2 vbus:5300[ 1174.496318] kworker/1:3: mtk-extcon-usb extcon_usb: online1, type5[ 1174.498867] charger_thread: Vbat4228 vbats0 vbus:5130 ibus:0 I0 T33 uisoc:86 type:stdstd idx:0 ta_stat:0 swchg_ibat:0 cv:4352000 cmd_pp:-1[ 1174.506358] charger_thread: [__mtk_pdc_get_setting]watt:14500000,5000000,5000000 up:0,1 vbus:5150000 ibus:1000, mivr:0,0[ 1174.506370] charger_thread: [__mtk_pdc_get_setting]vbus:9000:5000:5000 current:3000 idx:0 default_idx:0[ 1174.506391] charger_thread: [__mtk_pdc_setup]idx:0:0:1:0 vbus:5000 cur:3000 ret:-100[ 1174.525815] charger_thread: Vbat4228 vbats0 vbus:4940 ibus:0 I-3 T33 uisoc:86 type:stdstd idx:0 ta_stat:0 swchg_ibat:0 cv:4352000 cmd_pp:-1[ 1174.527444] charger_thread: [__mtk_pdc_get_setting]watt:14500000,5000000,5000000 up:0,1 vbus:4930000 ibus:1000, mivr:0,0[ 1174.527459] charger_thread: [__mtk_pdc_get_setting]vbus:9000:5000:5000 current:3000 idx:0 default_idx:0[ 1174.527486] charger_thread: [__mtk_pdc_setup]idx:0:0:1:0 vbus:5000 cur:3000 ret:-100[ 1174.897026] binder:502_2: [MUSB]usb_spm_dpidle_request 3061: USB_DPIDLE_FORBIDDEN, skip_cnt3[ 1174.897074] binder:502_2: [MUSB]usb_spm_dpidle_request 3054: USB_DPIDLE_ALLOWED, skip_cnt3[ 1174.897110] binder:502_2: [MUSB]musb_hub_control 374: port status 00000100,devctl0x80[ 1174.997627] binder:502_2: [MUSB]musb_hub_control 374: port status 00000100,devctl0x80[ 1176.191905] binder:502_2: [MUSB]usb_spm_dpidle_request 3061: USB_DPIDLE_FORBIDDEN, skip_cnt5[ 1176.191936] binder:502_2: [MUSB]usb_spm_dpidle_request 3054: USB_DPIDLE_ALLOWED, skip_cnt5[ 1176.191959] binder:502_2: [MUSB]musb_hub_control 374: port status 00000100,devctl0x80[ 1176.260555] binder:502_2: [MUSB]musb_hub_control 374: port status 00000100,devctl0x80[ 1178.671844] binder:502_2: [MUSB]usb_spm_dpidle_request 3061: USB_DPIDLE_FORBIDDEN, skip_cnt5[ 1178.671916] binder:502_2: [MUSB]usb_spm_dpidle_request 3054: USB_DPIDLE_ALLOWED, skip_cnt5[ 1178.671973] binder:502_2: [MUSB]musb_hub_control 374: port status 00000100,devctl0x80[ 1178.697729] binder:502_2: [MUSB]musb_hub_control 374: port status 00000100,devctl0x80[ 1180.715136] binder:502_2: [MUSB]usb_spm_dpidle_request 3061: USB_DPIDLE_FORBIDDEN, skip_cnt3[ 1180.715183] binder:502_2: [MUSB]usb_spm_dpidle_request 3054: USB_DPIDLE_ALLOWED, skip_cnt3[ 1180.715218] binder:502_2: [MUSB]musb_hub_control 374: port status 00000100,devctl0x80[ 1181.013860] binder:502_2: [MUSB]musb_hub_control 374: port status 00000100,devctl0x80[ 1181.708323] binder:502_2: [MUSB]musb_hub_control 374: port status 00000100,devctl0x80[ 1181.725653] binder:502_2: [MUSB]usb_spm_dpidle_request 3061: USB_DPIDLE_FORBIDDEN, skip_cnt7[ 1181.725741] binder:502_2: [MUSB]usb_spm_dpidle_request 3054: USB_DPIDLE_ALLOWED, skip_cnt7[ 1181.803515] binder:502_2: [MUSB]musb_hub_control 374: port status 00000100,devctl0x80[ 1182.476140] binder:502_2: [MUSB]musb_hub_control 374: port status 00000100,devctl0x80[ 1182.476968] binder:502_2: [MUSB]musb_hub_control 374: port status 00000100,devctl0x80[ 1183.827660] charger_thread: Vbat4324 vbats0 vbus:5060 ibus:0 I0 T33 uisoc:87 type:stdstd idx:0 ta_stat:0 swchg_ibat:0 cv:4352000 cmd_pp:-1[ 1183.830240] charger_thread: [__mtk_pdc_get_setting]watt:14500000,5000000,5000000 up:0,1 vbus:5060000 ibus:1000, mivr:0,0[ 1183.830275] charger_thread: [__mtk_pdc_get_setting]vbus:9000:5000:5000 current:3000 idx:0 default_idx:0[ 1183.830331] charger_thread: [__mtk_pdc_setup]idx:0:0:1:0 vbus:5000 cur:3000 ret:-100

相关新闻

计算机毕业设计之垃圾分类宣传网站

计算机毕业设计之垃圾分类宣传网站

随着信息化时代的到来,系统管理都趋向于智能化、系统化,垃圾分类宣传网站也不例外,但目前国内的有些网站仍然都使用人工管理,网站规模越来越大,同时信息量也越来越庞大,人工管理显然已无法应对时代的变化&a…

2026/7/9 11:36:26阅读更多 →
硬币大小激光雷达迎来新突破

硬币大小激光雷达迎来新突破

自动驾驶领域的感知技术正在不断向小型化发展。近日,基于硅光子芯片技术的新一代纯固态激光雷达取得进展,将多个光学相控阵列集成到一块接近硬币大小的芯片中,让激光雷达的体积进一步缩小。与传统激光雷达相比,纯固态方案取消了旋…

2026/7/9 11:36:26阅读更多 →
百款风机功率曲线和数据获取入口

百款风机功率曲线和数据获取入口

做风电出力仿真、机组选型或电力交易预测时,风机功率曲线是最基础也最头疼的输入参数。不同机型、不同版本、不同来源的数据往往格式各异,手动整理不仅耗时,还容易引入单位换算或插值误差。本文记录我在项目中尝试过的几种数据获取方式&#…

2026/7/9 11:36:26阅读更多 →
iPSC规模化培养工艺优化:PBS Mini垂直轮生物反应器接种流程详解

iPSC规模化培养工艺优化:PBS Mini垂直轮生物反应器接种流程详解

关键词:iPSC、诱导多能干细胞、iPSC规模化培养、PBS Mini生物反应器、PBS垂直轮生物反应器、iPSC 3D聚集体培养、单细胞传代、培养基预平衡、ROCK抑制剂、接种密度 摘要: iPSC 3D聚集体培养从2D种子细胞体系转入生物反应器体系时,接种流程往…

2026/7/9 12:51:43阅读更多 →
WarcraftHelper:魔兽争霸III终极兼容性增强插件完整使用教程

WarcraftHelper:魔兽争霸III终极兼容性增强插件完整使用教程

WarcraftHelper:魔兽争霸III终极兼容性增强插件完整使用教程 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper 还在为经典魔兽争霸III在现代…

2026/7/9 12:51:43阅读更多 →
WarcraftHelper:魔兽争霸III现代兼容性增强插件全面指南

WarcraftHelper:魔兽争霸III现代兼容性增强插件全面指南

WarcraftHelper:魔兽争霸III现代兼容性增强插件全面指南 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper 还在为经典魔兽争霸III在现代操作…

2026/7/9 12:51:43阅读更多 →
WarcraftHelper:魔兽争霸3终极增强插件完全使用指南

WarcraftHelper:魔兽争霸3终极增强插件完全使用指南

WarcraftHelper:魔兽争霸3终极增强插件完全使用指南 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper 还在为经典魔兽争霸3在现代电脑上遇到…

2026/7/9 12:51:43阅读更多 →
L9958与STM32F405ZG电机控制方案设计与优化

L9958与STM32F405ZG电机控制方案设计与优化

1. 为什么选择L9958与STM32F405ZG组合 在电机控制领域,芯片选型直接决定了系统性能天花板。L9958作为意法半导体(ST)专为汽车电子设计的H桥驱动器,与STM32F405ZG这款带FPU的Cortex-M4 MCU组合,能实现传统方案难以企及的动态响应和能效表现。 …

2026/7/9 12:51:43阅读更多 →
5分钟搭建:FitGirl游戏启动器完全配置手册

5分钟搭建:FitGirl游戏启动器完全配置手册

5分钟搭建:FitGirl游戏启动器完全配置手册 【免费下载链接】Fitgirl-Repack-Launcher An Electron launcher designed specifically for FitGirl Repacks, utilizing pure vanilla JavaScript, HTML, and CSS for optimal performance and customization 项目地址…

2026/7/9 12:46:42阅读更多 →
从GitHub安全案例解析常见漏洞与防护实践

从GitHub安全案例解析常见漏洞与防护实践

1. 项目概述:从GitHub Trending看安全实战 最近在GitHub Trending上看到一个项目,叫 skills4/skills ,它因为一些安全漏洞案例被大家讨论。这其实是一个挺典型的场景:一个旨在展示或教授某种技能的仓库,本身却成了安…

2026/7/9 5:56:19阅读更多 →
MLT 2026启示:因果推理与概率建模驱动下一代LLM应用

MLT 2026启示:因果推理与概率建模驱动下一代LLM应用

# MLT 2026启示:因果推理与概率建模驱动下一代LLM应用## 一、背景与挑战:从“黑箱预测”到“可信推理”2026年6月,第7届机器学习与趋势国际会议(MLT 2026)将在悉尼召开。会议议程中,“因果与可解释机器学习…

2026/7/9 9:45:20阅读更多 →
通达OA SQL注入漏洞深度剖析:从手工注入到自动化利用与防御

通达OA SQL注入漏洞深度剖析:从手工注入到自动化利用与防御

1. 项目概述与漏洞背景最近在梳理一些历史OA系统的安全风险时,通达OA v11.6版本中的一个老漏洞又进入了我的视线。这个漏洞位于/general/bi_design/appcenter/report_bi.func.php文件中,是一个典型的SQL注入点。虽然这个漏洞的利用方式看起来并不复杂&am…

2026/7/9 2:47:07阅读更多 →
Three.js 着色器光效教程

Three.js 着色器光效教程

着色器光效 Shader Light ▶ 在线运行案例 案例合集: 三维可视化功能案例(threehub.cn)开源仓库github地址: https://github.com/z2586300277/three-cesium-examples400个案例代码: 网盘链接 你将学到什么 ShaderMaterial 自…

2026/7/9 0:04:37阅读更多 →
如何5分钟掌握CS2智能库存管理:开源工具CASEMOVE终极指南

如何5分钟掌握CS2智能库存管理:开源工具CASEMOVE终极指南

如何5分钟掌握CS2智能库存管理:开源工具CASEMOVE终极指南 【免费下载链接】casemove A dedicated desktop app that enables you to move items in and out of storage units in CS2. 项目地址: https://gitcode.com/gh_mirrors/ca/casemove 还在为CS2存储单…

2026/7/9 0:04:37阅读更多 →
GBase 8a vs MySQL 8.0:ALTER TABLE语法与限制的5点关键差异对比

GBase 8a vs MySQL 8.0:ALTER TABLE语法与限制的5点关键差异对比

GBase 8a与MySQL 8.0:ALTER TABLE语法差异深度解析与实战指南1. 两种数据库的ALTER TABLE能力全景对比在数据库架构设计和运维过程中,表结构变更(DDL操作)是不可避免的需求。GBase 8a作为国产分析型数据库代表,与开源M…

2026/7/9 0:04:37阅读更多 →
YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

如果你在部署 YOLOv8 时,发现推理速度只有可怜的 1-2 FPS,而别人的演示视频却能跑到 30 FPS 以上,那么问题很可能不在模型本身,而在于你的整个处理链路。很多开发者拿到一个训练好的 YOLOv8 模型后,会直接使用官方示例…

2026/7/9 9:45:20阅读更多 →
Coze与Dify对比指南:低代码AI应用开发从入门到实战

Coze与Dify对比指南:低代码AI应用开发从入门到实战

1. 从零到一:为什么你需要了解 Coze 和 Dify?如果你对 AI 应用开发感兴趣,但一看到“大模型”、“智能体”、“工作流”这些词就头疼,觉得门槛太高,那这篇文章就是为你准备的。很多开发者,包括我自己&#…

2026/7/8 13:42:39阅读更多 →
AI生图工具怎么选?2026年6月版实测对比

AI生图工具怎么选?2026年6月版实测对比

做自媒体的朋友应该都有体会:配图一直是个让人头疼的问题。2026年,AI生图工具已经非常成熟了,但工具太多反而不知道怎么选。以下是截至2026年6月我对主流AI生图工具的实测对比。Midjourney V8.1:速度之王2026年6月11日&#xff0c…

2026/7/8 13:42:39阅读更多 →