如题全部资料51hei下载地址:
火焰(红外接收)传感器模块使用说明书4线制.pdf
(273.55 KB, 下载次数: 44)
传感器51测试程序.rar
(53.79 KB, 下载次数: 26)
火焰传感器模块电路图.pdf
(25.01 KB, 下载次数: 19)
电路原理图如下:
单片机源程序如下:
- /******************************************
- 传感器触发测试
- 单片机:STC89C52
- 波特率:9600
- *****************************************/
- #include <reg52.h>
- unsigned char date;
- #define uchar unsigned char
- #define uint unsigned int
- sbit key1=P0^1;
- /* 函数申明 -----------------------------------------------*/
- void delay(uint z);
- void Initial_com(void);
- //***********************************************************
- /*
- ********************************************************************************
- ** 函数名称 : delay(uint z)
- ** 函数功能 : 延时函数
- ********************************************************************************
- */
- void delay(uint z)
- {
- uint i,j;
- for(i=z;i>0;i--)
- for(j=110;j>0;j--);
- }
- //******************************
- //*****串口初始化函数***********
- //******************************
- void Initial_com(void)
- {
- EA=1; //开总中断
- ES=1; //允许串口中断
- ET1=1; //允许定时器T1的中断
- TMOD=0x20; //定时器T1,在方式2中断产生波特率
- PCON=0x00; //SMOD=0
- SCON=0x50; // 方式1 由定时器控制
- TH1=0xfd; //波特率设置为9600
- TL1=0xfd;
- TR1=1; //开定时器T1运行控制位
- }
- //*************************
- //**********主函数*********
- //*************************
- main()
- {
- Initial_com();
- while(1)
- {
-
- if(key1==0)
- {
- delay(); //消抖动
- if(key1==0) //确认触发
- {
- SBUF=0X01;
- delay(200);
-
-
- }
-
- }
-
- if(RI)
- {
- date=SBUF; //单片机接受
- SBUF=date; //单片机发送
- RI=0;
- }
-
-
- }
- }
复制代码
|