| 1 工程项目的目录结构TouchGFX 项目由 STM32CubeMX 生成后,核心目录集中在项目根目录下的TouchGFX文件夹,同时包含系统默认的核心、驱动等目录, 
 整体结构如下 项目根目录
│   .mxproject(STM32CubeMX项目配置文件)
│   项目名.ioc(STM32CubeMX项目文件)
├───Core(核心代码目录:main.c和启动代码)
├───Drivers(驱动目录:CMSIS、MCU系列驱动、BSP板级支持包)
├───STM32CubeIDE(IDE项目目录,依选择的IDE不同命名)
├───Middlewares(中间件目录:TouchGFX库/头文件、第三方软件如FreeRTOS)
└───TouchGFX(TouchGFX核心目录)
    │   ApplicationTemplate.touchgfx.part(TouchGFX Designer项目关联文件)
    ├───App(初始化代码目录:app_touchgfx.c/h)
    └───target(目标配置目录)
        │   可修改文件(STM32TouchController.cpp/h、TouchGFXGPIO.cpp、TouchGFXHAL.cpp/h)
        └───generated(只读生成文件目录:OSWrappers.cpp、TouchGFXConfiguration.cpp/h等)
 TouchGFX/App :提供 TouchGFX 与 STM32CubeMX 的接口,app_touchgfx.c包含MX_TouchGFX_Init(void)(初始化 TouchGFX)和MX_TouchGFX_Process(void)(启动 TouchGFX 主循环)两个核心函数。 TouchGFX/target :用户可修改的核心配置目录,用于扩展 HAL 行为或覆盖 STM32CubeMX 的默认配置,如TouchGFXHAL.cpp定义TouchGFXHAL类,继承自只读的TouchGFXGeneratedHAL。 TouchGFX/target/generated :STM32CubeMX 自动生成的只读文件目录,配置变更时会自动覆盖,包含 HAL 子类实现、OS 同步函数、TouchGFX 构造配置代码。 ApplicationTemplate.touchgfx.part:存储屏幕尺寸、像素格式等项目信息,用 TouchGFX Designer 打开可创建完整 UI 项目,且会同步 IDE 项目文件。 2 协同设计的方法项目生成配置(STM32CubeMX 端) 
打开 STM32CubeMX 的 “Project Manager”,选择项目设置:
应用结构(Application structure)设为 “Advanced”,确保目录层级清晰。取消勾选 “Generate under root”(仅 STM32CubeIDE 需设置),避免根目录文件混乱。工具链 / IDE(Toolchain/IDE)选择 “STM32CubeIDE”,指定项目路径和最小堆 / 栈大小(默认 0x200/0x400)。确认 TouchGFX Generator 已启用,配置 MCU 型号、固件包版本(如 STM32F429ZITx 搭配 STM32Cube FW_F4 V1.24.1),点击 “Generate Code” 生成项目。 UI 开发与项目同步(TouchGFX Designer 端) 
用 TouchGFX Designer 打开生成的ApplicationTemplate.touchgfx.part文件,创建 UI 界面(如之前的氛围灯控制面板)。开发完成后,TouchGFX Designer 会自动将新增的生成文件同步到 STM32CubeIDE 项目中,无需手动添加文件引用。 硬件适配与调试(STM32CubeIDE 端) 
用 STM32CubeIDE 打开生成的项目,在TouchGFX/target目录下修改用户可编辑文件,实现硬件适配:
STM32TouchController.cpp:完善触摸控制器接口,适配实际触摸硬件。TouchGFXHAL.cpp:重写 HAL 相关函数,优化显示驱动、中断处理等底层逻辑。关联 TouchGFX 生成的 UI 代码,通过 STM32CubeIDE 编译项目,检查依赖项(如 Middlewares 中的 TouchGFX 库)是否正确引入。连接开发板,配置调试参数(目标设备、调试接口),执行下载调试,实现 UI 与硬件的联动验证。 配置变更同步流程 当在 STM32CubeMX 中修改硬件配置(如引脚、时钟)后,重新点击 “Generate Code”: 
系统会更新TouchGFX/target/generated目录下的只读文件,同步新的配置参数。打开 TouchGFX Designer,项目会自动识别配置变更,确保 UI 开发与硬件配置一致。 3 按照上面的方法,设计一个基本的UI
 对应需要修改上述view的关键函数配置 下载到开发板 
 这个协同开发的过程还是有一些状况 
 代码生成,下载的时候总是出现这个情况。还是有没有调试通过的地方。 |