使用STM8中断收不到正确的数据

2019-07-14 17:33发布

使用STM8S103作为SPI Slave设备,但是STM8中断里面收到的全是0x1,收不到正确的数据,STM8发送看起来是对的
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
6条回答
xubanggeng
2019-07-15 17:17
SPI_FLAG_RXNE本来就是用来产生中断产生的标志位,
SPI_ITConfig(SPI_IT_RXNE, ENABLE)后,有·这个SPI_FLAG_RXNE会产生一个RXNE中断
如果没有TX,就不要使用(SPI_GetFlagStatus(SPI_FLAG_TXE)
参考如下代码,
spi_interrupt(){
        u8  irq_status = SPI->SR;

        if(irq_status & SPI_SR_RXNE){// && (SPI->ICR & SPI_ICR_RXEI)){
           p_context->rx[0] = SPI->DR;//// 读DR会自动清SR的RXNE标志
           ...
        }
}

一周热门 更多>