为beaglebone开发stm32

时间:2015-10-09 14:06:50

标签: beagleboneblack stm32 beagleboard

是否可以在beaglebone(可能是黑色)上编译stm32代码? 因为看起来平台必须能够访问arm-none-eabi-gcc才能编译为stm32?

2 个答案:

答案 0 :(得分:1)

基本上,可以。

要为stm32系列mcus编译代码,您将需要一个交叉编译器。如果您在beaglebone板上运行linux,则只需下载预制工具链以进行分发。如果找不到,则只需通过指定主机和目标就可以从源代码构建编译器。

https://wiki.osdev.org/GCC_Cross-Compiler#Preparing_for_the_build本文将帮助您为每个受支持的目标和主机构建一个gcc交叉编译器。只需不到15分钟的时间。

这里没有什么要注意的,一旦构建了交叉编译器,便不会附带任何libc。因此在github上获取一个(数量很少)。您的选择将是libc或libc-nano(这本身就是自言自语)。从那里,您将能够为您的stm32 mcu编译代码。

例如,我在beaglebone黑色计算机上运行了ubuntu服务器,因此为了在该计算机上编译stm32,我安装了armv7-A gcc编译器,因此可以自行为beaglebone进行编译。然后我从https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-rm/downloads下载了源代码,编译了源代码,您将拥有一个用于微控制器的正式手臂工具链。

答案 1 :(得分:-1)

当然你可以为BB编译代码,但是

  • 你必须改变硬件抽象层,我的意思是外围,例如UART也BB有MMU和DDR因此很难
  • 对于编译器,你必须更改核心目标,STM32(Cortex-m3 \ m4)但BB有AM33x(Cortex-A9)