chenyong db3f8d3344 [bsp] fix default project compilation error. 7 ani în urmă
..
Libraries 9f3938da1e [bsp][stm32] Fix the warning when using ARM Compiler V6 7 ani în urmă
applications 87dad10f3f [license] Change the license to Apache 7 ani în urmă
drivers 87dad10f3f [license] Change the license to Apache 7 ani în urmă
.config 31c0617942 [bsp][stm32f40x] add file .config rtconfig.h 7 ani în urmă
Kconfig 3aa582bc17 [BSP] Add Kconfig for lpc408x/stm32f10x/stm32f20x/stm32f40x etc 8 ani în urmă
README.md 7621246259 [Bsp]Add readme for stm32f40x 7 ani în urmă
SConscript b4de7cce57 Re-normalizing the repo 13 ani în urmă
SConstruct 19433e0cf5 update SConscript: support scons 3. 8 ani în urmă
project.uvproj db3f8d3344 [bsp] fix default project compilation error. 7 ani în urmă
project.uvprojx db3f8d3344 [bsp] fix default project compilation error. 7 ani în urmă
rtconfig.h 31c0617942 [bsp][stm32f40x] add file .config rtconfig.h 7 ani în urmă
rtconfig.py cd39c2525a [bsp] support get compiler path by environment variables for IAR 7 ani în urmă
stm32_rom.ld ae3b6583ce [bsp]add gdb support for stm32f4xx 11 ani în urmă
stm32_rom.sct 57f34f6031 fixed compiling error 14 ani în urmă
stm32f40x_flash.icf 573c294216 [BSP] Fix component initialization functions may be not sequential storage on ROM when used for IAR linker. 8 ani în urmă
template.uvproj eefb272cfd update stm32f10x template. 13 ani în urmă
template.uvprojx 3c65a522fd Add mdk5 project for stm32 bsps 11 ani în urmă

README.md

STM32F40x 板级支持包

1. 简介

STM32F40x 是由意法半导体推出的Cortex-M4内核的高性能单片机 包括如下硬件特性:

| 硬件 | 描述 | | -- | -- | |芯片型号| STM32F40x全系列 | |CPU| Cortex-M4 | |主频| 84MHz-208MHz |

2. 编译说明

环境 说明
PC操作系统 Linux/MacOS/Windows
编译器 arm-none-eabi-gcc version 6.3.1 20170620 (release)/armcc/iar
构建工具 scons/mdk5/iar
依赖软件环境 Env工具/(MDK或IAR或arm-none-eabi-gcc)/git/调试器驱动

1) 下载源码

    git clone https://github.com/RT-Thread/rt-thread.git

2) 配置工程并准备env

(Linux/Mac)

    cd rt-thread/bsp/stm32f40x
    scons --menuconfig
    source ~/.env/env.sh
    pkgs --upgrade

(Windows)

RT-Thread官网下载ENV工具包

3) 配置芯片型号

(Linux/Mac)

    scons --menuconfig

(Windows(ENV环境中))

    menuconfig

在menuconfig页面配置并选择对应的芯片型号,若开发环境为MDK/IAR,则需要生成工程

4) 生成工程(Mac/Linux下请跳过此步骤)

(Windows IAR)

    SET RTT_CC=iar
    scons --target=iar -s

(Windows MDK5)

    scons --target=mdk5 -s

(Windows MDK4)

    scons --target=mdk4 -s

5) 编译

使用MDK或IAR请参见对应教程

(Windows arm-none-eabi-gcc) 使用以下指令设置gcc路径

    SET RTT_EXEC_PATH=[GCC路径]

(Linux/Mac arm-none-eabi-gcc) 使用以下指令设置gcc路径

    export RTT_EXEC_PATH=[GCC路径]

编译(WindowsLinux/Mac arm-none-eabi-gcc)

    scons -j4

出现下列信息即为编译成功

    LINK rtthread-stm32f4xx.elf
    arm-none-eabi-objcopy -O binary rtthread-stm32f4xx.elf rtthread.bin
    arm-none-eabi-size rtthread-stm32f4xx.elf
    text    data     bss     dec     hex filename
    41596     356    1456   43408    a990 rtthread-stm32f4xx.elf
    scons: done building targets.

如果编译正确无误,会产生rtthread-stm23f4xx.elf、rtthread.bin文件。其中rtthread.bin为二进制固件

3. 烧写及执行

烧写可以使用仿真器 ISP等多种方式 此处不再赘述

3.1 运行结果

如果编译 & 烧写无误,会在串口2*上看到RT-Thread的启动logo信息:

 \ | /
- RT -     Thread Operating System
 / | \     3.0.4 build May 15 2018
 2006 - 2018 Copyright by rt-thread team
msh />

*默认串口

4. 驱动支持情况及计划

驱动 支持情况 备注
UART 支持 UART1/2/3/4/5
GPIO 支持 /
hwtimer 支持 /
RTC 支持 /
eth 支持 LAN8720A

4.1 IO在板级支持包中的映射情况

| IO号 | 板级包中的定义 | | -- | -- | | PB6 | USART1 TX | | PB7 | USART1 RX | | PA2 | USART2 TX | | PA3 | USART2 RX | | PD8 | USART3 TX | | PD9 | USART3 RX | | PC10 | UART4 TX | | PC11 | UART4 RX | | PC12 | UART5 TX | | PD2 | UART5 RX |

5. menuconfig Bsp菜单详解

| 选项 | 解释 | | -- | -- | | Enable UART1 (PB6/7) | 开启串口1,串口1的设备名为"uart1" | | Enable UART2 (PA2/3) | 开启串口2,串口1的设备名为"uart2" | | Enable UART3 (PD8/9) | 开启串口3,串口1的设备名为"uart3" | | Enable UART4 (PC10/11) | 开启串口4,串口1的设备名为"uart4" | | Enable UART5 (PC12/PD2) | 开启串口5,串口1的设备名为"uart5" |

*部分选项需要在RT-Thread组件菜单中开启对应的设备框架才能显示。

6. 联系人信息

维护人: uestczyh222 < lymz@foxmail.com >