高级安全大使 发表于 2025-2-27 02:53

如何在STM32MP1上编译和运行简单的C应用程序?

需要哪些工具链和环境配置?

如何将编译后的程序传输到开发板并运行?

yangjiaxu 发表于 2025-3-6 15:26

想裸机开发?如果是的话,你就用cubemx,是支持的

公羊子丹 发表于 2025-3-7 07:46

你是用裸机环境,还是运行在 Linux 上?STM32MP1 支持 Yocto 和 Debian,两种方式编译略有不同。

周半梅 发表于 2025-3-7 07:48

如果是 Linux 环境,可以用 gcc 或 arm-linux-gnueabihf-gcc 交叉编译,然后用 scp 传到板子上运行。

帛灿灿 发表于 2025-3-7 07:49

你可以用 ssh 连接开发板,直接在板子上用 gcc 编译 C 代码,省去交叉编译的麻烦。

童雨竹 发表于 2025-3-7 07:51

交叉编译的话,先安装 ST 提供的 SDK,使用 arm-none-linux-gnueabihf-gcc 进行编译。

万图 发表于 2025-3-7 07:52

你可以试试用 scp 或者 rsync 传输程序到开发板,然后 chmod +x 设置可执行权限后运行。

Wordsworth 发表于 2025-3-7 07:54

如果开发板装了 NFS,可以直接把程序放到 NFS 共享目录里,免去传输的步骤。

Bblythe 发表于 2025-3-7 07:55

你想用哪种调试方式?如果是裸机,可以用 J-Link/OpenOCD;如果是 Linux,可以用 gdbserver 远程调试。

Pulitzer 发表于 2025-3-7 07:57

可以尝试使用 STM32CubeIDE,它支持 STM32MP1 的 Linux 应用开发,集成了交叉编译工具链。

Uriah 发表于 2025-3-7 07:58

如果是跑在 Linux 上,记得检查 ldd 依赖库,确保所有运行时库都正确。

Clyde011 发表于 2025-3-7 08:00

你是用官方的 STM32MP1 开发板还是自制的?有些板子可能需要手动配置 systemd 才能自动运行程序。

laocuo1142 发表于 2025-3-7 11:02

在STM32MP1上编译和运行简单的C应用程序需要一系列的工具链和环境配置。

风凉 发表于 2025-4-19 01:11

这个一般不都是使用cubeIDE就可以吗,再配合cubemx

西洲 发表于 2025-4-19 02:27

一般可以用cubemx来生成简单的C裸机程序的

白马过平川 发表于 2025-4-19 03:18

为啥你都用MP1了,还弄个简单的干啥?不得直接跑系统

温室雏菊 发表于 2025-4-19 04:28

创建一个名为 hello.c 的文件:如果使用 OpenSTLinux SDK,加载其环境脚本这会自动设置交叉编译工具链路径

春日负喧 发表于 2025-4-19 05:25

建议使用 STM32CubeMX 配置工程,选择 Cortex-M4 内核。配置时钟、GPIO 等外设。使用 STM32CubeIDE 或 Keil 编译

故意相遇 发表于 2025-4-19 06:27

你直接使用MP1的Cortex-M4内核呗,适合运行实时性要求高的应用程序,无需操作系统

捧一束彼岸花 发表于 2025-4-19 07:28

我觉得你都有MP1了,还跑个简单的C裸机干啥呢
页: [1]
查看完整版本: 如何在STM32MP1上编译和运行简单的C应用程序?