pic 16f886 主程序运行不正确,是不是跟配置字有关系?

[复制链接]
4460|15
 楼主| kiuo 发表于 2012-7-8 23:06 | 显示全部楼层 |阅读模式
电路图如图,现在我程序里面没有配置字,直接宏定义一下就上主程序了
void main()
{
     initial();
     RA0 = 1;
     RA1 = 0;
     delay_1ms(2000);
     RA0 = 0;
     RA1 = 1;
     delay_1ms(2000);
}
就这样执行到
     RA0 = 0;
     RA1 = 1;
的时候,下面的延时函数直接被跳过程序又从头来,像是被复位的样子,但是我不能确定。单独设定RA0RA1没有问题,要改变一下就不行。求教啊各位大侠

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
0蛋骗鸡0 发表于 2012-7-8 23:50 | 显示全部楼层
没关看门狗吗?配置字里关WTDDIS
 楼主| kiuo 发表于 2012-7-9 00:33 | 显示全部楼层
2# 0蛋骗**0 现在是RA0 = 1;
     RA1 = 0; 保持两秒以后这两个io口的电平都会变化一下但是很快又变回原来的电平,我用万用表测量也只是电压跳动一下。看门狗不是最大时间17ms的,那我想如果是看门狗复位的话直接在第一个延时的时候就复位了。不会保持两秒左右电压才跳一下吧
yewuyi 发表于 2012-7-9 08:45 | 显示全部楼层
配置字是必须的
asspeed 发表于 2012-7-9 09:13 | 显示全部楼层
LZ的整个main函数就是这样的???
 楼主| kiuo 发表于 2012-7-9 10:02 | 显示全部楼层
那不知道我该怎么配置呀?能不能给个例子? 4# yewuyi
 楼主| kiuo 发表于 2012-7-9 10:03 | 显示全部楼层
嗯。我测试用的,想看看能不能改变io口的输出电平,结果改变电平以后立马就会被拉回原来的电平 5# asspeed
figo20042005 发表于 2012-7-9 10:09 | 显示全部楼层
你初始化IO怎么设置,你的WDT配置字怎么设置
 楼主| kiuo 发表于 2012-7-9 10:29 | 显示全部楼层
void initial()
{

OSCCON = 0x77;

C1ON = 0;

C2ON = 0;

TRISA0 = 0;

TRISA1 = 0;

setPORTA;

setPORTB;

setPORTC;

ANSEL = 0x1C;

ANSELH = 0x03;

INTCON = 0xD0;

PIE1 = 0x4C;

PIE2 = 0x09;

PIR1 = 0x00;

PIR2 = 0x00;

CCP1CON = 0x05;

CCP2CON = 0x05;

ADCS0 = 0;

ADCS0 = 1;

ADCON1 = 0xB0;


}


WDT禁用的 8# figo20042005
0蛋骗鸡0 发表于 2012-7-9 15:13 | 显示全部楼层
建议楼主买一本PIC 16系列入门的书看看,里面的例子程序跟着跑一跑,弄清楚配置字的问题
baoshi_libo 发表于 2012-7-9 21:21 | 显示全部楼层
没有while(1)死循环,会不断软复位的
0蛋骗鸡0 发表于 2012-7-10 11:40 | 显示全部楼层
楼上正解
 楼主| kiuo 发表于 2012-7-10 13:51 | 显示全部楼层
现在可以了,但是我debug正常,让单片机自己上电运行他就不动了   __CONFIG_ADDR(0x60F4);                   //寄存器CONFIG1配置
   __CONFIG_ADDR2(0x3FFF);                   //寄存器CONFIG2配置

这样的配置可以吗?11# baoshi_libo
 楼主| kiuo 发表于 2012-7-10 13:52 | 显示全部楼层
谢谢,后来看了一下是复位的问题,外围电路接了负载就会不停的复位。现在去掉了负载可以正常debug,但是上电运行就不动了 12# 0蛋骗**0
liu0000feng 发表于 2012-7-10 15:14 | 显示全部楼层
一定要配置字
 楼主| kiuo 发表于 2012-7-13 09:35 | 显示全部楼层
__CONFIG_ADDR(0x20C4);                  
   __CONFIG_ADDR2(0x3FFF);
这是我配置的两个语句,MCLR作为外部复位。上电以后程序不运行,这个脚接地一下就能正常运行了,得要怎么弄才好?我加了0.1uf和10uf电容都不行。 15# liu0000feng
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

33

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部