(1)下載Mbed_installer_v0.4.10.exe
(2)下載實例代碼
$ mbed import https://github.com/ARMmbed/mbed-os-example-blinky-baremetal
$ cd mbed-os-example-blinky-baremetal
程序代碼如下:
#include "mbed.h"
#define WAIT_TIME_MS 500
DigitalOut led1(LED1);
int main()
{
printf("This is the bare metal blinky example running on Mbed OS %d.%d.%d.\n", MBED_MAJOR_VERSION, MBED_MINOR_VERSION, MBED_PATCH_VERSION);
while (true)
{
led1 = !led1;
thread_sleep_for(WAIT_TIME_MS);
}
}
實際功能就是一個LED1閃爍
(3)編譯
mbed compile -m NUCLEO_WB55RG -t GCC_ARM --flash 這裏的用的板子是NUCLEO_WB55RG。如果編譯出現
[mbed] Working path "E:\mbed\mbed-os-example-blinky-baremetal" (program)
Could not find executable for GCC_ARM.
Currently set search path: No path set
需要在項目目錄下的mbed_settings.py中配置GCC ARM的路徑。
編譯成功並下載固件如下:
[mbed] Working path "E:\mbed\mbed-os-example-blinky-baremetal" (program)
Building project mbed-os-example-blinky-baremetal (NUCLEO_WB55RG, GCC_ARM)
Scan: mbed-os-example-blinky-baremetal
Link: mbed-os-example-blinky-baremetal
Elf2Bin: mbed-os-example-blinky-baremetal
| Module | .text | .data | .bss |
|------------------|-----------|---------|----------|
| [fill] | 54(+0) | 0(+0) | 17(+0) |
| [lib]\c_nano.a | 2618(+0) | 100(+0) | 21(+0) |
| [lib]\gcc.a | 760(+0) | 0(+0) | 0(+0) |
| [lib]\misc | 180(+0) | 0(+0) | 28(+0) |
| [lib]\nosys.a | 16(+0) | 0(+0) | 0(+0) |
| main.o | 80(+0) | 0(+0) | 28(+0) |
| mbed-os\drivers | 80(+0) | 0(+0) | 0(+0) |
| mbed-os\hal | 1570(+0) | 8(+0) | 130(+0) |
| mbed-os\platform | 4782(+0) | 4(+0) | 298(+0) |
| mbed-os\targets | 11708(+0) | 8(+0) | 518(+0) |
| Subtotals | 21848(+0) | 120(+0) | 1040(+0) |
Total Static RAM memory (data + bss): 1160(+0) bytes
Total Flash memory (text + data): 21968(+0) bytes
Image: .\BUILD\NUCLEO_WB55RG\GCC_ARM\mbed-os-example-blinky-baremetal.bin
這個時候開發板的LED1會閃爍。