打印
[其它应用]

全速运行复位

[复制链接]
1008|20
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
chenho|  楼主 | 2016-12-11 18:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
79F085全速运行的时候总是会复位
沙发
zhuhuis| | 2016-12-11 18:30 | 只看该作者
是设断点观察吧,在代码选项的配置中禁止看门狗了吗?

使用特权

评论回复
板凳
chenho|  楼主 | 2016-12-11 18:32 | 只看该作者
禁止了,可能会是什么问题,是不是哪边设置不对

使用特权

评论回复
地板
gongche| | 2016-12-11 18:33 | 只看该作者
把你的代码发上来看看

使用特权

评论回复
5
chenho|  楼主 | 2016-12-11 18:35 | 只看该作者
#include "File_Include.h"
void main(void)
{
//寄存器初始化
SP  =INIT_SP;
PSW  =INIT_PSW;
INSCON =INIT_INSCON;
PCON =INIT_PCON;   
while(1)
{
   STB=1;   //端口测试
   STB=0;   
}  
}

使用特权

评论回复
6
happy_10| | 2016-12-11 18:38 | 只看该作者
在pc=0000处加一个断点,复位的时候,请看看RSTSTAT里面的值。bit7=1, WDT溢出, bit5 = 1, 上电复位。bit4=1, 低电压复位。 bit3=1, 引脚复位

使用特权

评论回复
7
wenfen| | 2016-12-11 18:40 | 只看该作者
如LS所说,在SP=INIT_SP;这条指令加一个断点,看RSTSTAT里面的值。看看是什么复位

使用特权

评论回复
8
冰清玉洁| | 2016-12-11 18:43 | 只看该作者
我觉得还是看门狗复位。如楼上所说,加断点试试

使用特权

评论回复
9
chenho|  楼主 | 2016-12-11 18:44 | 只看该作者

REGCON的值始终为0x67,还有个问题,第一条语句对堆栈初始化时,INIT_SP宏定义为0xdf,但是执行过后SP仍为0x07

使用特权

评论回复
10
chenho|  楼主 | 2016-12-11 18:47 | 只看该作者
while(1)
{
unsigned char i,j,k;
i=5;
j=3;
k=j+i;               
}
这里执行不对,i,j,k的值都没有变化,是通过变量窗口观察的

使用特权

评论回复
11
tian111| | 2016-12-11 19:02 | 只看该作者
你是不是直接进入仿真,没有进行代码的下载啊

使用特权

评论回复
12
zhuhuis| | 2016-12-11 19:04 | 只看该作者
开启看门狗时.程序中没有进行清看门狗动作

使用特权

评论回复
13
wenfen| | 2016-12-11 19:06 | 只看该作者
主程序中有进行清看门狗动作,但是子程序存在死循环的情况,无法返回到主程序进行清狗动作,以至看门狗定时超时

使用特权

评论回复
14
huwr| | 2016-12-11 19:08 | 只看该作者
对了,关闭看门狗是不是程序跑飞了

使用特权

评论回复
15
chenho|  楼主 | 2016-12-11 19:10 | 只看该作者

怎么看

使用特权

评论回复
16
gongche| | 2016-12-11 19:11 | 只看该作者
看看振荡器是否有问题

使用特权

评论回复
17
宋倩2010| | 2016-12-11 19:13 | 只看该作者
看看是否翻BANK操作存在错误

使用特权

评论回复
18
huanghuac| | 2016-12-11 19:14 | 只看该作者
嗯,还有就是其他程序错误

使用特权

评论回复
19
chenho|  楼主 | 2016-12-11 19:43 | 只看该作者

我晕,这种低级错误。。。。

使用特权

评论回复
20
gongche| | 2016-12-11 19:43 | 只看该作者
先在MCU的VCC并几个电容,然后从输入那跳线电源到电容脚,MCU地也从电容取。再看看结果,如果这样还有问题找程序。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

748

主题

9853

帖子

5

粉丝