首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > 单片机 >

基于12864液晶、12cr887钟表芯片、电子罗盘、温湿度传感器、at89s52主控的多功能万年历总是死机

2012-12-17 
基于12864液晶、12cr887时钟芯片、电子罗盘、温湿度传感器、at89s52主控的多功能万年历总是死机基于12864液晶、

基于12864液晶、12cr887时钟芯片、电子罗盘、温湿度传感器、at89s52主控的多功能万年历总是死机
基于12864液晶、矩阵键盘、12cr887时钟芯片、电子罗盘、温湿度传感器、at89s52主控的多功能万年历已经基本成功了,不过总是死机
比如秒钟走着走着就不走了,其他按键都没反应了,我用很大的开关电源供电就好一点点,用充电器的小电源或电脑供电就很快死机。
主函数如下:
初始化略。


while(1)
{

/**************(1)菜单***************/
if(0==menukey)     //如果菜单按键按下
{
flagmenu=1;
if((flagcom==1)||(flagshi==1))
{
flagcom=0;
flagshi=0;
clean_screen();
}

DisplayString(0x80,"菜单未开发");
}
/**************(2)指南针***************/
else if(0==comp)//指南针  //如果指南针按键按下
{
flagcom=1;
if((flagshi==1)||(flagmenu==1))
 {
         flagshi=0;
 flagmenu=0;
  }

compass(buf,comii);
}
/**************************(3)主界面*********************************/
else         //主界面
{
flagshi=1;

if((flagcom==1)||(flagmenu==1))
{
flagcom=0;
flagmenu=0;
clean_screen();
}

/*****************时间**********************/
Read_Time(pt);
Display_Time(pt);

/****************温湿度********************/
recieve_DHT(&humidity,&temperature);
display_DHT(humidity,temperature);

/*****************农历*********************/
Conversion(0,pt->year,pt->month,pt->day,pn);
Display_nongli(pn->nmonth,pn->nday);
   }
}

[最优解释]
本帖最后由 lbing7 于 2012-11-23 09:17:32 编辑 接触不良



[其他解释]
LZ先得确定是软件还是硬件问题。。。


[其他解释]
你得先确定是不是硬件问题
比如复位 电源等等
排除硬件问题 再定位软件问题
[其他解释]
和电源无关 程序只加一个死循环 看看会不会死机 
感觉还是流程有问题 越界?
[其他解释]
和电源无关 程序只加一个死循环 看看会不会死机 
感觉还是流程有问题 越界?

热点排行