【Telink B91】2. 矩阵按键以及freeRTOS应用
【Telink B91】3. 硬件I2C驱动OLED
【Telink B91】4. 硬件I2C采集HS3003温湿度信息
前言
第一次使用Telink的开发板,给我的感受就是两个字:折腾,第一次尝试使用就遇到了各种各样的问题,下面就说一下遇到的各种奇葩问题,帮助后面使用的小伙伴避坑。
1 入坑总结
1.1 坑1:导入官方SDK
问题:官方SDK的下载链接为:[](),版本为V2.2.0,这个版本的SDK导入到Telink RDS中的时候会报错,如下,不知道具体原因,很多小伙伴都导不进去。
解决方法:在试用群中的大佬@Cris的帮助下获取到了V2.1.1的工程,则可以成功导入进行测试,验证了其中的UART_Demo程序,测试成功,见文末的测试结果展示。
关于Demo的说明可以参考官方提供的handbook:http://wiki.telink-semi.cn/wiki/chip-series/TLSR921x-Series/
可用工程下载:因为大于了5M,上传不了平台,所以就放在百度云中了。链接:https://pan.baidu.com/s/1JsTad_lLkHKzcrKFF1gAxA?pwd=io6s提取码:io6s
或者
1.2坑2:连接烧写器
连接烧写器有两个坑:
- 第一个是官方送的4根杜邦线,其中有两根是坏的,我最开始使用BDT工具进行连接的时候,总是连接不上,还以为是板子或者调试器的问题,浪费了很多时间,结果后面用万用表测试了一下杜邦线的通断,发现4根线中的两根是断开的,欲哭无泪,换了线就OK了。**遇到连接不上问题的小伙伴一定要试一下换杜邦线**
- 第二个是烧录器的固件需要更新,不然是连接不了B91的,具体更新方法如下:
- BDT选择Help->Upgrade,在弹出的对话框中点击“Read FW Version”可以读取到烧录器当前的版本;点击“Load...”选择固件下载,固件在BDT工具目录下->config->fw中选择,选择版本v3.5的固件下载即可。
2 Demo验证
2.1 修改工程
上面的坑都排除之后,就可以试试官方SDK中的UART Demo了,导入SDK包到工程之后。
然后打开vendor->UART_DEMO目录,打开app.c文件,修改宏UART_RX_IRQ_LEN为1,如下,目的是每收到一个字符就原样打印出来,原来的程序是16个字符,不好测试:
2.2 编译
选择UART_Demo进行编译,如下图,编译完成之后会生成bin文件在UART_Demo目录下的output目录下。
下图是可下载文件,需要通过BDT下载到单片机中:
2.3 下载
如下图所示,菜单栏选择 `File->Open`找到当前生成的bin文件,然后点击如下图中所示的Download按钮开始下载程序到单片机中,等待下载完成即可。
2.4 硬件连接
测试串口功能,我们还需要一个USB-TTL工具,任意一个都可以,然后连接到单片机的PB2和PB3,为什么是PB2和PB3呢,我也是看代码才知道的,如下。
其中:
USB-TTL Telink B91
RX PB2
TX PB3
连接如下图所示,直接从PCB上的文字不太好看出来,PB2和PB3分别连接如下:
再从旁边来一张:
3 试验结果
如下所示,我没发送一个字符,Telink B91就立刻反馈一个相同的字符,分别发送了三次AA和2次BB。
注意:需要选择hex发送,即16进制发送。
折腾了很久,终于可以愉快地玩耍了