个人中心 - GD32 MCU 开发者社区

YuGen
LV.1
YuGen LV.1
2026年5月28日
7 评论
活跃 时间:2026-06-11
154 次浏览
1
0
7
YuGen
时间:2026-06-11

这个论坛有GD的技术支持在吗?请帮忙看一下🙏

如何使用GD32H757ZMT6中SPI的硬件NSS功能?
YuGen
时间:2026-06-11

这个论坛有GD的技术支持在吗?请帮忙看一下🙏

如何使用GD32H757ZMT6中SPI的硬件NSS功能?
YuGen
时间:2026-06-09

请各位大佬帮忙看看🙏 🙏🙏

如何使用GD32H757ZMT6中SPI的硬件NSS功能?
YuGen
时间:2026-06-02

另外,若在SPI4接收中断中关闭SPI4,示波器显示仍在发送,修改的中断代码如下:

void SPI4_IRQHandler(void)
{
    if (spi_i2s_interrupt_flag_get(SPI4, SPI_I2S_INT_FLAG_TP) != RESET)
    {
        while (1)
        {
            if (spi_i2s_flag_get(SPI4, SPI_FLAG_TP))
            {
                spi_i2s_data_transmit(SPI4, spiCommStruct.sendBuff[spiCommStruct.SendIndex]);
                spiCommStruct.SendIndex++;
                if (spiCommStruct.SendIndex >= spiCommStruct.total)
                {
                    spi_i2s_interrupt_disable(SPI4, SPI_I2S_INT_TP);
                    break;
                }
            }
            else
            {
                break;
            }
        }
    }

    if (spi_i2s_interrupt_flag_get(SPI4, SPI_I2S_INT_FLAG_RP) != RESET)
    {
        while (1)
        {
            if (spi_i2s_flag_get(SPI4, SPI_FLAG_RP))
            {
                spiCommStruct.recvBuff[spiCommStruct.recvIndex++] = spi_i2s_data_receive(SPI4);
                if (spiCommStruct.recvIndex >= spiCommStruct.total)
                {
                    spi_i2s_interrupt_disable(SPI4, SPI_I2S_INT_RP);
                    spi_disable(SPI4);//增加了这句
                    osSemaphoreRelease(semSPI4);
                    break;
                }
            }
            else
            {
                break;
            }
        }
    }
}

寄存器如下:

2.png

暂无内容

相关内容会显示在这里,期待您的分享与发现。

暂无内容

相关内容会显示在这里,期待您的分享与发现。

暂无内容

相关内容会显示在这里,期待您的分享与发现。

确定删除吗?
删除后无法恢复,请确认后操作!
编辑