首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

NUCLEO-F429ZI 在 mbed 底下的编程

NUCLEO-F429ZI 在 mbed 底下的编程

NUCLEO-F429ZI 这一片开发板目前在 mbed 环境底下是还没有支持的:
不过目前 mbed 支持了 DISCO-F429ZI 开发板,这是一片带 LCD 的开发板,在使用相同芯片的情况之下我们还是可以选用 DISCO-F429ZI 开发板来设计 NUCLEO-F429ZI 开发板的程序。第一个程序我们先来实现一个最基础的 LED 闪烁功能,一个标准 mbed 上的 Blinky LED 程序如下:
#include "mbed.h"DigitalOut myled(LED1);int main() {    while(1) {        myled = 1; // LED is ON        wait(0.2); // 200 ms        myled = 0; // LED is OFF        wait(1.0); // 1 sec    }}
编译后下载到板子上运行,我们并没有看到有任何的 LED 闪烁!这是为什么呢?原因是程序中 LED1 的定义并不是 Nucleo-144 板底任何一颗 LED 所连接的管脚,Nucleo-144 板底有 3 颗 User LED 分别是:
绿色的 LD1 接 PB0 (板底的 SB120 是短路的,接到 PA5 的 SB119 是断开的)
蓝色的 LD2 接 PB7
红色的 LD3 接 PB14
因此当我们将
DigitalOut myled(LED1);
改成
DigitalOut myled(PB_0);
就可以看到绿色的 LD1 开始闪烁。
改成
DigitalOut myled(PB_7);
就可以看到蓝色的 LD2 开始闪烁
改成
DigitalOut myled(PB_14);
就可以看到红色的 LD3 开始闪烁
3 个 LED 都会亮之后我们来实现一个流水灯程序:
#include "mbed.h"DigitalOut led1(PB_0);DigitalOut led2(PB_7);DigitalOut led3(PB_14);int main() {    while(1) {        led1 = 1;        led2 = 0;        led3 = 0;                          wait(0.2); // 200 ms                     led1 = 0;        led2 = 1;        led3 = 0;                          wait(0.2); // 200 ms                     led1 = 0;        led2 = 0;        led3 = 1;                          wait(0.2); // 200 ms            }}
返回列表