README.md 3.8 KB
Newer Older
1 2 3 4
# STM32L476-nucleo 板级支持包

## 1. 简介

5
[STM32F411-nucleo](http://www.st.com/resource/en/data_brief/nucleo-f411re.pdf) 是由意法半导体推出的搭载Cortex-M4内核的高性能微控制器开发板,包括如下硬件特性:
6 7 8

| 硬件 | 描述 |
| -- | -- |
9
|芯片型号| [STM32F411RE](http://www.st.com/en/microcontrollers/stm32f411re.html) |
10 11 12 13 14
|CPU  | Cortex-M4 |
|主频 | 100MHz |
|Flash| 512kB |
|SRAM | 128KB |

15 16
![stm32f411](http://www.st.com/content/ccc/fragment/product_related/rpn_information/product_circuit_diagram/4b/82/41/cc/25/ec/4b/3d/bd_stm32f411xe_512k.jpg/files/bd_stm32f411xe_512k.jpg/_jcr_content/translations/en.bd_stm32f411xe_512k.jpg)

17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135
## 2. 编译说明

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

1) 下载源码

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

2) 配置工程并准备env

* Windows

>在[RT-Thread官网][1]下载ENV工具包

* Linux/Mac

```bash
    cd rt-thread/bsp/stm32l476-nucleo
    scons --menuconfig
    source ~/.env/env.sh
    pkgs --upgrade
```

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

* Windows MDK5

```bash
    scons --target=mdk5 -s
```

4) 编译

* Windows

使用MDK或IAR请参见对应教程。Windows下使用ENV工具,已经携带GNU GCC工具链,只需要在console下在`bsp/stm32f411-nucleo`目录下使用

```bash
    scons
```

即可编译成功。

* Linux/MAC

请使用以下指令设置gcc路径

```bash
    export RTT_EXEC_PATH=[GCC路径]
```

而后在`rt-thread/bsp/stm32f411-nucleo`目录下使用

```bash
    scons
```

即可编译成功。

GNU GCC编译成功,会在最后有如下类似信息显示:

```bash
    LINK rtthread-stm32f411.elf
    arm-none-eabi-objcopy -O binary rtthread-stm32f411.elf rtthread.bin
    arm-none-eabi-size rtthread-stm32f411.elf
    text    data     bss     dec     hex filename
    55916     208    2456   58580    e4d4 rtthread-stm32f411.elf
    scons: done building targets.
```

并产生rtthread-stm32f411.elf、rtthread.bin文件。其中rtthread.bin为二进制固件

## 3. 烧写及执行

对于STM32F411-Nucleo开发板,在Windows上可以直接把rtthread.bin文件拖到U盘中实现烧写。在Linux下,请查找Linux下如何使用 ST-Link 的教程。

**注:**
如果需要使用Keil MDK来调试GNU GCC编译后的映像文件,可以在编译出`rt-thread/bsp/stm32f411-nucleo/rtthread-stm32f411.elf`后,把这个文件改名成`rtthread-stm32f4xx.axf`
并放置于build目录下。然后在Keil MDK工程配置的Debug页中,把`Run to main()`选项拿掉,然后直接点击下载或调试即可进行调试(千万别再编译这个工程)。

### 3.1 运行结果

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

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

## 4. 驱动支持情况及计划

| 驱动       | 支持情况 | 备注                         |
| ---------- | :------: | :--------------------------: |
| UART       | 支持     | UART2        |

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

| IO号 | 板级包中的定义 |
| -- | -- |
| PA2 | USART2 TX |
| PA3 | USART2 RX |

## 5. menuconfig Bsp菜单详解

| 选项 | 解释 |
| -- | -- |
| Using UART2 | 开启串口2,设备名为"uart2" |

  [1]: https://www.rt-thread.org/page/download.html