芯科蓝牙BG27开发笔记5-有坑就蒙

2023.09.12

笔记1中的蓝牙点灯是可以运行的,但是有时又会在连接过程中死机,笔记2中经过调试,通过屏蔽log输出的模块解决了此问题,问题定位到了uart。

那到底uart有什么问题?

在对这套工具和代码不熟悉的情况下,根据以往经验,这是不是串口配置问题?应为串口输出中出现了大量\0,偶尔能冒出一行正确的字符。

顺此思路,代码中检索,似乎没有串口配置,那就看看软件组件中:

尽然这三个组件都没有安装!那工程是如何编译通过的,还有突然冒出来的输出正确是怎么回事?

此两点都有悖于以往的经验。

看到三个组件,安装哪个?

只能阅读文字说明,不行就查下开发文档,再不行就蒙!此处直接蒙:

先安装uart core,右边也是这么说的,再随便选USART,因为我不知道EUSART是什么?

上图2安装时候跳出对串口实例的命名,蒙选vcom。

以上两个安装完毕多出一个子项目:

点进去设置:

完了,编译运行,电脑串口能顺利打印日志,手机连接后不再死机。

唉,这都是蒙的功劳啊。

但是提出了问题:

  1. EUSART是什么?

  2. 板子原理图确认一下接线

查阅芯片参考手册《EFR32xG27 Wireless Gecko Reference Manual.pdf》(注意这个参考手册需要官网搜索下载,在ssv5中似乎找不到):

答1:

目前我想只需知道这就是一高级串口。

答2:

由于这开发板底板就是美国芯片大杂烩,这玩意儿本身就是入门第一坑......完全做不到简单明了。

只要找到jlink的uart输入即可,这里就从PA5、PA6反推过来吧,这个板子线路经常出现这样的情况,就是底板上不同的接口,实际上是在蓝牙主板中进行了连接,例如此处的VCOM的RX和TX:

在底板上搜索P9与P11是找不到与主控芯片的连接,需要跟踪F6和F7这一分支:

经过中间的若干选通线路最终找到实际连接了st主控的PA9和PA10,到此,该问题得以释疑。(可知此开发板是多么的不友好了)

最后,BG27的UART1引脚说明

PA5:uart-TX,连接EXP12,以及BreakOut的P9

PA6:uart-RX,连接EXP14,以及BreakOut的P11

相关推荐
handler0110 小时前
从零实现自动化构建:Linux Makefile 完全指南
linux·c++·笔记·学习·自动化
Hello_Embed11 小时前
嵌入式上位机开发入门(二十六):将 MQTT 测试程序加入 APP 任务
网络·笔记·网络协议·tcp/ip·嵌入式
不会编程的懒洋洋11 小时前
C# Task async/await CancellationToken
笔记·c#·线程·面向对象·task·同步异步
zhangrelay15 小时前
蓝桥云课五分钟-通关自动控制-octave
笔记·学习
_李小白16 小时前
【AI大模型学习笔记之平台篇】第六篇:安卓开发AI工具介绍(Android CLI、Android Skill和Android Knowledge Base)
人工智能·笔记·学习
YaBingSec16 小时前
玄机靶场:供应链安全-供应链应急-Part2 通关笔记
java·笔记·安全
qeen8717 小时前
【算法笔记】双指针及其经典例题解析
c++·笔记·算法·双指针
China_Yanhy18 小时前
生产笔记:AI 集群的极致成本与数据保命指南
人工智能·笔记
云起SAAS18 小时前
小智笔记APP源码 | 8大广告联盟聚合(穿山甲/优量汇/快手/百度) | 应用市场过审极速版 | uni-app全栈商用项目
笔记·uni-app·广告联盟·笔记app
ouliten18 小时前
cuda编程笔记(41)--异步数据拷贝
笔记·cuda