完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我正在为我的项目开发一个新的 GPIF 状态机,在数据流期间,我接收到 PIB 错误函数的回调事件,当我使用 `CYU3P_GET_PIB_ERROR_TYPE(cbArg);` 提取错误时,我看到这些错误是 CYU3P_PIB_ERR_NONE。 为什么我的 PIB 错误回调会通知我没有错误? 我是否使用了正确的定义来解码函数的输入参数? 我的代码如下
static void CyFxUVCAppPibCallback ( CyU3PPibIntrType cbType, uint16_t cbArg){ uint8_t thrError = CYU3P_GET_PIB_ERROR_TYPE(cbArg); /* Check for PIB error and an overrun */ if ((cbType == CYU3P_PIB_INTR_ERROR) ((cbArg == 0x1005) || (cbArg == 0x1006))) { if (!back_flow_detected) { CyU3PDebugPrint (4, "Backflow detected (0x%x)...rn", thrError); back_flow_detected = 1; } } switch (thrError) { case CYU3P_PIB_ERR_THR0_WR_OVERRUN: /* 0x05 */ glThr0Overrun++; glOverrunErrors++; break; case CYU3P_PIB_ERR_THR1_WR_OVERRUN: /* 0x06 */ glThr1Overrun++; glOverrunErrors++; break; case CYU3P_PIB_ERR_THR2_WR_OVERRUN: /* 0x07 */ glThr2Overrun++; break; case CYU3P_PIB_ERR_THR0_SCK_INACTIVE: /* 0x12 */ glThr0Inactive++; break; case CYU3P_PIB_ERR_THR1_SCK_INACTIVE: /* 0x1A */ glThr1Inactive++; break; case CYU3P_PIB_ERR_THR2_SCK_INACTIVE: /* 0x22 */ glThr2Inactive++; break; case CYU3P_PIB_ERR_THR0_DIRECTION: /* 0x01 */ glThr0Direction++; break; case CYU3P_PIB_ERR_THR1_DIRECTION: /* 0x02 */ glThr1Direction++; break; case CYU3P_PIB_ERR_THR2_DIRECTION: /* 0x03 */ glThr2Direction++; break; default: glThrXOther[thrError]++; break; }} |
|
相关推荐
|
|
只有小组成员才能发言,加入小组>>
TLE9879_BLDC电机启动需要用手拨一下才能转动,怎么解决?
5421 浏览 2 评论
4075 浏览 9 评论
请问TLE5012B_E1000 启动后为什么位置不能正确获取
3592 浏览 9 评论
1203 浏览 8 评论
3495 浏览 7 评论
411浏览 2评论
243浏览 2评论
353浏览 2评论
TLE9879_BLDC电机启动需要用手拨一下才能转动,怎么解决?
5423浏览 2评论
如果是打开已有的dave工程,怎么查看这个工程选择的mcu型号?
414浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-23 17:42 , Processed in 0.680537 second(s), Total 80, Slave 62 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号