RISC-V技术论坛
直播中

史逸如

9年用户 39经验值
擅长:嵌入式技术 控制/MCU
私信 关注

【泰凌微TLSR9系列开发套件试用体验】TLSR9518B 烧录器和Swire总线知识

本帖最后由 史逸如 于 2022-7-3 11:44 编辑

TLSR9518B烧录器和Swire总线知识
        工预善其事,必先利其器,这几天一直被TLSR9xxx的烧录器问题搅得很烦,区分开了TLSR9 Dev Key和Telink Burn Board这两者有着很大不同,前者支持2-wire JTAG和4-wire JTAG(见文档《AN_20200731_E_User Guide forTLSR9_DEV_KEY》),后者支持Swire和UART,且后者有2枚按键:
烧录器.png
图1 TLSR9 Dev Key和Telink BurnBoard两种烧录器对比
槽点有二:
1.      Telink Burn Board没有相应说明,且TLSR9518ADK80D板子接线也未提及
2.      没有像jlink那样出现信号指示(Jlink连接成功会亮绿灯,接错亮红灯,正在编程闪绿灯),板子同理没有任何指示信号
本身是128K SRAM+512KFlash,4K/Sector(0x1000),共128个扇区;RV32指令集。
flash.png
图2 Flash大小
一、BDT报错Swire error问题
文档给的是TLSR9 Dev Key接法,Telink Burn BoardTLSR9518ADK80D的接法目前没找到有关说明,和技术沟通后才得知Telink Burn Board需升级固件,后来几番查找在OpenHarmony的仓库发现了原话,见链接https://gitee.com/openharmony/device_soc_telink/blob/master/README_zh.md#%E7%BC%96%E8%AF%91%E5%B7%A5%E7%A8%8B
360截图18270615195022.png
图3 TelinkBurn Board提示Swire error解决办法:固件升级
二、Swire总线知识
有几个很重要的参考链接,基于M6智能手环拆解:
以前开发过DHT11驱动,也是single-wire,但此swire非彼single-wire,还是差距很大,参考上面链接,知道先发起始字节0x5A,再发两字节地址,接着RW_ID,再就是数据,结束是0xFF。每个字节由9bit构成,MSB代表Cmd/Data,0代表后续序列为命令,1代表数据,起始和结束字节MSB均为1。每bit构成见下文详细描述。上述第2个链接有STM32模拟的Swire时序驱动。具体时序我抓取了波形,不知是我的LA精度不够还是烧录器固件时钟本身有偏移:
起始字节.png
图4 Swire起始字节0x5A
通过量测,得到:
  
电平bit
  
  
Tlow(us)
  
  
Thigh(us)
  
  
高低比值
  
  
bit时间(us)
  
  
0
  
  
0.375
  
  
2.125
  
  
5.67
  
  
2.5
  
  
1
  
  
1.875
  
  
0.625
  
  
3
  
  
2.5
  
官方描述0电平是Thigh/Tlow=4,1电平是Tlow/Thigh=4,由上表知总时间不变,但比值在波动(5.67+3)/2=4。

更多回帖

发帖
×
20
完善资料,
赚取积分