找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 5729|回复: 1
打印 上一主题 下一主题
收起左侧

TCRT5000红外反射传感器模块51单片机测试程序

[复制链接]
跳转到指定楼层
楼主
ID:707395 发表于 2020-3-15 22:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
TCRT5000传感器的红外发射二极管不断发射红外线,当发射出的红外线没有被反射回来或被反射回来但强度不够大时,红外接收管一直处于关断状态,此时模块的输出端为高电平,指示二极管一直处于熄灭状态;被检测物体出现在检测范围内时,红外线被反射回来且强度足够大,红外接收管饱和,此时模块的输出端为低电平,指示二极管被点亮。详见附件程序和说明。
相关参数指标
1、采用TCRT5000红外反射传感器
2、检测反射距离:1mm~25mm适用
3、比较器输出,信号干净,波形好,驱动能力强,超过15mA。
4、配电位器调节灵敏度
5、工作电压3.3V-5V
6、输出形式 :数字开关量输出(0和1)
7、设有固定螺栓孔,方便安装
8、小板PCB尺寸:3.2cm x 1.4cm
9、使用宽电压LM393比较器



单片机源程序如下:
  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, 下载次数: 52)
寻迹传感器模块电路图.pdf (24.79 KB, 下载次数: 44)
寻迹传感器模块使用说明书.pdf (303.45 KB, 下载次数: 47)

评分

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

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:879438 发表于 2021-10-30 23:58 | 只看该作者
楼主加油,多发一些类似的
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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