RT-Thread入门实战:三种主流工程创建方案详解与避坑指南
1. 项目概述为什么从“新建工程”开始如果你刚接触RT-Thread面对这个功能丰富的实时操作系统可能会感到有些无从下手。是直接研究内核源码还是先跑个Demo我的建议是别想太多就从“新建一个工程”这个最基础的步骤开始。这听起来简单但却是你理解RT-Thread项目结构、构建流程和开发环境的关键第一步。很多新手卡在环境配置上或者生成的工程根本跑不起来问题往往就出在第一步没走对。RT-Thread的工程创建方式比较多样官方也提供了不同的工具链比如基于Eclipse的RT-Thread Studio或者更灵活的ENV工具配合Keil、IAR等。网络上相关的教程和热搜词也很多像“STM32CubeMX”、“ENV工具链”都是高频词汇。这恰恰说明大家在这个入门环节遇到了各种选择和实践上的困惑。今天我就以最常用的几种组合为例手把手带你走通从零创建一个可以编译、下载、运行的RT-Thread工程的全过程。我们会涵盖RT-Thread Studio图形化创建、ENV Keil/MDK的传统方式以及如何利用STM32CubeMX进行芯片级初始化再嫁接RT-Thread内核。目标只有一个让你拿到一个“干净”且“可运行”的起点为后续的深入学习扫清障碍。2. 核心思路与工具选型三种主流路径详解在动手之前我们得先理清思路。RT-Thread的工程创建核心是搭建一个包含RT-Thread内核源码、板级支持包BSP、用户应用程序的完整项目框架并配置好对应的编译工具链。根据你的开发习惯和硬件平台主要有以下三条路径2.1 路径一RT-Thread Studio一站式图形化方案这是RT-Thread官方推出的集成开发环境IDE基于Eclipse打造。它的最大优势是“开箱即用”和“高度集成”。优点内置了RT-Thread内核、软件包管理器、配置工具类似图形化ENV、调试器支持等。你不需要手动管理源码和构建脚本IDE帮你处理了大部分底层工作非常适合快速入门和原型开发。缺点环境相对“重”定制化程度不如命令行方式灵活。对于从传统Keil/MDK或IAR迁移过来的开发者可能需要适应其界面和构建流程。适用场景RT-Thread新手、希望快速验证想法、项目开发周期短、偏好图形化操作。2.2 路径二ENV工具 Keil/MDK/IAR灵活的命令行传统IDE方案这是更接近“原教旨主义”的RT-Thread开发方式。ENVRT-Thread Env是一个命令行工具集合包含包管理器menuconfig、构建系统scons等。优点极致灵活。你可以使用任何你熟悉的编辑器如VS Code和编译器ARM GCC, Keil ARMCC等。通过ENV命令可以轻松添加、删除、配置软件包。项目结构清晰便于理解RT-Thread的构建系统SCons。缺点需要一定的命令行操作基础环境配置步骤稍多需要手动关联IDE工程文件如生成Keil工程。适用场景希望深入理解RT-Thread构建过程、项目需要高度定制化、团队已有成熟的Keil/IAR开发流程。2.3 路径三STM32CubeMX初始化 RT-Thread移植硬件驱动分离方案这种方法将硬件底层初始化时钟、引脚、外设与RT-Thread系统开发分离。优点利用STM32CubeMX图形化配置芯片时钟树、外设如UART、SPI、SDIO for FATFS等生成精准的HAL库驱动代码极大减少了底层驱动开发的错误和工作量。然后再手动或半自动地加入RT-Thread内核。缺点整合步骤最复杂需要开发者对CubeMX生成的代码结构以及RT-Thread的BSP有一定了解容易在初始化流程、中断处理等方面出问题。适用场景使用ST的STM32系列芯片、项目外设复杂、对STM32CubeMX和HAL库熟悉、希望复用现有CubeMX工程。我的选择建议纯新手无脑选路径一RT-Thread Studio它能让你在10分钟内看到第一个点灯程序。想深入学习和长期使用的建议掌握路径二ENVKeil这是理解RT-Thread生态的核心技能。路径三CubeMXRT-Thread更适合已有STM32CubeMX项目基础想引入RT-Thread的开发者作为进阶技能掌握。接下来的实操我将以路径一RT-Thread Studio和路径二ENV Keil MDK为重点因为这两者覆盖了绝大多数入门者的需求。路径三我会在最后简要介绍其核心整合思想。3. 实操详解一使用RT-Thread Studio新建工程假设你已经从RT-Thread官网下载并安装了RT-Thread Studio。我们以创建一个基于STM32F407系列开发板的工程为例。3.1 创建新项目启动RT-Thread Studio在欢迎界面或通过File - New - RT-Thread Project启动新建项目向导。选择项目类型通常选择“基于开发板”或“基于芯片”。对于入门选择“基于开发板”更简单因为BSP板级支持包已经适配好。填写项目信息Project Name给你的工程起个名字例如rtthread_f407_demo。Location选择工程存放路径强烈建议路径不要包含中文或空格。选择BSP在“基于开发板”模式下你需要选择对应的厂商和板子型号。例如在“Board Manufacturer”里选择“STMicroelectronics”在“Board Series”里选择“STM32F4 series”然后在具体的“Board Model”里选择你手头的开发板型号如“STM32F407VETx”或“STM32F407ZG”等。如果列表里没有你的确切型号选择一个引脚兼容的即可。RT-Thread版本选择最新的稳定版如v4.1.x。工具链选择“ARM GCC”或“Keil MDK”。如果你安装了Keil可以选择MDK这样Studio会调用Keil的编译器。点击Finish。Studio会自动从云端或本地拉取对应的BSP源码、RT-Thread内核并生成完整的项目结构。3.2 工程结构解析创建完成后在左侧“Project Explorer”中你会看到类似如下的结构rtthread_f407_demo ├── rt-thread/ # RT-Thread内核源码libcpu, components, include, src等 ├── libraries/ # 芯片厂商的库文件如STM32 HAL库 ├── drivers/ # 板级驱动由BSP提供 ├── applications/ # **你的用户应用程序代码放在这里** │ └── main.c # 默认的main文件入口函数int main(void)在这里 ├── board/ # 板级相关配置文件如链接脚本、启动文件 ├── packages/ # 软件包目录后续通过包管理器添加的软件包会放在这里 ├── rtconfig.h # **RT-Thread系统配置头文件核心** └── .project, .cproject # IDE项目文件关键文件说明applications/main.c这是你的主战场。系统启动后会在这里创建初始线程。rtconfig.h通过宏定义配置RT-Thread内核功能如是否启用组件、线程栈大小、优先级数量等。后续你可以通过Studio内置的“RT-Thread Settings”图形化工具来修改它无需手动编辑。3.3 编写第一个程序点亮LED现在我们让这个工程“动”起来。假设你的开发板上LED连接在PC13引脚这是很多F407板子的标配。打开applications/main.c。在文件开头包含必要的头文件#include rtthread.h #include rtdevice.h #include drv_gpio.h // BSP提供的GPIO驱动头文件定义LED引脚根据你的BSP查找引脚定义宏。通常可以在board.h或drv_gpio.c附近找到。假设我们找到定义#define LED_PIN GET_PIN(C, 13)。修改main函数int main(void) { /* 设置LED引脚为推挽输出模式 */ rt_pin_mode(LED_PIN, PIN_MODE_OUTPUT); while (1) { /* 点亮LED (假设低电平点亮) */ rt_pin_write(LED_PIN, PIN_LOW); rt_thread_mdelay(500); // 延时500毫秒使用RT-Thread的延时函数 /* 熄灭LED */ rt_pin_write(LED_PIN, PIN_HIGH); rt_thread_mdelay(500); } return 0; }注意rt_thread_mdelay()是RT-Thread提供的毫秒级延时函数它会使当前线程挂起让出CPU给其他就绪线程是“协作式”的。这与HAL库的HAL_Delay()阻塞延时有本质区别。3.4 配置、编译与下载配置系统可选双击项目下的“RT-Thread Settings”可以图形化地开启或关闭内核功能如FinSH控制台、设备框架、网络协议栈等。对于第一个工程保持默认即可。编译项目点击工具栏上的“Build”按钮锤子图标。Studio会自动调用构建系统。在“Console”窗口查看输出确认没有错误。连接硬件用USB线连接开发板到电脑确保安装了对应的ST-Link/V2等调试器的驱动。下载与调试点击“Debug”按钮虫子图标。Studio会启动调试会话程序将下载到芯片并暂停在main函数入口。点击“Resume”继续运行按钮你应该能看到LED开始闪烁。恭喜你的第一个RT-Thread工程已经成功运行。这个过程看似简单但已经包含了RT-Thread开发的核心流程创建工程、编写应用、编译、下载调试。4. 实操详解二使用ENV工具 Keil MDK新建工程对于喜欢Keil/MDK开发环境或者想更深入了解RT-Thread构建过程的开发者这条路径是必修课。我们以在Windows环境下为一个已有的STM32F103 BSP创建Keil工程为例。4.1 前期准备安装必备软件Keil MDK-ARM确保已安装并激活。ENV工具从RT-Thread官网下载Env工具安装包并安装。安装后你可以在任意文件夹右键看到“ConEmu Here”或“RT-Thread Env”的菜单选项。Git用于拉取源码ENV工具会用到。Python SConsRT-Thread使用SCons作为构建系统。通常ENV工具安装包会自带或提示你安装。获取BSP源码RT-Thread的所有BSP托管在GitHub上。我们使用ENV来拉取。在你准备存放项目的目录如D:\RT-Thread_Projects下右键选择“RT-Thread Env”打开命令行终端。输入命令克隆BSP仓库以stm32系列为例git clone https://github.com/RT-Thread/rt-thread.git进入具体的BSP目录例如cd rt-thread\bsp\stm32\stm32f103-atk-nano这里以正点原子的F103 Nano板BSP为例你可以选择其他BSP4.2 使用ENV配置工程在BSP目录下打开ENV终端确保你的命令行当前路径就在这个BSP目录下。使用menuconfig配置系统输入命令menuconfig并回车。这会启动一个基于文本的图形化配置界面类似Linux内核的配置。在这里你可以用方向键导航空格键选中/取消功能[*]表示编译进内核[M]表示编译为模块[ ]表示不编译。对于第一个工程我们只做最关键的两步 a.选择硬件模块进入Hardware Drivers Config - On-chip Peripheral Drivers确保你板子上的基础外设如UART1用于FinSH控制台被启用。 b.配置FinSH控制台进入RT-Thread Kernel - Kernel Device Object确保Enable console和Use console as shell device被启用。然后在RT-Thread Components - Command shell中确保Using module shell或Using legacy version shell被启用。这能让你通过串口工具如Putty、MobaXterm与RT-Thread交互。配置完成后按ESC键退出并保存配置。更新软件包并生成工程输入命令pkgs --update来更新和下载配置中选中的软件包。输入命令scons --targetmdk5如果你用Keil MDK v5。这个命令会扫描源码根据menuconfig的配置生成一个project.uvprojx的Keil工程文件。如果你想生成IAR工程则使用scons --targetiar。4.3 在Keil MDK中打开并完善工程打开工程在BSP目录下找到生成的project.uvprojx文件用Keil MDK打开它。检查并配置目标芯片打开“Options for Target”对话框魔术棒图标。Device确认芯片型号正确如STM32F103C8Tx。Target确认ROM和RAM的起始地址和大小与芯片一致。Output勾选“Create HEX File”。C/C这里非常重要。确保“Preprocessor Symbols”里定义了芯片相关的宏例如STM32F103xB。更重要的是必须定义RT_USING_NEWLIB这样FinSH才能正常使用标准输入输出。同时包含路径Include Paths应该已经由SCons自动添加好了包含RT-Thread内核头文件、BSP头文件等。Debug选择你的调试器如ST-Link并点击“Settings”确认SWD接口和速度设置正确。Utilities设置调试器的下载算法如STM32F1xx Flash。编写用户代码在BSP目录下找到或创建applications文件夹里面的main.c就是你的用户应用入口。Keil工程应该已经把这个文件包含进去了。你可以像在Studio里一样编写LED闪烁的代码。注意在ENV方式下main.c中的main函数会被RT-Thread的启动代码自动调用。编译与下载在Keil中点击“Rebuild”编译。无误后点击“Load”下载到开发板。4.4 验证连接FinSH控制台用USB转串口线连接开发板的UART1或其他你配置为控制台的串口到电脑。打开串口调试助手如Putty、SecureCRT设置正确的串口号、波特率通常是115200、8N1。给开发板上电或复位。你应该在串口助手中看到RT-Thread的启动Logo以及类似msh 的命令行提示符。输入list_thread命令可以查看当前系统中所有线程的状态、优先级、栈使用情况。这是RT-Thread FinSH shell提供的强大调试功能之一。至此你通过ENVKeil的方式也成功创建并运行了RT-Thread工程。这种方式让你对项目的构建依赖、配置选项有了更直观的认识。5. 核心环节RT-Thread工程构建系统SCons浅析无论是Studio还是ENV底层都依赖于SCons这个构建工具。理解它有助于你解决一些复杂的构建问题。SCons是什么它是一个用Python编写的软件构建工具是Make的现代替代品。RT-Thread使用SCons来描述源码之间的依赖关系和构建规则。关键文件SConstruct构建入口文件位于BSP根目录。它定义了全局的构建环境编译器、编译选项等。SConscript散布在各个子目录如applications,drivers,libraries中用于声明该目录下哪些源文件需要被编译以及如何编译。rtconfig.py由menuconfig根据你的配置自动生成里面全是Python变量定义了哪些模块被启用RT_USING_XXX这些变量会被SConstruct和SConscript读取。构建流程当你执行scons命令时SCons会读取SConstruct设置环境。递归地执行各目录下的SConscript。根据rtconfig.py中的变量决定编译哪些源文件。调用编译器gcc/armcc进行编译和链接最终生成可执行文件如.axf,.elf。为什么需要scons --targetmdk5这个命令不仅执行编译还会根据当前的源码和配置动态生成一个Keil工程文件.uvprojx。这个工程文件里的文件列表、包含路径、预定义宏都是SCons根据实际情况生成的确保了与命令行构建的一致性。实操心得当你手动往项目里添加了新的.c文件或者修改了目录结构记得在对应的SConscript文件中用src或group语句将其加入。否则执行scons时新文件不会被编译但Keil工程里却能看见这会导致“Keil编译通过但scons编译失败”的诡异问题。6. 进阶整合STM32CubeMX与RT-Thread的协作思路对于路径三其核心思想是“CubeMX管硬件RT-Thread管系统”。具体操作流程复杂但思路清晰使用CubeMX创建基础工程新建项目选择你的STM32芯片图形化配置时钟树、引脚如用于调试的SWD用于FinSH的UART、外设如GPIO、SPI for SD Card等。在“Project Manager”中将“Toolchain / IDE”选为“Makefile”因为我们最终用SCons。生成代码。提取关键文件从CubeMX生成的工程中我们需要的主要是Core/Inc/和Core/Src/中的main.c,gpio.c,usart.c等外设初始化文件。Core/Startup/中的启动文件.s。Drivers/STM32xxx_HAL_Driver/中的HAL库源码。Core/Src/system_stm32xxx.c和对应的头文件。搭建RT-Thread BSP框架你需要在一个RT-Thread BSP模板可以从相近的官方BSP复制修改中用上面提取的文件替换掉原有的驱动和初始化代码。关键是修改board.c将CubeMX生成的SystemClock_Config()函数整合进来并确保在rt_hw_board_init()中正确调用。要特别注意全局中断的开启时机RT-Thread有自己的开关中断函数rt_hw_interrupt_enable/disable()要避免冲突。驱动适配RT-Thread有统一的设备驱动框架。你需要为CubeMX配置的外设如UART编写一个“驱动层”将HAL库的函数封装成RT-Thread设备驱动接口rt_device_ops。这是一个体力活也是技术活。处理中断CubeMX生成的中断服务函数如USART1_IRQHandler需要修改在调用HAL库的中断处理函数后可能需要调用RT-Thread提供的rt_interrupt_enter()和rt_interrupt_leave()来进行线程上下文切换的标记。配置与构建剩下的步骤就和路径二类似了使用ENV工具进行menuconfig然后用SCons构建。由于这个过程高度定制化且容易出错对于初学者强烈不建议直接从这条路开始。官方和社区维护的BSP已经为大量开发板完成了这些适配工作直接使用是最佳选择。当你对RT-Thread驱动框架和HAL库都非常熟悉后再尝试为自己定制的硬件做这种整合。7. 常见问题与排查技巧实录即使按照步骤操作你也可能会遇到各种问题。这里记录一些我踩过的坑和解决方法。7.1 编译问题问题1scons编译报错提示找不到头文件rtconfig.h。原因rtconfig.h文件不是手动编写的而是由menuconfig配置后通过pkgs --update或scons命令自动根据rtconfig.py生成的。你可能跳过了配置步骤。解决在BSP目录下务必先执行一次menuconfig哪怕直接退出保存然后再执行scons。问题2Keil编译报大量未定义错误如rt_thread_delay未定义。原因Keil工程中的包含路径Include Paths没有正确添加RT-Thread内核的头文件路径或者预定义宏RT_USING_NEWLIB等没有设置。解决检查Keil的“Options for Target - C/C”设置。确保包含路径包含了rt-thread/include、rt-thread/components等核心目录。确保预定义宏正确。最可靠的方法是删除旧的.uvprojx文件重新用scons --targetmdk5生成。问题3使用GCC编译时链接阶段报错_sbrk等相关错误。原因裸机环境下需要实现一些底层系统调用如_sbrk用于堆内存分配这些在标准库中通常是弱定义需要用户重写。RT-Thread的BSP通常已经在board.c中提供了实现。解决检查你的board.c文件是否包含了RT_USING_NEWLIB宏定义下的_sbrk等函数实现。确保在链接时包含了正确的启动文件和board.c。7.2 下载与运行问题问题4程序下载后LED不闪烁串口也无输出。排查步骤查硬件确认供电、调试器连接、串口线连接正确。查时钟这是最隐蔽的坑确认BSP中的系统时钟配置SystemClock_Config与你芯片的实际晶振频率一致。很多开发板使用8MHz外部晶振但有些BSP默认配置可能是25MHz或内部时钟。时钟配错所有延时都会不准甚至导致系统无法启动。仔细核对board.c里的HSE_VALUE宏定义和时钟树配置函数。查启动文件确认链接脚本.ld文件和启动文件.s是否与你的芯片型号尤其是Flash和RAM大小匹配。查初始化顺序在main函数最开始加一个简单的GPIO翻转代码不依赖RT-Thread的任何函数用示波器或逻辑分析仪看是否有信号。如果有说明硬件和基础驱动OK问题可能在RT-Thread系统初始化阶段。问题5串口有输出但打印乱码。原因波特率不匹配。RT-Thread FinSH默认波特率是115200但你的串口助手或BSP配置可能不是。解决检查drv_usart.c中串口初始化的波特率设置。尝试在串口助手中切换不同的波特率9600, 115200, 921600等试试。7.3 FinSH控制台问题问题6串口能收到RT-Thread启动信息但无法输入命令没有msh 提示符或输入无反应。原因1FinSH线程可能没有成功创建或启动。检查menuconfig中是否确实启用了FinSH组件。原因2串口驱动的中断接收可能未正常工作。确保在menuconfig中为对应的UART开启了“设备驱动”和“串口设备”支持并且中断处理正确。排查在main函数里创建一个最简单的线程里面用一个while(1)循环打印信息。如果这个线程能正常打印说明RT-Thread内核调度正常问题集中在FinSH组件或串口接收驱动上。一个必备的调试技巧使用RT-Thread的日志系统ulog。在menuconfig中启用ulog组件并设置日志级别为LOG_LVL_DBG。然后在代码中使用LOG_D(这是一条调试信息)。这些日志可以通过串口输出即使FinSH不正常也能帮你定位问题发生在哪个初始化阶段。

相关新闻

Python微博舆情分析系统:情感计算与可视化实战

Python微博舆情分析系统:情感计算与可视化实战

1. 项目概述与核心价值这个Python微博舆情分析系统是我在2023年完成的一个实战项目,主要解决企业在社交媒体监测中的三个痛点:数据获取难、情感判断粗、展示不直观。系统采用模块化设计,从爬虫采集到情感计算再到可视化呈现形成完整闭环&…

2026/8/13 5:47:43 阅读更多 →
嵌入式Linux设备树详解:从原理到驱动开发实战

嵌入式Linux设备树详解:从原理到驱动开发实战

1. 项目概述:为什么我们需要设备树?搞Linux驱动开发,特别是嵌入式Linux,如果你还在用老一套的arch/arm/mach-xxx下面写满platform_device的板级文件,那真的有点“上古时代”的味道了。我刚开始接触驱动那会儿&#xff…

2026/8/13 5:47:43 阅读更多 →
卡牌竞技中墨镜的实战策略与心理博弈分析

卡牌竞技中墨镜的实战策略与心理博弈分析

最近在整理卡牌游戏赛事资料时,发现一个挺有意思的现象:在一些大型比赛的现场照片或视频里,总能看到几位戴着墨镜、气场独特的选手。他们不像其他选手那样表情丰富,反而在激烈的对局中显得格外冷静,甚至有些“神秘”。…

2026/8/13 5:47:43 阅读更多 →

最新新闻

深入解析abicc框架的Xml-Descriptor:轻量级Java配置管理的蓝图设计

深入解析abicc框架的Xml-Descriptor:轻量级Java配置管理的蓝图设计

1. 从“abicc”说起:一个被低估的配置管理工具最近在整理一些遗留项目的技术债时,又翻出了“abicc”这个工具。说实话,第一次看到这个名字,我也是一头雾水,它不像Spring、MyBatis那样如雷贯耳,甚至在很多主…

2026/8/13 6:45:07 阅读更多 →
为什么你的保定百度网站建设总是没人看?老站长血泪总结的五点真相

为什么你的保定百度网站建设总是没人看?老站长血泪总结的五点真相

今天不聊那些高大上的互联网黑话,咱们就找个安静的咖啡馆,像老朋友一样聊聊心里话。你是不是也遇到过这种情况:花了几千甚至上万元找人做了个网站,当时看着挺高大上,动画炫酷,页面 flashy,结果上线之后,除了老板和自己,连个鬼影都看不到。去百度搜一下自己公司的名字,…

2026/8/13 6:45:07 阅读更多 →
Linux磁盘扩容实战:从文件系统到LVM的三种场景详解

Linux磁盘扩容实战:从文件系统到LVM的三种场景详解

1. 磁盘扩容的“前菜”:理解存储的底层逻辑在Linux运维和开发工作中,磁盘空间告急就像悬在头顶的达摩克利斯之剑,随时可能让服务中断、数据写入失败。很多人一看到“磁盘扩容”就觉得是点几下鼠标、敲几条命令的简单事,但真正操作…

2026/8/13 6:45:07 阅读更多 →
Unity求职技能体系:从C#基础到项目实战的完整能力构建

Unity求职技能体系:从C#基础到项目实战的完整能力构建

1. 项目概述:从“会一点”到“能干活”的鸿沟“学习Unity到什么程度可以找工作?” 这个问题,几乎每个刚入行或准备转行的朋友都会问。它背后隐藏的,其实是对当前就业市场技术门槛的焦虑,以及对自身学习路径是否正确的迷…

2026/8/13 6:45:07 阅读更多 →
Linux磁盘扩容实战:三种场景操作指南与避坑要点

Linux磁盘扩容实战:三种场景操作指南与避坑要点

1. 项目概述:Linux磁盘扩容的实战场景与核心价值在Linux运维和开发工作中,磁盘空间告急几乎是每个从业者都会遇到的“经典”问题。无论是日志文件疯狂增长、数据库表空间膨胀,还是新项目代码库体积激增,那个熟悉的“No space left…

2026/8/13 6:45:07 阅读更多 →
AI智能体安全风险剖析:从提示词注入到企业数据泄露的防御实战

AI智能体安全风险剖析:从提示词注入到企业数据泄露的防御实战

这次我们来看一个企业级 AI 安全风险案例:Atlassian 公司推出的 AI 智能体 Rovo 被曝存在间接提示词注入漏洞。这个漏洞的严重性在于,攻击者可以利用它,从 Jira 和 Confluence 这类核心企业协作平台中窃取敏感数据。对于任何使用 Atlassian 全…

2026/8/13 6:44:07 阅读更多 →

日新闻

Visual Studio新建项目解决方案为空:系统性排查与修复指南

Visual Studio新建项目解决方案为空:系统性排查与修复指南

1. 问题现象与本质剖析如果你是一位.NET开发者,或者正准备踏入这个领域,那么Visual Studio(后面简称VS)绝对是你绕不开的伙伴。但有时候,这个伙伴会跟你开一个不大不小的玩笑:你满怀期待地点击“创建新项目…

2026/8/13 0:00:09 阅读更多 →
长春建设厅网站:普通人买房办事必看的真实指南与避坑攻略

长春建设厅网站:普通人买房办事必看的真实指南与避坑攻略

说实话,每次提起“长春建设厅网站”这几个字,我心里都挺有感触的。不是因为它有多高大上,也不是因为那里藏着什么不可告人的秘密,恰恰相反,是因为它太“接地气”了,或者说,它是咱们普通人想要在这个城市好好生活、安稳买房时,必须得翻过的一座“数据山”。很多新朋友第…

2026/8/13 0:00:09 阅读更多 →
Windows家庭版远程桌面多用户破解完整指南:RDPWrap终极解决方案

Windows家庭版远程桌面多用户破解完整指南:RDPWrap终极解决方案

Windows家庭版远程桌面多用户破解完整指南:RDPWrap终极解决方案 【免费下载链接】rdpwrap.ini RDPWrap.ini for RDP Wrapper Library by StasM 项目地址: https://gitcode.com/GitHub_Trending/rd/rdpwrap.ini 你是否曾为Windows家庭版无法支持多用户远程桌面…

2026/8/13 0:00:09 阅读更多 →

周新闻

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁

5分钟告别提取码焦虑:baidupankey如何智能破解百度网盘资源锁 【免费下载链接】baidupankey 在线查询网盘提取码(维护中 rm repo) 项目地址: https://gitcode.com/gh_mirrors/ba/baidupankey 你是否曾经在深夜寻找一份重要资料&#x…

2026/8/13 2:38:34 阅读更多 →
如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南

如何快速生成中国车牌图片:Python开源工具完整指南 【免费下载链接】chinese_license_plate_generator 中国车牌生成器 项目地址: https://gitcode.com/gh_mirrors/ch/chinese_license_plate_generator 中国车牌生成器是一个基于Python的开源项目&#xff0c…

2026/8/12 1:11:09 阅读更多 →
收藏!小白程序员轻松入门大模型,从Harness工程开始实践

收藏!小白程序员轻松入门大模型,从Harness工程开始实践

文章强调学习大模型不应只关注模型本身,而应重视模型外的系统搭建,即Harness。提出AgentModelHarness的实用公式,详细介绍Harness的四个层次:持久化层、执行层、控制层和观察与验证层。文章还探讨了上下文工程、工具设计、AGENTS.…

2026/8/12 1:11:08 阅读更多 →

月新闻

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

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

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

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

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

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

2026/8/12 1:11:10 阅读更多 →
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/11 17:09:45 阅读更多 →