标题: stc51单片机做的定时器 [打印本页]

作者: abc123194    时间: 2017-1-6 20:12
标题: stc51单片机做的定时器
附上源程序


完整代码下载:
dingshiqi.rar (45.98 KB, 下载次数: 41)


主程序预览:
  1. /***************************************************************************/

  2. #include <STC89C5xRC.H>
  3. #include"config.h"
  4. #include"display.h"
  5. #include"time.h"
  6. #include"keymark.h"
  7. #include"Port.h"
  8. #include "intrins.h"
  9. /***************************************************************************/

  10. /**********************函数声明*********************************/

  11. /*********************************************************************/


  12. void MCUINIT()     //初始化函数
  13. {
  14. _nop_();_nop_();
  15. P1=0x00;
  16. P2=0xf9;
  17. P3=0xdf;
  18. P1=0xff;
  19. {
  20. TMOD=0x01;//设置定时器0为工作方式1(0000 0001)
  21. TH0=(65536-50000)/256;//装初值50ms一次中断  
  22. TL0=(65536-50000)%256;  
  23. EA=1;  //开总中断  
  24. ET0=1; //开定时器0中断   
  25. TR0=1; //启动定时器0  
  26. Num=0;
  27. Hour=9;  
  28. Minite=0;  
  29. shuchu=0;           //继电器不动作,常闭点有输出
  30. timeclose=0;
  31. jishitemp=1;
  32. }

  33.         /*********************************************************************/
  34.         _nop_();_nop_();
  35.         _nop_();_nop_();
  36. }


  37. /****************************主函数*****************************************/
  38. void main()
  39. {
  40.         MCUINIT();
  41.         HC595Init();
  42.         timedis_code();
  43.         while(1)
  44.         {
  45.           key_scan();                             //按键扫描
  46.           _nop_();_nop_();
  47.           while(!timeclose)
  48.           {
  49.             jishi();   
  50.             if (! jishitemp)                    //在time.c中
  51.               {
  52.                       shuchu= 1;                        //P3.5置1,没电输出
  53.                Display00();                        //在Display.c 中          
  54.                    TR0=0;                                   //关闭定时器0
  55.                    timeclose=1;                        //标记时间关
  56.               }
  57.             else shuchu= 0;                   //P3.5置0,有电输出
  58.             _nop_();_nop_();
  59.             key_scan();                             //按键扫描
  60.             _nop_();_nop_();
  61.            }
  62.         _nop_();_nop_();
  63.         }
  64. }


  65. /*********************************************************************/
复制代码



作者: abc123194    时间: 2017-1-6 20:17
有小时增减和分钟增减4个按键,最大可以99小时59分钟的倒计时,到0000后继电器动作,常闭点打开从而关闭用电器电源
作者: 随易而安    时间: 2017-1-6 21:45
正想做一个,先学习一下。
作者: abc123194    时间: 2017-1-8 20:03
实物是这样的

IMG_20170106_214804.jpg (686.15 KB, 下载次数: 116)

IMG_20170106_214804.jpg

IMG_20170106_214913.jpg (517.41 KB, 下载次数: 125)

IMG_20170106_214913.jpg

IMG_20170106_214927.jpg (817.5 KB, 下载次数: 123)

IMG_20170106_214927.jpg

IMG_20170106_215021.jpg (853.12 KB, 下载次数: 125)

IMG_20170106_215021.jpg

作者: abc123194    时间: 2017-1-9 20:35
proteus dinshiqipro.rar (19.76 KB, 下载次数: 24) 仿真文件
作者: dzljp    时间: 2017-1-9 20:45
共享资料的黑币奖励!
作者: 423884489    时间: 2017-1-9 23:05
实物很棒  学习了

作者: hbzy_hyk    时间: 2017-1-10 11:56
不错不错,学习一下
作者: nanning321    时间: 2018-1-2 23:55
不错不错,学习一下
作者: jszyde    时间: 2018-1-5 20:12
下载下来 学习下哦
作者: GUOXUAN    时间: 2018-4-11 08:43
老师的作品外壳很有新意,几年前我也收了几个这种壳子,DIY用!




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1