PD调试

PD调试_第1张图片

TOPS

杂谈

Contents

1. 描述

Describes

调试记录(粗略)

1、使用 IIC 对 TYPE-C 芯片写多个字节的时候,发生多写一个,导致写到写一个寄存器,再去读取的时候数据错乱。
2、走到 PD 协议时,底层未做多个字节读取接口。
3、寄存器属性 R/W/C, C 有时候会读取之后自清。
4、板子出现现象类似掉电丢失程序,实际测试发现 VBUS 供电没到板子上,板子主控没电。
5、source 端外供电不能和 sink 通信,原因:source VBUS 没有供电过来。
6、51板子 ,sink 通过的 type-c 线,VBUS 没有电压,线路问题。
7、51板子,程序使用联合体位域时,包含结构体时,unsigned :1 MDK 编译器会取两字节对齐,如果是单字节的联合体,必须改为 unsigned char:1 ,否则写入数据出错,典型的字节对齐问题。
8、在底层 sink 或者 source 功能时,程序要避免 toggle check other cc line 。否则会进入超时,导致状态复位。(有可能需要解决)
9、测试通信,如果在程序运行前已经插入 CC 线,sink 端没法获取 source 的能力,因为 source 前期通信有超时机制,必须要拔掉重新插入,通信发生在刚连接上的时刻。
10、调试时重点关注,控制寄存器、状态寄存器、中断寄存器。
11、measure cc line valotage 写测量标准进寄存器,再把测量值读取出来时,不符合实际值,原因是 IIC读写接口问题。

你可能感兴趣的:(PD调试)