发 帖  
原厂入驻New
申请华秋企业认证 多层板首单免费打样!
30s提交资料,10分钟通过审核(免费赔付+顺丰包邮)>>立即报名
[问答] MPL3.61调试器变量读取异常
170 USB 寄存器 内存
分享
所以,我在开发USB设备时花了几个小时的时间。在代码中,我有一个缓冲区,如:uint8_tUSBOUTBuffers[NUMBEROFUSBOUTBUFFERS][USBGEN_EP_SIZE];它是一个USB分组大小缓冲区数组。当我接收到USB数据时,我到达一个断点,通过将鼠标指针悬停在它上面自然地检查USBOUTBuffers内容,但是我总是只在.[0](第一个包)中看到有效数据。数小时后,令人沮丧的重新编码和测试,我发现数据MPL3.61显示不是什么是在内存中!通过读取IDE文件寄存器中的内存,它就在那里。现在这是MC的纯邪恶,我该把帐单寄到哪里?使用XC161.24.
0
2019-11-11 09:48:18   评论 分享淘帖 邀请回答

相关问题

5个回答
HTTP://www. McCHIP.COM/TraceSpPurt/
2019-11-11 10:03:46 评论

举报

(在PIC32 MZ上的MPLABX V3.60)我已经有很多问题用调试器正确读取变量。在寻找这个论坛的答案时,我发现这是多年来一直存在的问题。我尝试了各种各样的“解决方案”,但是都没有用。我看到的一个典型情况是:我正在逐步检查代码,然后经过一行,其中变量被设置为一个值。在变量设置后的行上,当我计算变量时,显示一个不正确的值。不仅如此,跨过或穿越代码行并不总是遵循代码的运行方式。在进入for循环时,我经常看到这一点。我看到的另一个问题是无法在可执行代码行上设置断点。它显示了我假设的断点,因为断点图标有一条弯曲的线穿过它,并且即使我知道代码行是在不处于调试模式时执行的,代码也不会停在那行代码上。还有其他人有这些问题吗?这是非常令人沮丧的。正因为如此,大多数时候,我只写代码,希望和祈祷它的工作,所以我不必使用调试器。
2019-11-11 10:30:31 评论

举报

我个人也有一些项目,其中.=0==WillNotFitInMemory()我还发现调试器的行为有时候真的很滑稽。声明变量volatile有时会有帮助。由于优化,我可以理解一些奇怪的行为,但是跳到长函数的末尾,回到开头真的很奇怪,并且看起来更像是调试器->行没有损坏。
2019-11-11 10:47:30 评论

举报

当跨入代码跳转时,我退出调试会话,DOA清理生成,然后重新启动调试会话。这通常是“修正”疯狂的步骤。一般来说,我很惊讶MC的QA部门是如此缺乏,显示正确的变量内容是任何IDE的基础。在添加新的铃铛和哨子之前,先把它修好,谢谢。
2019-11-11 10:53:20 评论

举报

只有小组成员才能发言,加入小组>>

72个成员聚集在这个小组

加入小组

创建小组步骤

关闭

站长推荐 上一条 /6 下一条

快速回复 返回顶部 返回列表