STM32-Arduino编程 串口通信
环境说明
开发软件:vscode+PlatformIO
操作系统:win10
开发板:STM32F103C8T6
其他硬件:USB转TTL模块(需要安装对应驱动)
使用Arduino开发STM32原因
STM32开发比较常用的软件有Keil和STM32Cube,但是用过的同学都应该发现这两款软件对于新手不怎么友好,需要花费很长的时间才能做到入门。特别是在开发一些比较复杂的程序时,比如植入freertos,安排几个任务,能把人给折磨死。与Keil和STM32Cube相同的的是,STM32-Arduino也是采用的库函数开发,并不存在低人一等的说法。当然需要承认的是相比于寄存器开发的程序还是要差一点的。STM32-Arduino在库函数得到基础上进一步的封装,可以大大的降低程序中出现的配置出错的问题,让新手的同学可以更快的开发出高质量的STM32的程序。
直接开始操作
首先打开platformIO,创建工程。
工程名称随便,要设定好对应的开发板。我这里使用的是开发板STM32F103C8T6,至于为什么要用这个开发板,主要是因为穷。如果需要使用其他的板子,在创建工程时设定好对应的板子即可。
Arduino中默认串口是定义好的,使用的一般情况下串口通信常用的引脚。如果想用自己不想用默认的引脚,可以使用HardwareSerial类自己定义并配置引脚。
#include <Arduino.h>
void setup() {
Serial.begin(9600);
}
void loop() {
Serial.println("hello,world");
delay(1000);
}
测试硬,STM32外接USB转TTL,串口调试助手可以接收到单片机发送的数据。