找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 12143|回复: 6
收起左侧

测速传感器模块原理图与单片机源程序

[复制链接]
ID:73648 发表于 2017-12-11 17:12 | 显示全部楼层 |阅读模式
测速传感器外观图片:
0.png

原理图:
0.jpg
用途:
广泛用于电机转速检测,脉冲计数,位置限位等。
模块特色:
1、使用进口槽型光耦传感器,槽宽度 5mm。
2、有输出状态指示灯,输出高电平灯灭,输出低电平灯亮。
3、有遮挡,输出高电平;无遮挡,输出低电平。
4、比较器输出,信号干净,波形好,驱动能力强,超过 15mA。
5、工作电压 3.3V-5V
6、输出形式 :数字开关量输出(0 和 1)
7、设有固定螺栓孔,方便安装
8、小板 PCB 尺寸:3.2cm x 1.4cm
9、使用宽电压 LM393 比较器
模块使用说明:
1.模块槽中无遮挡时,接收管导通,模块 DO 输出低电平,遮挡时,
DO 输出高电平;
2、DO 输出接口可以与单片机 IO 口直接相连,检测传感器是否有遮档,如用电机码盘则可检测电机的转速。
2.模块 DO 可与继电器相连,组成限位开关等功能,也可以与有源蜂鸣器模块相连,组成报警器。
产品接线说明:
1、VCC  接电源正极 3.3-5V
2、GND  接电源负极
3、DO   TTL 开关信号输出
4、AO   此模块不起作用

单片机源程序如下:
  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. …………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码

所有资料51hei提供下载:
测速传感器模块(窄槽版).rar (246.6 KB, 下载次数: 116)

评分

参与人数 1黑币 +5 收起 理由
tieq1952 + 5 赞一个!

查看全部评分

回复

使用道具 举报

ID:253767 发表于 2017-12-18 08:28 | 显示全部楼层
很实用的传感器模块
回复

使用道具 举报

ID:315256 发表于 2018-4-24 13:03 | 显示全部楼层
感谢楼主分享
回复

使用道具 举报

ID:315256 发表于 2018-4-24 14:04 | 显示全部楼层
刚好缺这个,很实用
回复

使用道具 举报

ID:445754 发表于 2018-12-13 19:17 | 显示全部楼层
为啥我下载的是png文件 用记事本打开是乱码
回复

使用道具 举报

ID:628333 发表于 2019-10-23 21:32 | 显示全部楼层
如果是想要在Lcd1602上显示,可以直接在这个程序上加lcd1602吗?
回复

使用道具 举报

ID:629972 发表于 2019-10-25 12:44 | 显示全部楼层
大神,谢谢分享啦
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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