完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
和谐1.09MPLAB:3.45 I AM使用轮询的I2C与PIC32主机和单从机。当我试图调试我的代码时,调试器在DRVII2C中随机地停止了1490行代码。参见下面的代码片段。我的代码的基础是示例I2CYRTCC,但是我的PIC32只是一个主控器。我使用DRV_I2C_Open()和DRV_I2C_TransmitThenReceive()来检查状态。DRV_I2C_BUFFER_EVENT LI2C_Check_Transfer_.(DRV_HANDLE drvOpenHandle,DRV_I2C_BUFFER_HANDLE dBufferHandrHandle){.(DRV_I2C_TransferStatusGet(li2cData.drvI2C_TransferStatusGet,drvI2CHandle_Master,drverBufferHandle))}它是随机的。停止在第1490行,这使我认为它已经检测到停止事件,不知道该怎么办。然而,我读过的所有文档和示例都不谈论或处理必须管理一个停止事件。我认为它告诉我它也需要我。请建议如何克服这个错误............/*在这里进行检查,因为DRV_I2C_ClientSetup函数调用是可选的*//.Callback for STOP事件,如果(_DRV_I2C_CLIENT_OBJ((DRV_I2C_CLIENT_OBJ*)lBufferObj->clientHandle),则回调)!= NULL){dObj->inter.NestingCount+;............................30Jan更新:我添加了两个新图片,表明Master已经发送了停止,而我的drv_i2c.c在这一行有一个非常一致的运行时异常。没有设置什么,它告诉我它想要什么,但不知道什么是填写变量“回调”。
|
|
相关推荐
6个回答
|
|
嗨,什么例外?只是说运行时异常,当我刷新时,它会把我发送到这行代码。你有异常处理程序吗?不确定你的意思是什么?我没有添加任何东西,如果有一个我能做的,我会把它打开。你使用的是什么版本的MLBX?3.00~3.10在异常之后没有报告堆栈。
|
|
|
|
在Harmony中有一个复选框来添加一个异常处理程序。处理程序将解码Exception Type(或者您可以手工完成)。在该行之前设置断点,并查看传递给它的数据。指针是否有效,指向实际内存,并与数据类型对齐?(异常类型会告诉你违反了)
|
|
|
|
谢谢,设置了复选框。我会按你说的去做。我想我会因为论坛上关于问题的帖子而感到担心,而这是我第一次使用I2C,我没有什么可以依赖的。另外,做我自己似乎是另一组问题。问候,吉姆
|
|
|
|
我不是和谐I2C驱动程序的爱好者。我就这样吧。我有我自己的代码。你问停止/异常。其中一个是错误的((DRV_I2C_CLIENT_OBJ*)lBufferObj->clientHandle)或回调。如果没有编译警告,我猜BufferObj->clientHandle,因为强制转换可以隐藏警告。或指针为空或无效。
|
|
|
|
嗨,NKurzman,嗯,我在这一点上垫底了。我回到我的和声配置并检查了中断选项。那它就不会挂了。我从I2CYRTCC的示例和声文件中注意到的是,中断位被设置,但它不是默认的。我想既然我在投票,我就不需要中断了,显然情况并非如此。然而,这仍然没有给我带来麻烦,当我进行DRV_I2C_TransmitThenReceive时,驱动程序从来没有释放过,并且总是“在使用中”。这是我下一个任务范围。但是现在这个问题已经结束了。
|
|
|
|
这很难。那里有太多的坏代码。有一些好的东西,我在其他张贴在过去,但这将是很难筛选。我可以发布我所有的,因为它是“为雇佣而工作”。如果你从和谐静态潜水器开始,你将有一个基本的建筑块和你需要的低层呼叫。您将需要一个作用域。发送start.wait start以timeount结束。发送Addresswait以timeount结束。检查ACK。发送下一个字节,等待它以timeount结束。检查ACK,等等。
|
|
|
|
只有小组成员才能发言,加入小组>>
5184 浏览 9 评论
2005 浏览 8 评论
1932 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3179 浏览 3 评论
请问电源和晶体值之间有什么关系吗?PIC在正常条件下运行4MHz需要多少电压?
2230 浏览 5 评论
739浏览 1评论
626浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
511浏览 1评论
PIC Kit3出现目标设备ID(00000000)与预期的设备ID(02c20000)不匹配。是什么原因
637浏览 0评论
535浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-28 15:34 , Processed in 1.556692 second(s), Total 87, Slave 70 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号