正点原子程序工程移植到gcc编译

2025-11-06 16:05:10

1、stm32cubemx 安装 arm-none-eabi-gcc 安装好,arm-none-eabi-gcc 可以看到信息,表示环境变量设置正确不然要在makefile里面设置,如果这两样你设置好了,那我们开始

192:$ arm-none-eabi-gcc --versionarm-none-eabi-gcc (GNU Tools for ARM Embedded Processors) 5.4.1 20160919 (release) [ARM/embedded-5-branch revision 240496]Copyright (C) 2015 Free Software Foundation, Inc.This is free software; see the source for copying conditions.  There is NOwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

2、我们用cubemx生成一个空工程,只把usart打开,然后我们生成一个工程,这个工程可以正常用make编译的

正点原子程序工程移植到gcc编译

3、如果cubexmx工程正常我们就可以用来移植了,准备好原子的实验教程例程工程一份 把下面图的打删除的删除USER目录只保留  test.c这个文件

正点原子程序工程移植到gcc编译

4、我们把刚才生成的cubemx工程四个文件拷过来Makefilesystem_stm32f4xx.c

startup_stm32f407xx.s

STM32F407ZGTx_FLASH.ld

这四个文件拷到原子工程目录里面

正点原子程序工程移植到gcc编译

5、所有目录如下显示结构现在我要设置下Makefile文件内容

正点原子程序工程移植到gcc编译

1、用文本编辑器打开Makefile文件 编辑下C_SOURCES 把工程文件下的C文件都添加进去,h文件目录也添加进去

正点原子程序工程移植到gcc编译

正点原子程序工程移植到gcc编译

2、然后我们切换到工程目录可以执行make了成功编译后,printf没有输出去窜口不要紧我们添加一段代码  放在main前面,重新编译,然后烧进去,可以看到串口有内容了。 int _write (int fd, char *pBuffer, int size)    {        int i=0;        for (i = 0; i < size; i++)        {            while (!(USART1->SR & USART_SR_TXE))            {            }            USART1->DR=pBuffer[i]        }        return size;    }

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢