用Aduino IDE完成STM32指南者开发板的串口通信

一、Arduino的安装

先下载其安装包下载

在这里插入图片描述
解压之后,双击exe文件进行安装,如果中途有弹出窗口让你选择安装还是不安装,请一直选择安装。
安装完后close.
在这里插入图片描述

二、Arduino的配置

双击打开应用,进行如下图中的操作
点击工具中开发板“…”,再点击开发板管理器
在这里插入图片描述
出现如下界面
在这里插入图片描述

输入ARM筛选,选择如下图进行安装(这里是安装好的,所以右下出现的是删除,安装过程有几分钟,请耐心等待。)
在这里插入图片描述
查看是否安装成功
在这里插入图片描述

下载.Arduino_STM32版型文件,
在这里插入图片描述
将其解压到Arduino安装路径下的hardware
在这里插入图片描述
再进入软件查看,是否配置成功
在这里插入图片描述
根据自己的板子进行如下选择(本文用的是野火指南者STM32f103VE系列)
在这里插入图片描述

打开软件自带示例查看是否配置成功

在这里插入图片描述
进行编译
编译无错

在这里插入图片描述

三、连接开发板

连接硬件
在这里插入图片描述
选择端口,我这里连接的端口是COM5
在这里插入图片描述

四、进行串口通信

新建文件,进行如下配置
在这里插入图片描述
将代码拷贝进去,保存。
代码如下:

String rString="";  //接收到达字符串 
String Stop_flag="stop";
String Begin_flag="begin";
void setup() {
//初始化
pinMode(PB1, OUTPUT); //PB0为绿色,PB1为蓝色,PB5为红色,可根据需要改动
Serial.begin(115200);
}
void loop() 
{
  int i=0,flag=1;
  char inByte[1000];
  digitalWrite(PB1, HIGH); //小灯亮
  delay(500); // 延迟
  digitalWrite(PB1, LOW); //小灯灭
  delay(500); // 延迟
  Serial.println("Hello world!");//向串口发送数据
  while (Serial.available()> 0)     //当发送缓冲区有数据时
  {
       rString = Serial1.readString(); //将接收数据存到接收字符串里 
                              
  }
  if(rString==Stop_flag)
   {
    
    Serial.println("收到!");//当收到stop命令时停止并回复收到!
    while(1)
    {
      while (Serial.available()> 0)     //当发送缓冲区有数据时
     {
       rString = Serial1.readString(); //将接收数据存到接收字符串里 
                              
     }
     if (rString==Begin_flag)
     {
      Serial.println("继续发送");
      break;
     }   //表明恢复发送,跳出死循环
    }
   } 
}

打开串口监视器
在这里插入图片描述

按一下板子上的复位键,然后开始上传
在这里插入图片描述
上传成功之后,就可以看到LED灯开始闪烁
在这里插入图片描述

可以在串口监视器中看到,输入stop停止发送数据,输入begin开始发送数据
在这里插入图片描述

五、基于标准库函数与基于HAL库函数的stm32编程方式的差异

标准库

ST公司为每款芯片都编写了一份库文件,也就是工程文件里stm32F1xx.....之类的。在这些 .c .h文件中,包括一些常用量的宏定义,把一些外设也通过结构体变量封装起来,如GPIO口时钟等。所以我们只需要配置结构体变量成员就可以修改外设的配置寄存器,从而选择不同的功能。

HAL库

全称Hardware Abstraction Layer(抽象印象层)。HAL库的一些函数可以做到某些特定功能的集成。也就是说,同样的功能,标准库可能要用几句话,HAL库只需用一句话就够了。并且HAL库也很好的解决了程序移植的问题,不同型号的stm32芯片它的标准库是不一样的,例如在F4上开发的程序移植到F3上是不能通用的,而使用HAL库,只要使用的是相通的外设,程序基本可以完全复制粘贴。

六、stduino IDE试玩

Stduino IDE是一款面向32位处理器快速入门学习的集成开发平台,已率先支持Arduino_Core_STM32框架,集聚快捷、高效、免费、开源、易得于一身,软件还集成了GDB调试功能!

功能:

  • GDB调试
  • 封装库下载安装
  • 代码自动补全提示
  • 中英文模式
  • UTF-8\GBK编码格式
  • 代码快速格式化
  • SWD\串口程序下载&调试

用起来确实方便一点,比KEIL和aduino要简单一点,容易上手。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值