Other Parts Discussed in Thread: TCAN4550
您好! 我正在使用一个定制板、其中两个 TCAN4550连接到 nRF52832的同一 SPI 总线、但无法读取任何寄存器。 我已经尝试过所有最低寄存器0x0000、0x0004、0x0008和0x000C、这些寄存器即使在晶体问题上也能正常工作、但我始终得到88000000作为响应。 我尝试了从500kHz 到18MHz 的总线速度、CPOL=0和 CPHA=0的一切(但是为了进行故障排除、我尝试了所有 SPI 模式)。
我看到使用逻辑分析仪(saleae pro 8)从 nRF52832发送正确的字节、但响应几乎始终为88000000 (有时为00000000)。 如果我断开12V 的连接、我将获得 FFFFFFFF、因此我怀疑 TCAN 正在响应某些情况。 这是错误代码吗? 由于消息是在8位的4次突发中发送的、88000000响应意味着位31和27被置位了? 这意味着什么错误?
分析仪的一些输出:
0x61/0x00 0x00/0x00 0x0C/0x00 0x01/0x00 0xFF/0x00 0xFF/0x00 0xFF/0x00 0xFF/0x00 0xFF/0x00
0x41/0x00 0x00/0x00 0x0C/0x00 0x01/0x00 0xFF/0x00
0x41/0x00 0x00/0x00 0x00/0x00 0x01/0x00 0xFF/0x00
0x41/0x00 0x00/0x00 0x04/0x00 0x01/0x00 0xFF/0x00
0x61/0x00 0x08/0x00 0x08/0x00 0x01/0x00 0x12/0x00 0xEF/0x00 0xCD/0x00 0xAB/0x00
0x41/0x00 0x08/0x00 0x08/0x00 0x01/0x00 0xFF/0x00
0x41/0x00 0x08/0x00 0x20/0x00 0x01/0x00 0xFF/0x00
0x41/0x00 0x00/0x00 0x00/0x00 0x02/0x00
0x61/0x00 0x00/0x00 0x0C/0x00 0x01/0x00 0xFF/0x00 0xFF/0x00 0xFF/0x00 0xFF/0x00 0xFF/0x00
0x61/0x00 0x08/0x00 0x30/0x00 0x01/0x00 0x00/0x00 0x00/0x00 0x00/0x00 0x00/0x00 0x41/0x00 0x08/0x00 0x30/0x00 0x01/0x00 0xFF/0x00
0x41/0x00 0x08/0x00 0x20/0x00 0x01/0x00 0xFF/0x00
0x61/0x00 0x08/0x00 0x20/0x00 0x01/0x00 0x00/0x00 0x00/0x00 0x00/0x00 0x00/0x00 0x00/0x00 0x00/0x00
0x41/0x00 0x10/0x00 0x18/0x00 0x01/0x00 0xFF/0x00
我将您的官方驱动程序移植到 Zephir RTOS、但在读取最低寄存器时、我专注于简单的写入/读取命令、以确定它是硬件还是软件。 但现在我被卡住了。
我们一开始就遇到了一些硬件问题。 我们首先装配了一个占用空间错误的40MHz 谐振器(OT201640MJBA4SL)、而不是我们打算使用的晶体(ABM11W40.0000MHZ81UT)。
谐振器:
1个三态2 GND 3输出4 VDD
封装尺寸:
1 OSC1 2 GND 3 OSC2 4 GND
不要认为它损坏了 TCAN4550?
我的组装人员在电路板上用正确的晶体替换了谐振器、他可以看到它振荡良好。 我们在不同的国家/地区工作、我没有晶体。 相反、我移除了谐振器和电容器、将 OSC2焊接到 GND、并使用设置为40MHz 3.2Vpp 偏移1.6V 到 OSC1的信号生成。 运气差。 但是、即使振荡器出现故障或缺失、最低寄存器也应该可以访问吗?
接下来、nRF52832的标准驱动强度导致 SCK 上升时间过慢(测量值约为40ns)。 我们增加了它、现在测量到它上升约8ns (在10ns 规格内)。 仍然没有改善。 我认为上升时间规格10ns 是在0.3*VIO (最大 L)和0.7*VIO (最小 H)之间测得的? 不管怎样,运气不好。
I 测量:
VSUP:12.26V
VCCOUT:5.05V (4分钟后降至0V、在规格范围内)
fltr:1.498V (4分钟后降至0V、在规格范围内)
INH:12.26V (未连接)
Stdby:0V
nINT:0V
我的设置是:
VIO:3.3V、100nF 至 GND。
INH:悬空。
VSUP:12V、100nF/100nF/10uF 至 GND。
fltr:330nF 至 GND。
VCCOUT:10uF 至 GND。
WAKE:到 MCU 输出、2x 10nF 到 GND (软件中 BOOT 时引脚设置为低电平)。 功能被误解、在下一个修订版本中、这将连接到没有电容器的 GND。
SCLK / SDI->MOSI / SDO->MISO:MCU 的 SPI (总线上无其他 SPI 从器件)。
CS:MCU 的两个独立输入(无上拉电阻)。
GPO1:MCU 的输入(无上拉/下拉)。
GPO2:MCU 的输入(无上拉电阻)。
INT:MCU 的输入(无上拉)。
RST:MCU 输出(无下拉电阻)
WKRQ:MCU 输入(无上拉电阻)。
CANH/L:2个60.4R 连接在一起、4.7nF 接地。
CANH/L:PESD1CAN 连接至 GND。
晶振:ABM11W40.0000MHZ81UT
C:10pF
