Ardunio IDE实现STM32的串口通信与LED灯闪烁

一、实验环境配置

Arduino IDE开发STM32F10X的环境

提取码:q251

  1. 打开arduino-1.8.12-windows.exe 进行安装

  2. 将解压的 Arduino_STM32 文件夹拷贝到 Arduino IDE 安装目录下的 hareware

    例如:D:\arduino-1.8.12\Arduino\hardware

    该文件来自于国外大佬STM32配置文件

    拷贝了之后,在 Arduino IDE“工具 -----> 开发板” 将会出现 STM32F1系列 的开发板,如:Generic STM32F103C series

  3. 在Arduion中安装编译支持文件

    工具 -----> 开发板 -----> 开发板管理器,搜索 ARM,选中 Cortex-M3系列的编译支持文件并安装

  4. 安装解压文件中的 flash_loader_demo_v2.8.0.exe

  5. STM32开发板连接

    将USB转TTL工具上的VCC,GND,TXD,RXD与开发板的VCC,GND,RXD,TXD相连,注意开发板的TXD是与USB转TTL工具的RXD相连。然后将STM32开发板上的BOOT0用短路冒接入高电平1,BOOT1用短路冒接入低电平0。

    由于本人使用的开发板是野火的指南者,所以连接方式如下:

    野火指南者端口
    PA9 (USART1-TX)RXD
    PA10 (USART1-RX)TXD
    BOOT03V3
    BOOT1GND
  6. 点击开始 -----> 最近添加 -----> Demonstrator GUI

    ① 选择解压文件中的 STM32duino-bootloader-master.zip 压缩包进行解压

    ② 选择串口

    ② 然后一直 "Next"

    ③ 选择 .bin文件

    例如我解压的路径为:D:\arduino-1.8.12\STM32duino-bootloader-master\binaries,因为开发板PB0引脚有板载LED灯,所以我选择的是 generic_boot20_pb0.bin 文件,根据自己的实际情况而定。然后 “Next”

    ④ 烧录成功后,点击 "Close"

二、代码实现

  1. 打开Arduino软件,选择工具配置如下:

  2. 程序代码如下:

    int flag=1;   
    char Stop[]="stop\n";
    void setup() {
      //初始化
      pinMode(PB1, OUTPUT);//PB0为绿色,PB1为蓝色,PB5为红色,可根据需要改动
      Serial.begin(115200);
    }
    void loop() {
      int i=0,flag_s=0;
      char receive_data[50];
      digitalWrite(PB1, HIGH); //小灯亮
      delay(500); // 延迟
      digitalWrite(PB1, LOW); //小灯灭
      delay(500); // 延迟
      while (Serial.available()> 0)     //当发送缓冲区有数据时
      {
              receive_data[i] = Serial.read();    //从串口的缓冲区取出并读取一个Byte的数据
              delay(10); 
              i++ ;                              
      }
      if(Stop[i]=receive_data[i])
      {
        if(Stop[i-1]==receive_data[i-1]&&Stop[i-2]==receive_data[i-2]&&Stop[i-3]==receive_data[i-3])
        {
          flag=0;
          Serial.println("yes sir!");
        }//当收到stop命令时停止并回复收到
      }
      if(flag==1)
      {  
        Serial.println("Hello World!");//向串口发送数据
        delay(100); // 延迟
      }
    }
    
  3. 先编译,再上传

  4. 演示效果如下

    ① 开发板

    ② 串口监视器(工具里面)

三、参考🔗

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值