找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3383|回复: 0
收起左侧

常用传感器触发测试单片机源程序

[复制链接]
ID:344940 发表于 2018-6-5 12:19 | 显示全部楼层 |阅读模式
c51光敏传感器程序等等

单片机源程序如下:
  1. /******************************************
  2. 传感器触发测试
  3. 单片机:STC89C52
  4. 波特率:9600
  5. *****************************************/
  6. #include <reg52.h>
  7. unsigned char date;
  8. #define uchar unsigned char
  9. #define uint unsigned int
  10. sbit key1=P0^1;


  11. /* 函数申明 -----------------------------------------------*/
  12. void delay(uint z);
  13. void Initial_com(void);

  14. //***********************************************************

  15. /*
  16. ********************************************************************************
  17. ** 函数名称 : delay(uint z)
  18. ** 函数功能 : 延时函数
  19. ********************************************************************************
  20. */
  21. void delay(uint z)
  22. {                                                                                                                                                                                          
  23.     uint i,j;
  24.     for(i=z;i>0;i--)
  25.         for(j=110;j>0;j--);
  26. }


  27. //******************************

  28. //*****串口初始化函数***********

  29. //******************************
  30. void Initial_com(void)
  31. {
  32. EA=1;        //开总中断
  33. ES=1;        //允许串口中断
  34. ET1=1;        //允许定时器T1的中断
  35. TMOD=0x20;   //定时器T1,在方式2中断产生波特率
  36. PCON=0x00;   //SMOD=0
  37. SCON=0x50;   // 方式1 由定时器控制
  38. TH1=0xfd;    //波特率设置为9600
  39. TL1=0xfd;
  40. TR1=1;       //开定时器T1运行控制位

  41. }




  42. //*************************
  43. //**********主函数*********
  44. //*************************
  45. main()
  46. {
  47.          Initial_com();
  48.          while(1)
  49.          {
  50.        
  51.                   if(key1==0)
  52.                 {
  53.                         delay();          //消抖动
  54.                         if(key1==0)          //确认触发
  55.                         {
  56.                                  SBUF=0X01;
  57.                                  delay(200);
  58.                                
  59.                        
  60.                         }
  61.           
  62.                 }
  63.                  
  64.                   if(RI)
  65.                   {
  66.                         date=SBUF;    //单片机接受
  67.                         SBUF=date;    //单片机发送
  68.                         RI=0;
  69.                   }
  70.                
  71.                
  72.           }
  73. }
复制代码

所有资料51hei提供下载:
传感器51测试程序.rar (53.79 KB, 下载次数: 13)

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表