历史上的今天
返回首页

历史上的今天

今天是:2025年03月28日(星期五)

正在发生

2020年03月28日 | MPLAB X IDE调试代码

2020-03-28 来源:eefocus

1. 在Project 窗口中,选择项目或将其设为主项目(右键单击项目并选择“Set as main”)。
2. 单击“Debug Project”图标(或选择Debug>Debug Project 或Debug>Step Into)开始调试运行。
要暂停应用程序代码:
• 单击“Pause”图标(或选择Debug>Pause)暂停程序执行。
要再次运行代码:
• 单击“Continue”图标(或选择Debug>Continue)再次启动程序执行。
要结束代码的执行:
• 单击“Finish Debugger Session”图标(或选择Debug>Finish Debugger Session)
结束程序执行。
在使用调试功能时(从第4.18 节“使用断点控制程序执行”开始), Run 和Debug Run 之间的差异将变得很明显。
要启动调试器:
如果代码是针对调试而编译的,并且只是希望启动调试工具,则可以通过选择“Debug Project”图标旁边的向下箭头并选择“Launch Debugger”(启动调试器)


设置或清除简单断点
要在某个代码行上设置断点,请执行以下操作之一:
• 在源代码编辑器中单击代码行的左边缘
• 按下Ctrl+F8
要清除断点,请执行以下操作之一:
• 重复设置断点的步骤
• 选择Debug>Toggle Breakpoint。


单步执行代码
使用Debug 菜单和Debug 工具条上的单步功能之一,可从代码起始处或断点处暂停之后逐步执行代码。检查变量值的变化(见下一节)或确定程序流是否正确。
有几种方法可以单步执行代码:
Step Over—— 执行程序的一行源代码。如果该行是一个函数调用,则执行整个函数,然后停止。
Step Into—— 执行程序的一行源代码。如果该行是一个函数调用,则程序执行到该函数的第一条语句,然后停止。
Step Out—— 执行程序的一行源代码。如果该行是一个函数调用,则执行函数,并将控制返回给调用方。
Run to Cursor (运行至光标位置) —— 运行当前项目,直到文件中的光标位置,并停止程序执行。
Animate (连续单步运行)——在运行时执行单步操作,并在运行时更新寄存器的值。连续单步运行的运行速度低于Run 功能,但它使您可以在Special Function Register (特殊功能寄存器)窗口或在Watches 窗口中查看变化的寄存器值。


观察符号值变化
在Watches (观察)窗口中观察选择更改的符号的值。在程序执行期间确定这些值是否为预期值可以帮助您调试代码。


要查看Watches 窗口,请执行以下操作之一:
• 选择Window>Debugging>Watches 打开窗口。
• 如果Output 窗口已打开,则在窗口中单击Watches 选项卡。
要直接创建新的观察:
可以通过以下操作之一,向Watches 窗口直接添加符号:
• 双击名称列,并输入一个全局符号、SFR 或绝对地址(0x300)。
• 在Editor 窗口中右键单击某个全局符号或SFR,并选择“New Watch”。
• 在Editor 窗口选择全局符号或SFR,并将其拖放到Watches 窗口中。
使用New Watch 对话框创建新的观察:
通过使用New Watch 对话框,可以向Watches 窗口中添加符号或SFR:
• 在Watches 窗口中单击右键并选择“New Watch”或选择Tools>New Watch。单击选择按钮可查看Global Symbols (全局符号)或SFR。在列表中单击某个名
称,然后单击OK。
• 在Editor 窗口中选择符号或SFR 名称,然后从右键菜单中选择“New Watch”。
该名称将填充到窗口中。单击OK。


要创建新的运行时观察:
向Watches 窗口中添加运行时观察之前,需要先设置时钟:
1. 右键单击项目名称,并选择“Properties”。
2. 单击调试工具名称(例如, REAL ICE),并选择选项类别“Clock”(时钟)。
3. 设置运行时指令速度。


要添加全局符号或SFR 作为运行时观察,请按照“使用New Watch 对话框创建新的观察”下的说明操作,只是此时选择“New Runtime Watch”(新建运行时时钟)而不是“New Watch”。


在运行时观察中使用的符号必须调整长度,使之与器件存储器匹配。也即,使用8 位器件时需要8 位符号。


要查看符号变化:
1. 执行调试运行,然后暂停程序。
2. 单击Watches 选项卡,使窗口处于活动状态。
3. 对于观察符号,继续调试运行并暂停可查看值的变化。对于运行时观察符号,继续调试运行并在程序执行时观察值的变化。


只有处于调试会话中,才能看到符号(全局符号、SFR、数组和寄存器位域等)的值。
要更改观察符号的基数:
• 右键单击该符号所在的行,并选择“Display Value As”(值的显示方式)

要查看Variables 窗口,请执行以下操作之一:
• 选择Window>Debugging>Variables 打开窗口。
• 如果Output 窗口已打开,则在窗口中单击Variables 选项卡。


要查看变量变化:
1. 执行调试运行,然后暂停程序。
2. 单击Variables 选项卡可查看窗口和局部变量值。


要更改变量的基数:
• 右键单击该变量所在的行,并选择“Display Value As”。

推荐阅读

史海拾趣

3E SECURITY公司的发展小趣事

随着网络安全威胁的不断加剧,电子安全行业面临着前所未有的挑战。3E SECURITY公司紧跟行业趋势,加强了网络安全服务的研发和推广。公司推出了一系列网络安全解决方案,帮助客户有效应对各类网络攻击和数据泄露风险。同时,公司还加强了对客户的安全培训和技术支持,提升了客户的安全意识和应对能力。

国盛科技(BOCHEN)公司的发展小趣事

国盛科技在发展过程中获得了多项认证与荣誉。例如,公司获得了知识产权管理体系认证证书,荣登《人民代表报》全国两会特刊,成为“中国质量万里行促进会”会员并获得“收录企业”荣誉称号等。这些认证与荣誉的获得,充分证明了国盛科技在电子行业的领先地位和企业实力的不断提升。

Guerrilla RF公司的发展小趣事
定期备份硬盘中的重要数据,以防数据丢失或损坏。
Feller US公司的发展小趣事

在经历了多年的发展后,菲斯克逐渐意识到品牌的重要性。为了进一步提升品牌价值和市场影响力,公司决定进行品牌重塑。通过重新设计品牌形象、加强品牌宣传以及推出更具吸引力的产品和服务,菲斯克成功吸引了更多消费者的关注和喜爱。同时,公司还积极拓展市场渠道和合作伙伴网络,通过多元化的营销策略和灵活的渠道策略,成功打开了多个新的市场领域。这些努力不仅提升了公司的市场份额和盈利能力,还为公司的长期发展奠定了坚实的基础。

请注意,以上故事均基于虚构的情境和假设,旨在解释和描述菲斯克(FSR.US)公司可能的发展情况。实际的发展过程可能因各种因素而有所不同。

BEKA Associates Ltd公司的发展小趣事

BCD Semi(Diodes)在电子行业中以其卓越的技术实力和持续的产品创新而闻名。近年来,公司成功研发出一系列高性能的模拟半导体产品,这些产品在市场上取得了显著的成功。通过不断优化生产工艺和设计理念,BCD Semi成功提升了产品的性能和可靠性,赢得了客户的广泛认可。同时,公司还积极开拓新的应用领域,将产品应用于汽车、通信、工业控制等多个领域,进一步扩大了市场份额。

常州星海电子(Starsea)公司的发展小趣事

在电子行业,技术创新是企业持续发展的关键。常州星海电子一直致力于技术的研发和创新。近年来,公司成功取得了一项名为“一种高反压二极管”的专利,通过采用先进的生产工艺和设计,实现了产品性能的优化和成本的降低。这一创新不仅提升了公司的市场竞争力,也为整个电子行业的发展注入了新的活力。

问答坊 | AI 解惑

关于VHDL语言的逻辑运算

a=red4*(1/2)用VHDL语言怎么表示?…

查看全部问答>

TQ2440 触摸屏

关于TQ2440触摸屏的应用设计。现在能够实现触摸屏界面的旋转,想添加一些其它的应用功能,请问能不能把显示界面缩小,即原来3.5寸屏的界面,显示为1.75寸的区域,这种功能能够实现吗?如果实现需要涉及那些方面?…

查看全部问答>

一个外行的weti

我用一个电源,交流转换成直流 上面写着:+5V 3A 我有一个电子设备充电要求是 +5V 2.2A 请问,这个电源我来给这个充电可以吗? (我认为可以,就是不敢肯定) …

查看全部问答>

wince,在flash中保存文件!

我在flash上烧写的镜像文件为 NK.BIN, 我在注册表中添加如下: ; Bind BINFS to the block driver [HKEY_LOCAL_MACHINE\\System\\StorageManager\\Profiles\\FlashDrv]     \"DefaultFileSystem\"=\"BINFS\"     \"Partition ...…

查看全部问答>

STM32GPIO不受控?

我用的是keil. 遇到到 PA4, PA5 , PA6,PA7 等无法设置输出状态. 在keil的调试状态就感觉无**常设置.而引脚设置跟附近的一样,看起来没错. 但无**常设置.其他的比如PC5~PC7等就没有问题. 初始化的语句:应该没有问题.    GPIO_Ini ...…

查看全部问答>

求好用的DSP2407开发板原理图与PCB图

求好用的DSP2407开发板原理图与PCB图. PROTEL格式的. 我的油箱是automationcn@126.com 先谢谢各位了!…

查看全部问答>

比较器

有那位高手可以推荐高速比较器的电路,急!!!!…

查看全部问答>

寻迹小车DIY

这是当年毕业设计参考的项目了,最近翻资料翻出来,抖出来晒晒太阳.... 那个觉得有用就拿去吧    …

查看全部问答>

有没有3v可用的数码管驱动芯片?或者怎么用电池给5v的74门供电?

想做个数字钟,但是找不到3v可用的数码管驱动芯片,找到了淘宝上也没卖的。 另外就是考虑怎么给3v/5v元件混合电路用AA电池供电………

查看全部问答>

搞到一个4轴,论坛里的大神说用C2000控制是怎么回事

朋友搞了三个月还没飞起来,给我研究, 什么陀螺仪,加速度,姿态控制啊没头绪啊…

查看全部问答>