Stduino极速入门——Stduino Nano&STM32F103系列芯片

软件安装传送门

极速入门,您需要软件:Stduino IDE,硬件:Stduino UNO或Nano ,或者STM32小蓝板
熟悉软件界面
找到左上角上传按钮(编译&上传),上传方式,右上角串口小助手等即可快速上手
注:快速上传仅为上传,不进行编译,从而提升效率

Stduino Nano&UNO板直接通过USB串口或St-link连接PC即可

小蓝板下载方式说明

下载方式一(手动复位):
通过串口下载(由于需要来回插拔BOOT0的跳帽及按复位键,比较麻烦,不推荐此方法)
1.硬件准备,小蓝板,USB转TTL模块(CH340或CP2012都行)
2.连线方式:小蓝板的PA9接TTL模块的RX脚,小蓝板的PA10接TTL模块的TX脚(根据手头上的TTL模块情况3.3V或5V供电任意一种即可)
3.下载前BOOT1跳帽连至低电平不用自始至终不用动
4.Stduino IDE软件选择串口下载方式(仅连接一个TTL的情况下,COM口会自动选择)
5.BOOT0跳至高电平,然后按一次复位键
6.点击软件左上角上传按钮即可将程序上传至小蓝板
7.将BOOT0跳帽调回低电平,按下复位,你的程序效果即可看到了

再次下载需重复上述5-7步骤即可

下载方式二(自动复位):
BOOT0,BOOT1置低电平

  1. 用St-link下载器将小蓝板连接至电脑端(接线:DIO-DIO,CLK-CLK,GND-GND,3.3V-3.3V)
  2. 点击Stduino IDE软件左上角工具按钮选择下载方式为St_link
  3. 编写程序
  4. 点击软件左上角上传按钮下载程序

从点亮一颗板载LED灯说起

Stduino Nano点亮板载LED灯
#include <Arduino.h>
//Stduino对应板载灯管脚为13号
void setup()
{
   //初始化13号管脚为数字输出模式,实现板载灯驱动
    pinMode(13,OUTPUT);
    //13号管脚设置输出为高电平,点亮LED灯
    digitalWrite(13,HIGH);
    //点亮一颗LED灯就是这么简单
}
void loop()
{
}
STM32小蓝板点亮板载LED灯
#include <Arduino.h>
//STM32小蓝板 PC13管脚板载灯对应Stduino IDE为D21
void setup()
{
   //初始化21号管脚为数字输出模式,实现板载灯驱动,更多引脚看STM32F103C8T6脚位对应表
    pinMode(21,OUTPUT);
    //22号管脚设置输出为低电平,点亮LED灯
    //小蓝板PC13(22)板载灯低电平驱动
    digitalWrite(21,LOW);
    //点亮一颗LED灯就是这么简单
}
void loop()
{
}

再说LED灯,实现LED灯闪烁

Stduino Nano板载LED灯闪烁
#include <Arduino.h>
//Stduino对应板载灯管脚为13号
void setup()
{
   //初始化13号管脚为数字输出模式,实现板载灯闪烁
    pinMode(13,OUTPUT);

}
void loop()
{
    delay(1000);
    digitalWrite(13,HIGH);
    delay(1000);
    digitalWrite(13,LOW);
    //板载LED灯间隔1秒闪烁
}
STM32小蓝板点亮板载LED灯
#include <Arduino.h>
//STM32小蓝板 对应板载灯管脚为PC13
void setup()
{
   //初始化PC13管脚为数字输出模式,实现板载灯闪烁,更多引脚看STM32F103C8T6脚位对应表
    pinMode(PC13,OUTPUT);

}
void loop()
{
    delay(1000);
    digitalWrite(PC13,HIGH);
    delay(1000);
    digitalWrite(PC13,LOW);
    //板载LED灯间隔1秒闪烁
}

按键控制LED灯

Stduino Nano按键控制板载LED灯
#include <Arduino.h>
//Stduino对应板载灯管脚为13号
void setup()
{
   //初始化13号管脚为数字输出模式,实现当按下按键后,板载LED灯持续亮1秒然后熄灭
    pinMode(13,OUTPUT);
    //5号脚设置为上拉输入模式
    pinMode(5,INPUT_PULLUP);

}
void loop()
{
       if(digitalRead(5)==0)
    {   delay(150);//用于去除抖动
        digitalWrite(21,LOW);
        delay(1000);
        digitalWrite(21,HIGH);
    }
}
STM32小蓝板点亮板载LED灯
#include <Arduino.h>
//STM32小蓝板 对应板载灯管脚为PC13
void setup()
{
    //小蓝板的PC13脚,设置为数字输出模式
    pinMode(PC13,OUTPUT);
    //5号脚对应小蓝板的PB11脚,设置为上拉输入模式
    pinMode(5,INPUT_PULLUP);
}
void loop()
{   
    //当按下按键后,板载LED灯持续亮1秒然后熄灭
    if(digitalRead(5)==0)
    {   delay(150);//用于去除抖动
        digitalWrite(PC13,LOW);
        delay(1000);
        digitalWrite(PC13,HIGH);
    }
}

读取模拟量值并通过串口输出

Stduino Nano读取A0脚模拟量值并通过串口0输出
#include <Arduino.h>
void setup()
{
   //初始化模拟量引脚A0口为模拟量输出模式
    pinMode(A0,INPUT_ANALOG);
    //初始化串口0波特率为9600
    Serial.begin(9600);
}
void loop()
{//每隔1秒输出一次A0脚模拟量值,打开串口助手即可看到输出效果
    Serial.println(analogRead(A0));
    delay(1000);
}
STM32小蓝板读取A0脚模拟量值并通过串口0输出
#include <Arduino.h>
void setup()
{
   //初始化模拟量引脚PA0口为模拟量输出模式
    pinMode(PA0,INPUT_ANALOG);
    //初始化串口0波特率为9600
    Serial.begin(9600);
}
void loop()
{//每隔1秒输出一次PA0脚模拟量值,打开串口助手即可看到输出效果
    Serial.println(analogRead(PA0));
    delay(1000);
}

STM32F103C8T6芯片脚位对照表

Stduino 工程式程序开发

在projects下建立一个工程文件夹,所有和该工程相关的文件直接放置在该文件夹下编译即可

好了,以后的学习无非数字量,模拟量,各种通信,有更多详细内容请继续向下学习吧

目前IDE已支持以下板型&芯片:

Stduino IDE Supported boards

文档更新时间: 2021-06-17 11:34   作者:admin