NXP MCU 技术论坛
直播中

王利祥

7年用户 1424经验值
私信 关注
[问答]

s32k116 flexio spi & lpspi错误回调怎么解决?

我怎么知道spi通信(中断模式)是否出错?

例如 CAN 有 typedef void (*flexcan_error_callback_t)(uint8_t instance, flexcan_event_type_t eventType, flexcan_state_t *flexcanState);

并且,有这个枚举,
typedef enum {
FLEXCAN_EVENT_RX_COMPLETE, /*!< 在配置的 Rx MB 中接收到一个帧。*/ FLEXCAN_EVENT_RXFIFO_COMPLETE, /*!< Rx FIFO 中接收到一个帧。*/ FLEXCAN_EVENT_RXFIFO_WARNING, /*!< Rx FIFO 几乎已满(5 帧)。*/ FLEXCAN_EVENT_RXFIFO_OVERFLOW, /*!< Rx FIFO 已满(传入消息丢失)。*/ FLEXCAN_EVENT_TX_COMPLETE, /*!< 从配置的 Tx MB 发送了一个帧。*/ #if FEATURE_CAN_HAS_WAKE_UP_IRQ
FLEXCAN_EVENT_WAKEUP_tiMEOUT, /*!< 由于超时发生唤醒事件。*/ FLEXCAN_EVENT_WAKEUP_MATCH, /*!< 由于匹配发生唤醒事件。*/ FLEXCAN_EVENT_SELF_WAKEUP, /*!< 发生自唤醒事件。*/ #endif /* FEATURE_CAN_HAS_WAKE_UP_IRQ */ #if FEATURE_CAN_HAS_DMA_ENABLE FLEXCAN_EVENT_DMA_COMPLETE, /*!< DMA 上发生完整传输 */ FLEXCAN_EVENT_DMA_ERROR, /*!< DMA 传输失败,因为 DMA 通道错误 */ #endif /
*
FEATURE_CAN_HAS_DMA_ENABLE */     
FLEXCAN_EVENT_ERROR
} flexcan_event_type_t;
但是 flexio spi 只有

typedef enum {

    SPI_EVENT_END_TRANSFER = 0   

  } spi_event_t; /* 回调所有支持 SPI 特性的外设 */

typedef void (*spi_callback_t)(void *driverState, spi_event_t event, void *userData);

                                       
                                
                        
                       

更多回帖

发帖
×
20
完善资料,
赚取积分