查看原文
其他

如何让Arduino IDE支持你手里的STM32 nucleo开发板

西安-小马哥 电子开发学习 2021-01-31

Arduino IDE开发环境在默认情况下不支持STM32 NUCLEO开发板,只有通过添加附加开发板管理包才能使用。目前为止,只有一部分板子支持使用Arduino IDE开发环境进行开发,分别是

Nucleo F207ZG,

Nucleo F429ZI,

Nucleo F030R8,

Nucleo F091RC,

Nucleo F103RB,

Nucleo F303RE,

Nucleo F401RE,

Nucleo F411RE,

Nucleo L053R8,

Nucleo L152RE,

Nucleo L432KC,

STM32F100RB-DISCVL,

STM32F407G-DISC,

STM32F746G-DISCOVERY


那么当你的手里有以上列表中的某个板子的话,怎么样才能让你的板子支持使用Arduino IDE开发环境去开发呢?


打开Arduino IDE软件。

单击文件->首选项,弹出首选项对话框。然后在附加开发板管理器网址输入以下网址:https://github.com/stm32duino/Bo ... kage_stm_index.json。单击好,完成设置。如下所示:


在开发板管理器添加NUCLEO-L476RG的支持包。单击工具->开发板管理器。在类型下拉菜单中选择“贡献”,然后在筛选出的结果中找到STM32L4xx Cores by STMicroelectronics。单击安装。由于文件较大,等待时间会长一些。安装完成后。单击关闭。

到此,就可以在Arduino IDE开发环境使用STM32 NUCLEO开发板了。


接下来,我们将编写一段读取按钮状态的代码,然后将编译的结果下载到NUCLEO-L476中。代码参考官方的Digital InPut例程。

首先,选择使用的开发板型号。单击工具->开发板,选择NUCLEO-L476RG。


单击工具->端口,选择ST-LINK虚拟的串口端口号。

现在可以编写代码了。单击文件->新建,在窗口中输入以下代码:

  1. // Read InPut PIN and send the result over USB-Virtual COM


  2. int pushButton = 2;


  3. void setup() {


  4.   // initialize serial communication at 9600 bits per second:


  5.   Serial.begin(9600);


  6.   // make the pushbutton's pin an input:


  7.   pinMode(pushButton, INPUT);


  8. }


  9. void loop() {


  10.   // read the input pin:


  11.   int buttonState = digitalRead(pushButton);


  12.   // print out the state of the button:


  13.   Serial.println(buttonState);


  14.   delay(1);        // delay in between reads for stability


  15. }


 


下图是NUCLEO-L476RG与按钮的连接原理图。

当按下按钮时,串口监视器收到数据0;释放按钮时,串口监视器收到1。




    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存