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.

[参考译文] TCAN4550-Q1:使用独立收发器

Guru**** 2391425 points
Other Parts Discussed in Thread: TCAN4550EVM, TCAN4550

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/963383/tcan4550-q1-use-a-stand-alone-transceiver

器件型号:TCAN4550-Q1
主题中讨论的其他器件:TCAN4550EVMTCAN4550

通过添加 TCAN4x5x_Device_EnableTestMode (TCAN4x5x_DEVICE_TEST_MODE_PHY)、我将 GPIO1和 GPO2启用为 RXD_INT_CAN 和 TXD_INT_CAN。

我已经在 TCAN4550EVM 上进行了测试。 因此、我制作了一个 PCB 来测试它、但 RXD_INT_CAN 和 TXD_INT_CAN 没有任何信号。

您对此有什么想法吗?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Ted:

    您配置的测试模式将从系统中移除 CAN FD 控制器、并将 TCAN4550用作独立收发器。  您将需要向 GPIO1引脚提供 TXD 信号、向 nINT 引脚提供 EN 信号、RXD 信号应反映 GPO2引脚上的 CANH、CANL 和 TXD 信号。  该测试模式如数据表中的图28所示、我在下面重点介绍了该模式。  这是您想要的配置吗? 如果是、当您在 GPIO1引脚上提供 TXD 信号且 nINT 引脚具有良好的 EN 信号时、您应该会看到 GPO2引脚反映 RXD 信号。  如果情况并非如此、您能否提供电路板原理图和测试设置图供我查看?

    如果您想将外部收发器连接到 TCAN4550的 CAN FD 控制器、则需要图29所示的测试模式。  这将对应于以下函数调用:

    TCAN4x5x_Device_EnableTestMode (TCAN4x5x_device_test_mode_controller)

    如果在此模式下将外部收发器连接到 GPIO1和 GPO2引脚、则在尝试发送消息时应能够在 CANH 和 CANL 引脚上看到信号。

    此致、

    Jonathan

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Jonathan、

    我传递了一个错误的函数、我的项目是将外部收发器连接到 TCAN4550、

    我在 Init_can ()之后添加函数 TCAN4x5x_Device_EnableTestMode (TCAN4x5x_device_test_mode_controller)。

    当我使用 TCAN4550EVM 时、此函数工作正常、但在我的原理图中它不工作。

    这是 tcan4550和外部收发器的一部分。

    在我的测试中、外部收发器可以将数据接收到 GPIO1 (RXD_INT_CAN)、但 TCAN4550的 CAN FD 控制器无法接收数据。 从 TCAN4550的 CAN FD 控制器发送数据时、GPIO2 (TXD_INT_CAN)没有任何数据输出。 我从 TCAN4550获取 BUS_OFF 和 Error_passive 状态。

    是否有任何方法可以检查功能或我的原理图有误?

    此致、

    TED

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Ted:

    感谢您提供原理图以供审阅。 我有以下意见:

    -       RST (RESET)引脚悬空。 器件中有一个弱下拉电阻器、但如果系统中有一些噪声、该电阻器可能不够强、无法防止器件进入复位条件。 建议在该引脚上添加一个外部源、或者也添加一个外部下拉电阻器。

           - WAKE 引脚悬空。 当不使用该引脚时、建议将其直接连接到 VSUP 或 GND、以防止其改变可能导致 TCAN4550中断的状态。

    -       FLTR 引脚需要一个用于稳定内部5V LDO 的电容器、建议使用330nF (0.33uF)的推荐值。 当前使用的0.1uF 电容器的值应该增加。

    -       WKRQ_N 引脚是一个通过0欧姆电阻器短接至 GND 的输出引脚。 R29应该被移除。

    -       CAN 引脚未端接、需要在电路板或总线上的端子之间通过 CAN 总线两端放置的典型120 Ω 电阻器放置一个60欧姆的电阻。 CAN 协议要求这些引脚之间的阻抗为60欧姆、以便进行通信。 如果您不打算使用内部收发器、这是可以的。 但您尚未显示包含您正在使用的收发器的原理图部分、它将需要端接。

    -       我看到 U4上使用了3.3V 的 TCAN4550 VIO 电压和5V 的 VDD 电压。 这种不匹配可能会阻止 RX 和 TX 数字数据超过两个器件所需的阈值。

    -       根据我过去的经验、晶体上 C12和 C13电容器的30pF 值看起来太大。 我不知道这种特定晶体的要求是什么、但我通常会看到接近8pF 的值。 如果这些电容器过小或过大、则可能会出现导致振荡停止或不在加电时启动的情况。 如有必要、应检查并调整这些值。

    一些原理图注释可能会导致您的通信问题、但如果您能够在 TCAN4550中读取和写入寄存器、则其中的大多数可能是改进建议。

    与 TCAN4550 EVM 配合使用的配置设置还应与您开发的板兼容。 但是、当您声明从 TCAN4550获得总线关闭和错误被动状态时、这会告诉我很多有用的信息。 您需要将第二个 CAN 模块通过 CANH 和 CANL 线路连接到 TCAN4550电路板,这将“确认”您尝试发送的 CAN 消息。

    如果第二个节点连接不正确、TCAN4550将尝试发送可能导致 TX 故障的消息并增加 TX 错误计数。 然后、它将尝试再次传输消息、直到成功传输或达到错误计数最大阈值。 一旦此错误计数值达到最大值,设备将进入“总线关闭”状态,并禁用 CAN 总线上的任何活动,并将 INIT 位设置为‘1’。 MCU 需要将 INIT 位设置回‘0’才能参与 CAN 活动。

    除非禁用自动重发送(DAR)位置位、否则如果总线上存在配置错误、器件将快速进入总线关闭状态。 我怀疑在初始配置之后、您尝试发送的第一条消息会导致 TX 错误计数快速增加、并且器件进入总线关闭状态、您会在该位置停留。 如果您在启动期间在 TX 信号上连接示波器探针、您是否能够在 TX 引脚尝试发送第一条消息时在该引脚上看到此初始活动?

    您可以通过将 DAR 位设置为‘0’来尝试禁用自动重发送,这样它只会尝试一次发送消息。 现在您可能需要启用外部回送功能、以便它将您在 TX 引脚上传输的消息视为 RX 引脚上有效接收的消息、并忽略来自第二条消息的确认。 这通过测试寄存器0x1010中的 LBCK 位来完成。

    您能否检查是否有任何原理图建议有所不同? 在发送第一条消息时、您能否在初始化之后立即使用示波器捕获 TX 引脚上的任何活动? 您能否尝试设置 DAR 和/或 LBCK 位来查看是否可以阻止器件进入总线关闭状态?

    此致、

    Jonathan

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Jonathan、

    我花了一些时间来修改原理图并检查与 TCAN4550EVM 配合使用的配置设置。

    我有一个 CAN 总线分析器、因此我发送消息以使用其自己的收发器测试 TCAN4550。 数据是正确的发送和接收。 但是、当我通过外部收发器发送消息时、TX 引脚没有任何活动。 当接收到消息时、外部收发器将数据发送到 RX (GPIO1)引脚、然后按如下方式进行捕获。

    我认为这是不正确的、所以我将 RX 线切割到 TCAN4550、然后得到 这样的波形。

    波形看起来正确。 现在、我不知道为什么在 RX 引脚连接到外部收发器时波形发生变化。 RX 引脚没有外部下拉和上拉电阻器。

    此致、

    TED

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Ted:

    感谢波形。  我注意到电压电平有所变化。

    您正在使用的隔离式 CAN 收发器(U4)的器件型号是多少? 对于 TX 和 RX 信号、它在 TCAN4550侧的3.3V 电压下工作吗?

    您在 RX 和 TX 信号上使用3.3V 的 VIO 电压和10k 上拉电阻器、TCAN4550期望 TX 和 RX 信号的数字 IO 电压电平为3.3V。  但是、您对隔离式 CAN 收发器的 VCC1电压使用5V、因此我希望它对 RX 和 TX 上的数字 IO 电平使用5V。

    两个不同的电压电平可能存在问题。  在进行测试时、您是否在 EVM 上使用了相同的隔离式 CAN 收发器?  如果是、它是否与具有两个不同电压电平的 EVM 配合使用?

    在这种情况下、我认为不需要10k 上拉电阻器、您可以尝试将其移除、看看它是否有助于信号达到适当的振幅。

    此致、

    Jonathan

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Jonathan、

    在我将 VIO 电压更改为5V 并移除 RX 上的10k 上拉电阻器后捕获波形。  TCAN4550和隔离式 CAN 收发器的电压电平是相同的。

    我正在使用 ADM3050的隔离式 CAN 收发器。 当我使用 EVM 进行测试时、CAN 收发器是不同的。 我还在 PCB 中测试了相同的 CAN 收发器、但波形相同。

    此致、

    TED

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Ted:

    我想验证我对您的测试设置的理解、以确保我没有遗漏任何东西。  我绘制了两个图供您验证。

    根据我的理解、您已经使用 MCU、TCAN4550 EVM 和外部 CAN 收发器进行了测试、如下图所示。  我还了解到、您的固件正确配置 TCAN4550、以便通过该外部收发器发送和接收 CAN 消息。  是这样吗?

    我还了解到、您随后根据下图创建了自己的定制 PCB。  我不知道 MCU 是否位于该板上、或者它是否仍然是单独的、但 TCAN4550和外部收发器位于您的 PCB 上、您已经共享了原理图以供我查看。  是这样吗?  根据我的理解、您尝试使用与使用 TCAN4550 EVM 的首次测试配置中使用的固件完全相同的固件、但即使未对原理图或固件进行功能更改、也无法正常工作。  是这样吗?

    因此、如果两个器件使用相同的固件、并且固件在具有外部收发器的 EVM 上正常工作、则会导致某种形式的硬件或原理图差异。

    但是、如果未使用相同的固件、或者我错误地理解您能够将外部收发器与 EVM 配合使用、而您只能成功使用 TCAN4550的内部收发器、则这会导致固件问题。

    最后、我了解到您已经能够使用内部收发器使 TCAN4550正常工作、如下图所示。  是这样吗?

    因此测试配置1和3起作用、但测试配置2不起作用。  我对一切都有正确的理解吗?  如果没有、请更正我没有正确答案的任何内容。

    此致、

    Jonathan

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好、Jonathan。

    测试配置正确、MCU 也在同一 PCB 上。 只有测试配置2不起作用

    此致、

    TED

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Ted:

    感谢您的确认、我很抱歉您未能在周五跟进。  此设置实际上需要三个主要的东西、我认为我们需要验证。  我们需要确保电源和 IO 引脚处于适当的电压电平。  我们需要确保时钟正常工作。  我们需要确保 SPI 通信正确。

    您能否验证以下引脚上的电压电平:VSUP、VIO、VCCOUT、RST、INH、 nWKRQ、GPIO1和 GPO2?  这将帮助我确定是否有任何引脚未达到指向错误的预期电平。

    您能否在 MCU 固件例程中添加一些函数以读回配置寄存器值?  这将测试时钟和 SPI 通信。  如果时钟不工作、器件将不会在 SPI 总线上返回值。  如果读回值与预期值不匹配、则器件可能无法进入正确的测试模式、这是通过被忽略的固件设置或原理图元件实现的、也可能是由于 SPI 信号存在某些问题。

    您能否读回以下寄存器:

    TCAN4550器件配置寄存器:

    0x0000 (器件 ID、即使 CLK 不工作且仅使用 SPI 时钟、也能正常工作)

    0x000C (状态寄存器)

    0x0800 (工作模式和配置寄存器)

    0x0820 (中断标志)

    0x0824 (MCAN 中断标志)

    MCAN 控制器 CAN FD 配置寄存器:

    0x100C (数据位时序和预分频器寄存器

    0x1018 (控制寄存器)

    0x101C (标称位时序和预分频器寄存器

    0x1040 (错误计数器寄存器)

    0x1044 (协议状态寄存器)

    0x1048 (发送器延迟补偿寄存器)

    0x1050 (中断寄存器)

    这些寄存器将帮助我了解您是如何配置器件的、以及任何可能被设置的状态位、这些状态位将指明器件不能正常工作的原因。

    此致、

    Jonathan

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Jonathan、

    我通过从  Init_can()中设置 TCAN4x5x_dev_config 获得了通信工作。

    如果我将"Keep Sleep Wake Error"设置为禁用、Rx 的波形将显示为错误波形。

    启用"保持睡眠唤醒错误"后、外部隔离收发器可以在 TCAN4550上正常工作、且波形正确。

    我不知道为什么禁用"Keep Sleep Wake Error"会导致电压电平错误、是否有详细信息?

    此致、

    TED

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Ted:

    好的、听起来我们正在取得一些进展、但这是一个有趣的观察结果。  我相信您所指的是设置寄存器0x0800的 SWE_DIS 位或位1。  是这样吗?  如果是这样、我会期望出现相反的行为。

    SWE 计时器是 TCAN4550的3个故障安全特性之一、并在数据表的第8.4.5节中进行了讨论。 基本上、当器件通电或看到唤醒事件时、它会进入待机模式并启动一个4分钟计时器。  如果器件在该4分钟计时器到期之前未配置并置于正常模式、则它假定唤醒事件是错误的、并且器件再次进入睡眠模式。  初始开发通常会遇到这种问题、因为在您不知情的情况下、很容易有4分钟的暂停时间、器件会恢复到睡眠模式。  通常、我必须建议禁用此功能。

    但是、您告诉我相反的情况是正确的、并且禁用此功能会导致问题。  我不知道该位的其他用途或依赖性会导致您无法与外部收发器通信。  您是在上电后立即配置器件、还是存在一些潜在的计时延迟?

    您是否也禁用看门狗计时器和/或通用故障安全启用位?  

    在禁用睡眠唤醒错误的情况下、您能否在器件无法正常工作时读取配置和状态寄存器、以查看器件是否由于失效防护超时而引发了任何错误标志、或恢复到睡眠或待机模式?

    此致、

    Jonathan

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Jonathan、

    这是我的代码中的设置。

       /*配置 TCAN4550非 CAN 相关功能*/
       TCAN4x5x_DEV_CONFIG devConfig ={0};
       devConfig.SWE_DIS = 0;
       devConfig.device_reset = 0;
       devConfig.WD_EN = 0;
       devConfig.nWKRQ_CONFIG = 0;
       devConfig.INH_DIS = 0;
       devConfig.GPIO1_GPO_CONFIG = TCAN4x5x_DEV_CONFIG_GPO1_MCAN_INT1;
       devConfig.fail_safe_en = 0;
       devConfig.GPIO1_CONFIG = TCAN4x5x_DEV_CONFIG_GPIO1_CONFIG_GPO;
       devConfig.WD_ACTION = TCAN4x5x_DEV_CONFIG_WDT_ACT_nINT;
       devConfig.WD_BIT_RESET = 0;
       devConfig.nWKRQ_VOLTAGE = 0;
       devConfig.GPO2_CONFIG = TCAN4x5x_DEV_CONFIG_GPO2_NO_ACTION;
       devConfig.CLK_REF = 1;
       devConfig.WAKE_CONFIG = TCAN4x5x_DEV_CONFIG_WAKE_DISABLED;

    当我设置"SWE_DIS=1时、外部收发器无法与 tcan4550通信。

    加电后、我会尽快配置 TCAN4550、但有时我会在几分钟后更改滤波器和 CAN 总线速度等设置。

    当器件不能正常工作时、我读取配置和状态寄存器。

    配置寄存器(0x0800)为0x00000008、状态寄存器(0x000C)为082004A3。 我使用 TCAN4x5x_Device_ReadMode 来读取模式、模式仍然正常。

    此致、

    TED

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Ted:

    感谢您提供配置和状态寄存器值。  我从状态寄存器中看到您正在收到 SPI 错误。  这是由于器件在 SPI 事务中接收到太少或太多的时钟脉冲(或位)。  作为一项安全功能、TCAN4550对 SCLK 脉冲的数量进行计数、以确保通信在字节边界上结束。  每个寄存器事务是一个32位字、因此如果事务中没有确切的32位、TCAN4550将把该事务标记为错误并丢弃数据、因为它的有效性不可信任。  还会为此错误生成中断位、以便 MCU 获知 SPI 错误并重复该事务。

    配置寄存器0x0800的值0x00000008对于您的测试模式也似乎不正确。  这表示唯一设置的位是看门狗使能位 WD_EN。  我希望其他位被置位、例如测试模式使能(位21)模式选择(位7:6)等

    可能是由于 MCU 功能中某种形式的协议错误导致的 SPI 通信错误、或者是 SCLK 线路上有噪声或反射的信号完整性错误、这会导致 TCAN4550计算产生的额外时钟脉冲 配置不完整。  

    请监视状态寄存器和中断寄存器是否存在 SPI 错误、读回所有寄存器以验证它们是否配置了正确的值。  如果可能、使用示波器检查 SPI 信号以检查信号完整性错误。

    此致、

    Jonathan

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Jonathan、

    我有一个错误、我颠倒了两个寄存器值。

    配置寄存器(0x0800)为0x082004A3、状态寄存器(0x000C)为0x00000008。

    此致、

    TED

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Ted:

    感谢您的澄清、这更有意义。  您的状态寄存器仍然显示、在您读取寄存器时、正在进行内部多传输模式访问。  但是、如果没有有关其他器件寄存器和您的 MCU SPI 活动的其他信息、我无法对我们当前调试工作中可能意味着什么得出任何结论。

    我知道您说过、当您使用 EVM 时、通信会起作用。  但是、在启用和禁用 SWE_DIS 位时、您能否使用当前固件设置确认 EVM 上的行为?  它是否适用于这两种设置?  我想确认这是否仍然是特定于电路板的设置问题、我希望只要您不允许计时器超时、EVM 将在测试模式下针对 SWE_DIS 位的任一值工作。

    您能否读回并提供我之前请求的其他寄存器的最终值?  此外、您能否检查请求引脚上的电压电平?  这些附加信息将有助于了解器件可能会发生的其他情况。

    正如我说过的、我不知道 SWE_DIS 位和测试模式是否有任何相关性。  如果您可以提供有关器件配置和状态/中断位的更多信息、我可以咨询我们的数字设计人员以验证器件配置和预期行为。  这是您可以提供的吗?

    我希望您新年快乐!

    此致、

    Jonathan

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Jonathan、

    我在 EVM 上测试相同的代码、结果是相同的。

    我在设置 SWE_DIS 位时读取寄存器。

    0x000C (状态寄存器) 0x00000008
    0x0800 (工作模式和配置寄存器)   0x082004A3
    0x0820 (中断标志)   0x00000000
    0x0824 (MCAN 中断标志) 0x00010000
    0x100C (数据位时序和预分频器寄存器 0x800200
    0x1018 (控制寄存器) 0x00000100
    0x101C (标称位时序和预分频器寄存器 0x06010E03
    0x1040 (错误计数器寄存器) 0x00000000
    0x1044 (协议状态寄存器) 0x0000070F
    0x1050 (中断寄存器)(协议状态寄存器) 0x00010000

    发送一条消息后、寄存器值变为如下。

    0x000C (状态寄存器) 0x00000008
    0x0800 (工作模式和配置寄存器)   0x082004A3
    0x0820 (中断标志)   0x00000082
    0x0824 (MCAN 中断标志) 0x0B810000
    0x100C (数据位时序和预分频器寄存器 0x800200
    0x1018 (控制寄存器) 0x00000101
    0x101C (标称位时序和预分频器寄存器 0x06010E03
    0x1040 (错误计数器寄存器) 0x001F00F8
    0x1044 (协议状态寄存器) 0x000007E5
    0x1050 (中断寄存器)(协议状态寄存器) 0x0B810000

    如果我没有设置 SWE_DIS 位、则寄存器值为

    0x000C (状态寄存器) 0x00000008
    0x0800 (工作模式和配置寄存器)   0x082004A1
    0x0820 (中断标志)   0x00000000
    0x0824 (MCAN 中断标志) 0x00010000
    0x100C (数据位时序和预分频器寄存器 0x800200
    0x1018 (控制寄存器) 0x00000100
    0x101C (标称位时序和预分频器寄存器 0x06010E03
    0x1040 (错误计数器寄存器) 0x00000000
    0x1044 (协议状态寄存器) 0x00002708
    0x1050 (中断寄存器)(协议状态寄存器) 0x00010000

    此致、

    TED

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Ted:

    感谢您提供更多信息。 很显然、只需设置 SWE_DIS 位就会导致传输失败、最终导致发送错误计数器溢出、从而迫使器件进入总线关闭状态。  由于器件将自动尝试重新发送故障消息、因此很难判断 TXD 信号是否有任何活动。  

    是否可以通过将控制寄存器中的 DAR 位设置为"1"来禁用自动重传?  这是寄存器0x1018的位6。  这将导致器件仅发送一次消息、而不考虑确认。  这将允许您在 TEC 计数达到最大值255之前传输消息最多255次、从而导致总线关闭状态、并允许额外的时间通过示波器等进行观察

    在器件进入总线关闭状态之前、您是否还在 TXD 线路上看到任何活动?

    我正在咨询我们的数字设计团队、以验证您的观察结果并对其发表意见、并将在不久的将来与您跟进。

    此致、

    Jonathan

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Ted:

    我能够与我们的数字设计团队确认、实际上您的配置中的 SWE_DIS 计时器和测试模式存在内部冲突。  由于从技术上讲、这是一种测试模式、其中内部信号通过器件重新路由、因此需要重新使用一些资源。  在这种情况下、禁用 SWE 计时器会与 GPIO 引脚配置产生冲突。

    很抱歉、找到根本原因需要很长时间、但您提供的寄存器值对于识别这种内部冲突非常有帮助。  您似乎无法在应用中禁用 SWE 计时器。 这意味着您必须在器件上电后的4分钟内配置寄存器、以防止器件转换到睡眠模式。  如果它确实进入睡眠模式、则可以使用任何唤醒方法来唤醒它、重新启动计时器并将其置于正常模式。

    此致、

    Jonathan