芯科蓝牙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

相关推荐
使一颗心免于哀伤1 天前
《设计模式之禅》笔记摘录 - 21.状态模式
笔记·设计模式
_落纸3 天前
三大基础无源电子元件——电阻(R)、电感(L)、电容(C)
笔记
Alice-YUE3 天前
【CSS学习笔记3】css特性
前端·css·笔记·html
2303_Alpha3 天前
SpringBoot
笔记·学习
Hello_Embed3 天前
STM32HAL 快速入门(二十):UART 中断改进 —— 环形缓冲区解决数据丢失
笔记·stm32·单片机·学习·嵌入式软件
咸甜适中3 天前
rust语言 (1.88) 学习笔记:客户端和服务器端同在一个项目中
笔记·学习·rust
Grassto3 天前
RAG 从入门到放弃?丐版 demo 实战笔记(go+python)
笔记
Magnetic_h3 天前
【iOS】设计模式复习
笔记·学习·ios·设计模式·objective-c·cocoa
周周记笔记4 天前
学习笔记:第一个Python程序
笔记·学习
丑小鸭是白天鹅4 天前
Kotlin协程详细笔记之切线程和挂起函数
开发语言·笔记·kotlin