STM32
直播中

偶是糕富帅

11年用户 788经验值
私信 关注
[问答]

如何利用Arduino IDE去完成stm32的串口通信呢

怎样安装Arduino IDE并完成相关配置呢?

如何利用Arduino IDE去完成STM32的串口通信呢?

回帖(1)

李娜

2021-12-7 14:37:52
一、安装Arduino IDE 并完成相关配置

  1.下载Arduino IDE 并进行安装

  

  

2.将安装包下面的Arduino-STM32文件夹复制到安装目录下(一般在C盘)的hareware文件夹中

  

  

3.打开Arduino,点开工具-开发板-开发管理器,输入ARM进行搜索,并选择Cortex-M3进行安装

  

  

4.安装过后再次点击工具进行配置
具体如下

  

  

  二、进行编译烧录

  1.任务如下:持续串口输出:Hello world!
当接收到 stop 时,停止输出。
代码如下:
  
int flag=1;   
char Stop[]="stopn";
void setup() {
//初始化


Serial.begin(115200);
}
void loop() {
int i=0,flag_s=0;
char inByte[50];


while (Serial.available()> 0)     //当发送缓冲区有数据时
{
        inByte = Serial.read();    //从串口的缓冲区取出并读取一个Byte的数据
        delay(10);
        i++ ;                              
}
if(Stop=inByte)
{
  if(Stop[i-1]==inByte[i-1]&&Stop[i-2]==inByte[i-2]&&Stop[i-3]==inByte[i-3])
  {
  flag=0;
  Serial.println("收到!");
  }//当收到stop命令时停止并回复收到
}
if(flag==1)
{  
Serial.println("Hello World!");//向串口发送数据
delay(1000); // 延迟
}
}
2.先点击验证,再点击烧录,每次烧录前要按一下RESET键
  

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

  1、HAL库的出现比标准库要晚,但其实和标准库一样,都是为了节省程序开发的时期,而且HAL库尤其的有效,如果说标准库把实现功能需要配置的寄存器集成了,那么HAL库的一些函数甚至可以做到某些特定功能的集成。也就是说,同样的功能,标准库可能要用几句话,HAL库只需用一句话就够了。
2、HAL库也很好的解决了程序移植的问题,不同型号的stm32芯片它的标准库是不一样的,例如在F4上开发的程序移植到F3上是不能通用的,而使用HAL库,只要使用的是相通的外设,程序基本可以完全复制粘贴,注意是相通外设,意思也就是不能无中生有,例如F7比F3要多几个定时器,不能明明没有这个定时器却非要配置,但其实这种情况不多,绝大多数都可以直接复制粘贴。
3.使用stduino IDE的体会
编程语言较为简单,比起keil,stduino极易掌握,同时有着足够的灵活性。不需要太多的单片机基础、编程基础,简单学习后,可以快速的进行开发,自带程序烧录,自带串口调试,软件界面简洁。stduino IDE可以在Windows、Macintosh OS X、Linux三大主流操作系统上运行。而且Arduino不只是开发板,还是开源的电子平台。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分