【航芯 ACM32F070配套电容触摸开发板 目标--双机UART通信联动之Arduino准备】
[复制链接]
本帖最后由 JohnMatthrew 于 2022-11-5 23:30 编辑
相当愉快的体验过程,也很容易上手这套开发板。虽然本人也有用过STM32,但是呢,平时做纯硬件开发的,用得还是少一些。(某新能源汽车车企员工哈哈)作为开发主驱硬件项目的主管,时间挺忙的,所有的东西都是抽空做的,我都很用心在一直持续做,做好了验证,验证好了我拿出来和大家一起分享。经过一段时间的学习和体验航芯ACM32F070套件开发板,也快到体验尾声了。这个时候得拿出一些干货出来了,那就对应我的评测主题,那就拜托和Arduino串口通信联动。
用到的材料先和大家分享一下:
1、航芯 ACM32F070配套电容触摸开发板一套(就是我们伟大的申请评测工具了)
2、Arduino Pro mini
3、CH340G下载器一个(主要是给Arduino烧录程序的,以及测试串口的收发)
4、PC一台(写代码,调试)
首先我先拿我的Pro mini写好代码,预留好我们串口需要的一些信息,这期先做我们功能蓝图规划。
最简单的办法凸显出我们电容触摸的就是,触摸按键有上下左右,分别对这个按键进行赋值,按下对应按键发送对应字符
上 ----- a
下 -------b
左 --------c
右 ---------d
分别进行赋值好了,收到以后,让Arduino返回1(收到)
那么,Arduino的代码怎么写呢?开始敲击代码,
首先开始初始化:
void setup()
{
//初始化的时候亮个灯闪烁一下
digitalWrite(13,HIGH);
delay(100);
digitalWrite(13,LOW);
delay(100);
//串口设置波特率,保证大家能在同样频率下聊天
Serial.begin(115200);
Serial.print("initialize OK");
delay(10);
}
这样就完成了初始化设置啦,接下来是硬菜,不过呢,我觉得简单的事情就简单做,一轮字符串识别就完事。在这个之前,加上全局变量String temp定义到最开始顶头,这样最安全,做串口接收到的内容。
接下来到loop内容:
void loop(){
//第一时间,先让我们的串口正常接收东西,再安排识别,收完要等一下再识别哈
if(Serial.available()>0)
{
delay(20);
temp = Serial.readString();
//接下来判断开始,只要发abcd其中之一,就回复1
//秉承开源的态度,那就放出关键代码哈哈哈,但是具体的源码我就post在我的Gitlab或者是Github,欢迎大家获取
if(temp=="a"){
digitalWrite(13,HIGH);
delay(50);
digitalWrite(13,LOW);
delay(50);
Serial.print("1");
}
依次备好abcd内容,均为回复1,如果想改成其他的,没关系,只要修改代码就可以。
我把视频概况给大家看看,安排烧录代码进Arduino,串口调试助手进行验证,均为OK的,一旦发字符a b c d其中之一,回复1
之后下期准备收尾,把航芯的套件备好。
安排安排哈哈哈
|