This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
工具/软件:Code Composer Studio
您好!
在内部设计的电路板上、我尝试通过 SPI4 (4线制模式)访问 TPS65381、但 SPI4_NCS[0]、引脚24 (PGE)保持高电平(VDD_IO = 3.3V 时为2.3V)。
我在研究 TRM 后设计的初始化代码会产生以下寄存器设置(通过 XDS100v2调试探针报告、并附有与 HALCoGen 生成的初始化函数偏差相关的注释):
GlbCtrl0 0x00000001 全局控制寄存器0
GlbCtrl1 0x01000003 全局控制寄存器1
Int0 0x00000000 中断寄存器
IntLevel 0x00000000 中断级别寄存器
IntFlg 0x01000200 标志寄存器
有趣 的0x01010E01 引脚控制0
DIR 0x00000000 管脚控制1 (HALCoGen 偏离、0x00010601、功能管脚的 IMHO 被忽略)
DIN 0x00000001 针脚控制2
DOUT 0x00000000 引脚控制3 (HALCoGen 偏离、0x00000001)
DSET 0x00000000 引脚控制4 (HALCoGen 偏离、0x00000001)
DClr 0x00000000 引脚控制5 (HALCoGen 偏离、0x00000001)
PDR 0x00000000 引脚控制6.
Pdis 0x00010601 引脚控制7 (相关比较 查尔斯的答案、最后 一段)
PSEL 0x01010F01 引脚控制8.
TxDat0 0x0000A300 发送数据寄存器0
TxDat1 0x0400A300 发送数据寄存器1 (这是在尝试读取 TPS65381寄存器之后、请注意 WDEL = 1且 CS[0]= 0
RxBuf 0x80000000 接收缓冲寄存器
EMU 0x8000000 仿真寄存器
延迟 0x0405FFFF 延迟寄存器(HALCoGen 偏差、0x04050000、不相关)
DefCs 0x00000001 默认芯片选择寄存器
DatFmt0 0x55002B10 数据格式寄存器0
我将 init()之后的代码减少到这个循环:
while (1){ spiREG4->DAT1 = 0x04FEA300;// 4是 WDEL、FE 是 CS_0、A3是读取 TPS 寄存器 SAFETY_STAT_3 、而(!(spiREG4->FLG & 1<<8);// TRM 28.8.1、28.9.5 uint16 = spiREG4->BUtmp); //(TPS65381 5.5.3.5) }
有什么想法要去哪里?