新闻详情

新闻详情

首页 / 资讯中心 / 详情

换ESP32-S3开发板为何要重新适配?板级差异与移植实战

发布时间:2026/9/24 23:52:32来源:尧图网络
换ESP32-S3开发板为何要重新适配?板级差异与移植实战
最近在折腾“小智”这个项目的时候发现一个特别有意思的现象同一套源码在A开发板上跑得好好的编译烧录一次点亮声音正常语音对话也没问题结果换到另一块同样用ESP32-S3芯片的开发板上要么启动环回重启要么屏幕花屏要么麦克风一点声音都采不到。最离谱的是有时候只是换了一个开发板型号连代码都没动编译就报错了。于是很多朋友会问不就是同一颗芯片嘛源码都是同一套怎么换块板子还要重新适配这个问题的答案远不止“改个引脚”这么简单。它背后涉及的是开发板的板级硬件设计差异、外设资源配置、启动流程配置、甚至供电和时钟树的差异。这篇文章就基于我实际折腾的经验把“换ESP32开发板需要重新适配”这件事拆开揉碎讲清楚顺便把我适配过程中踩过的坑和排查方法一并整理出来。1. 为什么同一套源码换块开发板要重新适配1.1 开发板不等于芯片引脚分配完全不同很多人第一反应是ESP32-S3不是有很多GPIO吗只要芯片一样代码应该通用啊。理论上是这样但实际开发板不是芯片本身而是芯片加一堆外围电路组成的系统。同一颗ESP32-S3在不同开发板上GPIO口被分配到了完全不同的功能上。举个最典型的例子一块开发板把I2S音频的SCK接在GPIO4上另一块板把同一个GPIO4接到了屏幕的背光控制上。源码里初始化音频的时候用GPIO4输出BCLK时钟信号到了第二块板子上这个信号就变成了屏幕背光的PWM波形。结果就是屏幕亮度忽明忽暗而音频完全没有声音。这就是适配的第一个痛点板级引脚映射不同。源码里硬编码的引脚定义是严格按照某一块具体开发板的电路设计写的而不是按芯片默认功能写的。在实际项目里这个问题尤其常见。因为很多小智类的语音助手项目外设特别多屏幕、麦克风、功放、SD卡、按键、RGB灯、甚至还有以太网模块。这么多外设每个都要占用一个或多个GPIO而不同开发板的设计者在布线时可以自由选择哪个外设接在哪个引脚上。于是看似“同一套源码”其实整套引脚配置都绑死了特定开发板的电路。1.2 外设驱动绑定的不是芯片而是板级电路换个角度理解ESP32芯片提供的是通用的硬件能力比如I2S接口、SPI接口、I2C接口、ADC等。但开发板上把这些接口具体接到了哪个设备、哪颗芯片、哪个引脚上这是板级设计决定的。比如你用小智源码里自带的LCD驱动它初始化屏幕时除了设置SPI引脚还会设置屏幕的复位引脚、背光引脚、甚至触摸芯片的中断引脚。这些引脚在不同开发板上的位置可能完全不一样。再比如有些开发板用的是ST7789屏幕有些用的是ILI9341虽然都是SPI接口的LCD但初始化序列不同色彩格式不同甚至SPI模式都有差异。这就不是简单改引脚能解决的还要改驱动参数。再往深处说很多语音项目里会用到音频编解码芯片比如ES8311。不同开发板上ES8311的I2C地址可能因为硬件上拉了不同引脚而不同I2S的引脚配置也可能不一样。音频驱动的适配不仅要把GPIO改对还要确保I2C地址、采样率配置、MCLK来源都匹配。这一层如果不做适配代码跑起来要么初始化失败要么有噪声、没声音。1.3 Flash、PSRAM与分区表存储层面的隐藏差异这一块是很多新手最容易忽略的地方但在实际适配中它是导致“编译能过、烧录能成功、上电就重启”的头号原因。不同开发板上的Flash大小不一样。有些板子用的是8MB Flash有些是16MB甚至32MB的也有。PSRAM外部伪静态随机存储器更是五花八门有2MB、8MB、16MB的还有Octal PSRAM和Quad PSRAM的区别。而像小智这样的项目通常依赖PSRAM来跑AI语音识别模型或者加载较大的前端资源。源码里如果默认配置的是8MB Octal PSRAM换到一块只有2MB Quad PSRAM的板子上编译出来的固件一上电内存初始化就会出错表现就是反复重启、或者卡死在启动日志里。分区表也同样麻烦。源码里烧录时用的分区表如果预设了特定大小比如model分区分配了4MB但新板子的Flash总共就只有4MB分区表就溢出了。很多情况下你烧录时没注意把固件区写到了超出Flash实际大小的地址结果就是“看起来烧录成功实际跑不起来”。所以适配时一定要先看清楚目标开发板的Flash容量、PSRAM类型和大小然后去menuconfig里把对应的配置改对。这一步不做后面全是白忙。1.4 时钟、电源与模拟外设的微妙区别还有一类适配点比引脚和外设更隐蔽那就是时钟和电源。ESP32系列的芯片部分型号支持外部晶振频率选择比如40MHz晶振是默认但有些开发板出于成本和货源考虑用了26MHz甚至32MHz的晶振。如果源码默认外部晶振是40MHz而板上实际是26MHz那么串口日志会乱码、Wi-Fi连不上、系统时钟全部错乱。电源方面的问题通常出现在外设同时工作的时候。比如带屏幕、音频功放和Wi-Fi同时工作瞬间电流可能超过开发板稳压芯片的承受范围。某些便宜的开发板用AMS1117-3.3供电但ESP32-S3在Wi-Fi发射时瞬间电流能到500mA以上如果板子上的稳压器余量不足就会出现“单独测每个功能都正常整体跑起来就随机重启”的诡异问题。模拟外设也有坑。ESP32-S3的ADC参考电压、触摸引脚在不同开发板上的滤波电路不同会导致采样值漂移。比如电池电压检测、麦克风增益等在A板上调好的阈值到B板上可能偏得离谱。这种情况一般不会让项目跑不起来但会影响体验比如电量显示不准、语音唤醒灵敏度下降等。2. 拿到新板子先别急着改代码这三件事是适配前的必修课2.1 查官方资料拿到引脚定义表适配的第一步不是打开源码开始改而是先去找目标开发板的引脚定义表。不管是官方开发板还是第三方板子一般都会提供原理图或者引脚图。如果卖家没给就直接去产品页面、GitHub仓库或者wiki里找。拿到引脚定义表后重点关注几个部分芯片的实际可用GPIO有哪些、哪些引脚被板载外设占用、哪些引脚引出了排针、哪些引脚有特殊作用比如只能做输入、不能做输出。注意不同开发板对同一颗芯片的引脚利用程度差别很大。有的板子把所有GPIO都引出来了有的则被SD卡、Flash、屏幕等占用了大半。我在适配时通常会把原开发板的目标板引脚定义整理成一个Excel表格按功能分组屏幕、音频、SD卡、按键、LED、串口、I2C等。这个表在后面改代码的时候会频繁用到整理一次能省很多来回翻资料的功夫。2.2 跑一个最小工程先把串口点亮不要一上来就直接拿完整的小智源码去适配那样一旦出错你根本不知道问题出在引脚、驱动还是其他地方。我的习惯是先拿ESP-IDF自带的hello_world或者uart_echo这类最小工程烧到新板子上确认最基础的环境没问题。这一步能验证几个东西开发板能不能正常上电、USB转串口芯片是否正常、串口引脚是否正确、编译工具链是否支持这块板子的目标芯片。如果连最小工程都跑不起来那就先别碰项目代码优先解决工具链和硬件问题。跑通hello_world之后我一般还会再跑一个外设自测程序把目标板上的主要外设逐个点亮一遍确认引脚定义表与实际硬件一致。比如逐个拉高GPIO来测量电压确认哪个引脚连着哪个LED写一段I2C扫描代码确认屏幕触摸芯片、音频编解码器在I2C总线上的实际地址。这一步虽然看起来繁琐但真的是避坑神器。2.3 确认四组关键参数Flash、PSRAM、晶振与供电在做任何源码适配前强烈建议先确认这四个参数Flash大小和型号常见的有4MB、8MB、16MB封装有SOP8、QPI等区别PSRAM类型和大小有些板子根本没有PSRAM有些是Quad PSRAM有些是Octal PSRAM外部晶振频率ESP32-S3一般用40MHz但部分低成本板子会用26MHz供电方式与最大电流板载LDO型号、Type-C供电还是排针供电、功放是否需要单独供电这些参数怎么查最快的办法是看开发板原理图其次看板载芯片丝印。比如板子上有一颗8MB的Flash芯片丝印上会标出型号去查数据手册就知道具体规格。PSRAM同理。拿到这些参数后再去ESP-IDF的menuconfig里对号入座。建议在做大改动之前先花十分钟把这几项确认清楚否则后面在编译配置上反复试错时间成本反而更高。3. 实际适配一次给你看从开发板A到开发板B的完整流程3.1 对比引脚映射建立映射关系表我这次实际适配的场景是从一块自制的ESP32-S3语音开发板换到另一块市面上常见的ESP32-S3-LCD开发板。目标是把小智源码完整跑起来包括LCD显示、音频输入输出、SD卡和按键。首先我把两块板的原理图导出来整理了一份关键外设引脚对照表外设功能原开发板引脚新开发板引脚备注LCD SPI CLKGPIO12GPIO15屏幕时钟信号LCD SPI MOSIGPIO11GPIO16屏幕数据信号LCD CSGPIO10GPIO7片选LCD DC(RS)GPIO9GPIO6数据/命令选择LCD RSTGPIO8GPIO5复位LCD BL(背光)GPIO45GPIO4PWM背光I2S MCLKGPIO0GPIO20音频主时钟I2S BCLKGPIO3GPIO19音频位时钟I2S WS(LRCK)GPIO4GPIO21左右声道选择I2S DOUTGPIO5GPIO22音频输出数据I2S DINGPIO6GPIO23音频输入数据I2C SCLGPIO7GPIO3触摸/音频配置I2C SDAGPIO8GPIO4触摸/音频配置SD卡 CSGPIO41GPIO18SPI模式SD卡片选按键GPIO39/40GPIO0/1注意GPIO0/1是启动引脚以太网模块(备用)无GPIO13/14RMII接口表格列出来之后问题一目了然几乎所有外设引脚都变了。有些引脚功能还需要特别注意比如原板用的GPIO45做背光新板改成GPIO4而GPIO4在原板上是I2S WS引脚这种交叉占用如果不仔细看很容易改错。这个案例也说明了一个道理适配的核心工作就是把源码里所有与硬件外设相关的引脚定义从旧的映射表全部迁移到新的映射表上。3.2 修改menuconfig与板级配置拿到引脚映射表后我开始改源码。小智这类项目通常会把板级配置集中在一个配置文件里比如board.h或者sdkconfig.defaults。如果项目结构比较规范一般只需要改一个头文件即可。但很多开源项目为了兼容不同开发板提供了menuconfig选项这种方式更适合动态适配。在menuconfig里我主要改了这几项设置目标芯片为ESP32-S3设置Flash大小为8MB设置PSRAM为Octal 8MB新板子支持原板也是设置外部晶振频率为40MHz打开LCD、音频、SD卡、按键等外设的对应驱动选择具体的LCD驱动类型ST7789还是ILI9341这里要看实际驱动这里要特别说一句sdkconfig文件不要直接手动改因为ESP-IDF编译时会重新生成。正确做法是删除旧的sdkconfig然后执行idf.py menuconfig把所有配置重新选一遍。这样才能保证配置的一致性。另外很多项目会在menuconfig里区分不同开发板的预设。比如BOARD_TYPE这个选项选择后会自动加载一套适用于某款开发板的引脚配置。如果项目没有提供你的开发板型号那就需要自己在board.h或者类似的文件里手动定义一个开发板选项然后把引脚映射表对应进去。3.3 编译、烧录、验证的闭环配置改完之后就是经典的编译、烧录、验证循环。我先执行idf.py fullclean清掉旧的编译产物再执行idf.py build。这一步很重要。因为很多时候旧的外设配置会以宏定义的形式残留在编译缓存里导致你明明改了配置编译出来的固件还是老样子。编译通过后烧录我习惯分两步走先用idf.py -p COMx flash把固件烧进去再单独打开串口监视器看启动日志。启动日志里重点看几个部分Flash和PSRAM是否识别正确、外设初始化是否成功、各个驱动的寄存器配置是否符合预期。如果日志里出现D (xxx) spi_master: SPI1: New bus max_transfer_sz之类的提示说明SPI总线初始化正常如果出现E (xxx) gpio: GPIO number is invalid则说明引脚设置有冲突需要回去查引脚映射表。第一次烧录后屏幕大概率是不亮的。这时不要慌先确认背光引脚是否拉高。很多屏幕的背光默认是低电平关闭的如果源码里的背光引脚初始化逻辑与目标板不一致就会黑屏。然后检查SPI初始化参数比如时钟频率、SPI模式、数据位宽等是否与屏幕数据手册匹配。屏幕驱动如果初始化失败有时候串口日志不会直接报错但屏幕就是没反应。音频方面同理初始化成功后通常可以在日志里看到类似ES8311 init成功的信息。如果没有检查I2C地址是否正确、I2S引脚是否配置正确。音频的坑比屏幕更多因为除了引脚还要确认采样率、位深、声道数和主时钟频率。小智项目里如果麦克风采音正常但播放无声多半是I2S DOUT与功放输入引脚没对上或者功放使能脚没有拉高。整个编译、烧录、验证的循环我一般会重复好几轮每轮解决一个问题。这个阶段最忌讳的就是一次改太多你应该每次只改一个变量验证一个功能这样出了问题才知道是什么引起的。3.4 适配过程中常用的代码技巧在适配过程中有几个代码级的技巧可以显著降低工作量。第一个技巧是使用配置文件集中管理所有引脚。把每个外设的引脚定义抽取到一个单独的头文件里比如target_board.h然后用条件编译或宏来选择不同的开发板配置。这样做的好处是以后换板子只需要新增一个配置不用动业务代码。我在自己的项目里一般会定义这样的宏#if defined(CONFIG_BOARD_TYPE_A) #define PIN_LCD_CLK 12 #define PIN_LCD_MOSI 11 #define PIN_LCD_CS 10 #define PIN_LCD_DC 9 #define PIN_LCD_RST 8 #define PIN_LCD_BL 45 #elif defined(CONFIG_BOARD_TYPE_B) #define PIN_LCD_CLK 15 #define PIN_LCD_MOSI 16 #define PIN_LCD_CS 7 #define PIN_LCD_DC 6 #define PIN_LCD_RST 5 #define PIN_LCD_BL 4 #endif这样业务代码里只用PIN_LCD_CLK这个宏跟具体是哪块开发板完全解耦移植起来非常方便。第二个技巧是善用menuconfig的kconfig文件。在项目里注册一个BOARD_TYPE选择项可选项是各个开发板的名字然后在头文件里通过CONFIG_BOARD_TYPE_A这类宏来加载不同配置。这种方法最适合多块开发板来回切换的场景。第三个技巧是写一个硬件自检函数。适配完成后在main函数最开始调用一次把所有外设初始化一遍并打印出结果。哪个外设初始化失败日志里直接就有提示。这比一个功能一个功能手动测试要高效得多。4. 适配过程中的常见问题与排查技巧实录4.1 编译能过上电就无限重启这个现象在换板子后特别常见而且最容易让人一头雾水。编译、烧录都成功了一上电串口日志刷到一半系统就重启了然后反复循环。优先检查的地方是PSRAM配置。笔记里提过ESP32-S3如果配置了Octal PSRAM但板上实际是Quad PSRAM系统在初始化内存时就会失败并触发panic。日志里通常能看到类似PSRAM ID read error或者SPI RAM not found的信息。解决办法很简单在menuconfig里把SPIRAM模式改成和板子一致。第二个高频原因是Flash大小配置大于实际Flash。比如编译配置里选的16MB板上实际只有8MB烧录时固件可能被写到超出Flash实际地址的位置导致启动时读取异常。解决方法是确认Flash容量后重新配置并注意分区表大小不能溢出。第三个原因是供电不稳。这往往在带屏幕和音频功放的板子上出现。上电瞬间屏幕背光和功放同时启动瞬时电流太大触发电源保护或稳压器压降导致芯片复位。排查方法是在启动日志里看是否有Brownout检测触发ESP-IDF通常会在日志里输出Brownout detector was triggered。如果是这个问题可以尝试降低LCD背光初始化时的默认亮度或者在代码里错开外设的启动顺序。4.2 串口没有日志或者乱码换了开发板之后串口日志没输出这个现象也经常遇到。原因一般有两个串口引脚不对或者日志波特率不匹配。先检查串口引脚。ESP32-S3的默认日志输出引脚是GPIO43和GPIO44但有些开发板为了使用这两个引脚做其他功能把日志输出重映射到了别的引脚。如果板子原理图上写的日志引脚和源码里不一致就需要在menuconfig里修改CONFIG_ESP_CONSOLE_UART_TX_GPIO和RX_GPIO。波特率的问题通常在晶振不匹配时出现。如果开发板使用26MHz晶振而代码默认40MHz串口输出的波特率会偏差导致电脑上的串口工具看到乱码。这时进入menuconfig把Crystal Oscillator Frequency改为实际的26MHz即可。改完重编译烧录乱码问题一般就解决了。另外有些开发板板载的USB转串口芯片会占用GPIO19和GPIO20如果你用这两根线做I2S或其他功能也会导致串口异常。这种情况需要仔细看原理图确认串口芯片连接到芯片的哪个引脚。4.3 屏幕不亮、花屏或触摸失灵屏幕问题在适配中占比非常高尤其是在不同品牌屏幕之间切换时。屏幕不亮先检查SPI引脚方向是否正确特别是某些板子上的LCD MOSI与MISO是否画反了。再检查CS、DC、RST、BL这几个引脚是否正确初始化。大部分情况下背光引脚如果默认输出低电平屏幕看起来就像没通电一样。解决方法是把背光引脚初始化为高电平或者加上PWM控制。花屏问题一般有两个方向一是SPI时序不匹配比如SPI模式Mode 0还是Mode 3、时钟极性和相位设置错误。二是屏幕初始化序列不对。不同屏幕厂商的驱动IC初始化命令差异很大换屏幕后如果驱动里用的还是旧屏幕的初始化数组就会出现花屏、偏色甚至只显示一半画面。触摸失灵首先检查I2C地址。很多触摸芯片有多个地址可选由硬件引脚的电平决定。如果开发板上的触摸芯片地址和源码里的不一样初始化肯定失败。用I2C扫描工具把所有在线的设备地址扫一遍再和源码里配置的地址比对就能快速定位。这里顺便说一个经验大多数屏幕上会印有驱动IC型号比如ST7789V、ILI9341、GC9503V先用手机拍照放大看清楚再去源码里找对应的驱动文件。如果找不到完全一致的型号也要优先选兼容型号的驱动初始化序列去试成功率会高很多。4.4 以太网模块不工作LAN8720的经典坑位小智项目如果要接以太网比如LAN8720模块适配的时候会碰上几个非常经典的坑我在这里专门说一下。第一个坑是RMII参考时钟的选择。LAN8720的REF_CLK可以来自外部晶振也可以来自ESP32的GPIO0输出。不同的开发板硬件设计可能不同有的板子把REF_CLK从外部晶振直接提供给LAN8720有的需要ESP32从GPIO0提供50MHz时钟。如果配置选择的时钟源和实际硬件不一致以太网会一直link不上。解决方法是仔细看原理图确认LAN8720的REF_CLK是由晶振提供还是由MCU提供然后在menuconfig里选择对应的选项。第二个坑是复位引脚。LAN8720的复位引脚必须按时序正确复位否则芯片可能处于异常状态。很多模块的复位引脚是和ESP32某个GPIO相连的如果代码里没有正确拉低再拉高或者复位引脚和另一个外设共用导致的干扰就会出现PHY检测不到的情况。日志里一般会有emac_phy: PHY attached to EMAC failed的字样这时先检查复位引脚的配置和时序。第三个坑是PHY地址。LAN8720的PHY地址默认是0但有一些模块或开发板通过外部上下拉改成了1。如果代码里默认用的PHY地址是0而实际硬件是1就会导致网卡初始化成功但PHY通信不上表现出来就是插上网线后一直无法获取IP地址。读取模块原理图确认PHYAD引脚的电平再去代码里把PHY地址改成对应值即可。附带的接线问题也很值得注意。RMII接口需要TXD0、TXD1、TX_EN、RXD0、RXD1、CRS_DV、REF_CLK这7根信号线再加上MDIO和MDC两根管理线接线时必须严格对应不能错位。我在适配的时候直接用杜邦线连接LAN8720模块和ESP32开发板反复确认了三次每根线的走向才上电。4.5 语音采集/播放异常的几个隐藏原因语音问题的排查难度比前面这些还要高因为症状不直观有时候是完全没有声音有时候是声音断断续续有时候是音量特别小。完全没有声音先检查I2S引脚是否与麦克风、功放的连接一致。很多同学在这里会踩坑I2S的DOUT和DIN搞反了导致播放没声采集也没声。排查方法是用示波器或万用表测I2S引脚看看是否有规律脉冲。如果I2S引脚上有波形但没声音问题多半在功放使能引脚或者音量配置上。音量特别小常见原因是麦克风偏置电压不对。不同麦克风模块需要的偏置电压不同有些模块需要外部提供2.8V偏置有些则不需要。如果源码里没有正确开启麦克风偏置采集下来的信号幅度会很弱语音识别率急剧下降。声音断断续续或刺耳通常是I2S采样率和外设不匹配。小智项目里音频编解码芯片ES8311比较常见它支持多种采样率但配置不正确时表现就是爆音、杂音。这时候需要重点检查I2S的MCLK频率与采样率的比值是否合理。ES8311一般要求MCLK是采样率的256倍或512倍如果主板上的MCLK来源在硬件上接了不同频率就要相应调整采样率配置。还有一个隐藏很深的坑DAC/功放的I2C地址。ES8311的I2C地址可以通过SA0引脚设置默认0x18但某些板子上设置为0x19。如果初始化时I2C通信失败驱动器不会报错但音量设置、EQ配置都无效表现出来就是初始化正常但音频输出异常。用I2C扫描工具确认地址后再去代码里改掉即可。实测下来的几点体会经过这次从开发板A适配到开发板B的完整过程我有一个很深的体会换开发板“重新适配”不是代码有bug而是嵌入式开发里很正常的流程。硬件千差万别软件要想跑得稳必然要跟具体硬件对齐这个工作省不掉。如果把这个适配过程规范化建立一个好的板级配置层把引脚、外设、存储参数都集中管理起来之后再换板子工作量会大幅下降。我目前的做法是在项目里维护一个boards目录每个开发板一个配置文件同时把常用的硬件参数做成图形化配置项这样不同板子之间的切换从原来的一天折腾缩短到现在半个小时以内。最后再分享一个小技巧拿到一块新开发板先别急着刷完整固件先花半小时把最小工程跑通同时用手头的万用表和逻辑分析仪把关键引脚的波形测一遍。磨刀不误砍柴工这个习惯帮我省下的时间远远超过了我花在验证上的半小时。
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

汽车电子底层软件开发:AUTOSAR与CAN总线实战解析 2026/9/24 23:59:54

汽车电子底层软件开发:AUTOSAR与CAN总线实战解析

1. 这门“汽车电子底层软件开发就业课”到底在教什么?——不是写个LED闪烁就能上岗的很多人看到“汽车电子底层软件开发就业课”这个标题,第一反应是:不就是嵌入式C语言单片机CAN通信?刷几道LeetCode、调通一个STM32 CAN收发例程&…

阅读更多 →
Vim基础操作全攻略:保存退出、模式切换与高频命令实战 2026/9/24 23:59:54

Vim基础操作全攻略:保存退出、模式切换与高频命令实战

1. 项目概述1.1 核心需求解析今天聊聊Vim。写这个题目的原因是:几乎每个后端开发者、运维人员、数据工程师某天都会遇到一个场景——深夜加班,服务器登录界面只有黑底白字,编辑器只有vi/vim,你必须在五分钟内完成一次配置修改并保…

阅读更多 →
Python+CNN车牌识别实战:从数据预处理到模型训练与部署 2026/9/24 23:59:54

Python+CNN车牌识别实战:从数据预处理到模型训练与部署

简介:基于Python与卷积神经网络的车牌识别项目,面向计算机视觉初学者及智能交通开发者,目标是帮助用户掌握从数据预处理、模型构建到实际部署的完整流程。压缩包共25个文件,包含jpg/png图像样本、py训练脚本、md说明文档、dat数据…

阅读更多 →
AI元人文:从工具使用到思维重构的深度探索 2026/9/24 23:59:54

AI元人文:从工具使用到思维重构的深度探索

最近半年我一直在琢磨一件事:AI元人文到底是什么?说白了,就是“用元视角重新审视人与AI的关系”,也在“探索AI如何反向逼着我们发现自己的思考边界”。标题里的“元探索”,在我看就是一层套一层的追问——当你用AI解决…

阅读更多 →
《AI Agent 场景应用 - MobileOpenClaw》第5-9节:会话上下文细化处理实战指南 2026/9/24 23:59:47

《AI Agent 场景应用 - MobileOpenClaw》第5-9节:会话上下文细化处理实战指南

文档教程后端 【免费下载链接】CodeGuide :books: 本代码库是作者小傅哥多年从事一线互联网 Java 开发的学习历程技术汇总,旨在为大家提供一个清晰详细的学习教程,侧重点更倾向编写Java核心内容。如果本仓库能为您提供帮助,请给予支持(关注、…

阅读更多 →
写出来的,和没写的——七个模块,一副骨头 2026/9/24 23:59:47

写出来的,和没写的——七个模块,一副骨头

「合金日记」第 85 篇 「小艾说」第 34 期 幕后弧(换弧开篇) 从「写谁」转向「怎么写」 专栏连载中 前篇:《听漏了,还是听深了——一个 a,一句禅》 模块 骨架 沉默 对位 骨头 没看过前篇也能读 没看过前八十…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞