【问题标题】:Programming the MCP4141 digital potentiometer in STM32CUBEIDE by SPI port通过 SPI 端口在 STM32CUBEIDE 中对 MCP4141 数字电位器进行编程
【发布时间】:2021-07-31 05:00:28
【问题描述】:

我正在尝试使用 NUCLEO F334R8 开发板通过 STM32CUBEIDE 开发环境对 Microchip MCP4141 数字电位器进行编程。我正在通过 SPI 通信端口发送 16 位命令。当我发送带有数据字节的命令字节时,我无法注意到 MCP4141 的 P0A 和 P0W 端子之间的电压变化。 你能帮我找出编程错误吗?谢谢

uint8_t data[2];
data[0]=0x00;
data[1]=0x0F;

HAL_GPIO_WritePin(GPIOA, GPIO_PIN_4,GPIO_PIN_RESET);
HAL_SPI_Transmit(&hspi1, data, 2, 500);
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_4,GPIO_PIN_SET);

【问题讨论】:

    标签: c ide stm32 spi pot


    【解决方案1】:

    通常当 SPI 外设不工作时,从芯片接收不到命令。这可能有多种原因:

    • 接线错误(MOSI、MISO、CLK 线)
    • 不正确的 SPI 模式(时钟相位、时钟极性) --> 检查 CubeMX 中的 SPI 设置
    • 由于 EN 或 RST 引脚不正确/悬空,从芯片处于复位状态

    你能探测数据和时钟线吗?您是否看到正在传输的信号? 或者,您能否成功地从芯片内部存储器中读取任何内容,例如状态寄存器?

    【讨论】:

      猜你喜欢
      • 2013-09-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-05-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多