我想了三天都没解决,大神帮忙看看SIM900A的程序,问题如下。

2019-07-15 14:48发布

本帖最后由 淘宝兔子 于 2016-3-11 16:11 编辑

/*设置当temp_value>250后,就调用 main2();  (发送短信函数),while下一次循环后,即使满足temp_value>250,也要等到五个小时后才调用 main2();,请问大神们,程序该怎么写?*/
/*在线等,联系我 QQ28964022
//以下是部分需解决的程序核心

#include "dht11.h"
#include <reg52.h>
#include <string.H>

uint hi=0;  
void main()
{
while (1)
{
  if(temp_value>250 )          //发送警报短信温度上限

{
                 zhuanhuan(temp_value,humi_value);
                 th=&th2[0];        
                 te=&nr[0];           
                 main2();  //调用发送短信函数
ReadTempAndHumi();   //读取温度函数
//         continue;
  }
}  return 0;
}

static void InitTime(void)                  //设定定时器
{
  TH0 = (unsigned char)((65535U - 50000) >> 8);
  TL0 = (unsigned char)(65535U - 50000) ;
  TMOD = 0X01;
  TR0 = 1;
  ET0 = 1;
  EA = 1;
}  

void timer(void) interrupt 1     //中断函数 ,占用定时器中断0        适应软硬件定时,不占用CPU资源
{                                            //定时50ms后溢出触发终端
  TH0 = (unsigned char)((65535 - 50000) >> 8);          //>> 8,即除以2^8=256

  TL0 = (unsigned char)(65535 - 50000);                    //重新给初值
hi++;   

}

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。