📄 调试方法.txt
字号:
通过设置断点可以模拟调试整个机器的运作过程。
1。调试H_F信号的正常
去除所有断点(小手打叉的一个按钮)
在两个判断H_F信号的-里面-设置断点,然后全速运行,打开外设的P1口,P3口,点击P1口的0号上面的方框勾,去除勾表示设置为0
此时应该进入主函数的H_F中断,然后把P1口的0号勾上,先勾上面的,再勾下面的,再全速运行,这个断点进入表示P10采集正常。
再次点击P1口的0号上面的方框勾,去除勾,此时进入FLAGWP10的程序块里面的H_F断点表示P10采集正常。
2。调试P32,P35信号正常
去除所有断点(小手打叉的一个按钮)
在Ring_In的判断-里面-设置断点,然后再Line_Close的判断-里面-设置断点
全速运行
去掉P3口的2号上面的方框勾,这个断点进入Ring_In表示P32采集正常。把P3口的2号勾上
全速运行
去掉P3口的5号上面的方框勾,这个断点进入Line_Close表示P35采集正常。把P3口的5号勾上
全速运行
3。测试Signal_En,Busy_Tone 信号正常
去除所有断点(小手打叉的一个按钮)
在Ring_In的判断-里面-设置断点,再在flagP32程序块里面的Busy_Tone的判断-里面-设置断点
按照2方法,进入P32程序块
打开watch windows窗口,填加SYSPINSTA,TimerCmount[5],CHECK_Reg[5],到watch#1里面(我的工程已经填加了)
在flag100ms的-里面-设置一个断点
运行
中断时,去掉P3口的3,4号上面的方框勾,因为每100ms会断点中断一次,所以能看见watch #1里面变量的状态。
点击运行,断点停下,查看TimerCmount[5],CHECK_Reg[5]的0和1号元素
查看Signal_En,Busy_Tone ,当TimerCmount显示0x1x时,需要运行很多次,一直到CHECK_Reg显示到大于0x009e,
运行到大于后,改变P3口的3,4号状态,再运行,此时会发现TimerCmount会变成0x1x,
同时低位开始再增加,一直到需要判断的数出现,这个就表示回铃很正常进入了,
最后会进入Busy_Tone 的中断断点里面
4。测试Signal_En,Ring_respond 信号正常
去除所有断点(小手打叉的一个按钮)
在H_F的判断-里面-设置断点,再在flagP10程序块里面的Ring_respond 的判断-里面-设置断点
按照1方法,进入P10程序块
打开watch windows窗口,填加SYSPINSTA,TimerCmount[5],CHECK_Reg[5],到watch#1里面(我的工程已经填加了)
在flag100ms的-里面-设置一个断点
运行
中断时,去掉P3口的3,4号上面的方框勾,因为每100ms会断点中断一次,所以能看见watch #1里面变量的状态。
查看Signal_En,Ring_respond ,当TimerCmount显示0x2x时,需要运行很多次,一直到CHECK_Reg显示到大于0x01FC,
运行到大于后,改变P3口的3,4号状态,再运行,此时会发现TimerCmount会变成0x3x,
需要运行很多次,一直到CHECK_Reg显示到大于0x00DA,运行到大于后改变P3口的3,4号状态,
再运行,此时会发现TimerCmount会变成0x2x,同时低位开始再增加,一直到需要判断的数
出现,这个就表示回铃很正常进入了,最后会进入Ring_respond 的中断断点里面
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -