欢迎来到天天文库
浏览记录
ID:39304706
大小:35.01 KB
页数:5页
时间:2019-06-30
《蓝牙模块C程序》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、//模块:HC-05蓝牙模块//功能:手机蓝牙控制3路继电器的开关//编写:ZXC//时间:2015-5-26#include#defineuintunsignedint#defineucharunsignedcharsbitREY1=P1^2;sbitREY2=P1^1;sbitREY3=P1^0;uchardataSendDataPoint;uchardataSendDataLength;uchardataReceiveDataPoint;uchardataReceiveByte;ucharSendAskBatVolCo
2、mmandCnt0;uchartmp[64];//tmp表示需要发送数据voidstartDischarge();voidstopDischarge();bitReceiveStart;bitReceiveFlag;voidReturn()//接收数据处理程序{uchari;if(ReceiveFlag){switch(tmp[0]){case0x31://开启继电器1REY1=0;SendDataPoint=0;SendDataLength=0;tmp[0]=0x31;while(SendDataPoint<=SendDataLength)
3、{SBUF=tmp[SendDataPoint];while(TI==0);//等待一个字节发送完成TI=0;SendDataPoint++;}break;case0x32://关闭继电器1REY1=1;SendDataPoint=0;SendDataLength=0;tmp[0]=0x32;while(SendDataPoint<=SendDataLength){SBUF=tmp[SendDataPoint];while(TI==0);//等待一个字节发送完成TI=0;SendDataPoint++;}break;case0x33://开启
4、继电器2REY2=0;SendDataPoint=0;SendDataLength=0;tmp[0]=0x33;while(SendDataPoint<=SendDataLength){SBUF=tmp[SendDataPoint];while(TI==0);//等待一个字节发送完成TI=0;SendDataPoint++;}break;case0x34://关闭继电器2REY2=1;SendDataPoint=0;SendDataLength=0;tmp[0]=0x34;while(SendDataPoint<=SendDataLength
5、){SBUF=tmp[SendDataPoint];while(TI==0);//等待一个字节发送完成TI=0;SendDataPoint++;}break;case0x35://开启继电器3REY3=0;SendDataPoint=0;SendDataLength=0;tmp[0]=0x35;while(SendDataPoint<=SendDataLength){SBUF=tmp[SendDataPoint];while(TI==0);//等待一个字节发送完成TI=0;SendDataPoint++;}break;case0x36://关
6、闭继电器3REY3=1;SendDataPoint=0;SendDataLength=0;tmp[0]=0x36;while(SendDataPoint<=SendDataLength){SBUF=tmp[SendDataPoint];while(TI==0);//等待一个字节发送完成TI=0;SendDataPoint++;}break;}ReceiveFlag=0;for(i=0;i<64;i++)tmp[i]=0;}}//*************接收程序*************voiduart(void)interrupt4usin
7、g2{uchara;ES=0;if(RI){a=SBUF;RI=0;tmp[ReceiveDataPoint]=a;//if(a==0x31&&!ReceiveStart)//{ReceiveStart=1;//}if(ReceiveStart){ReceiveDataPoint++;//开始接收,指针地址加1ReceiveByte=0;//接收字节数ReceiveByte=0;目的是只接收一个字节if(ReceiveDataPoint>=ReceiveByte){ReceiveFlag=1;}if(ReceiveDataPoint>=0){
8、ReceiveDataPoint=0;ReceiveStart=0;}}}ES=1;}voidmain()//主程序{SCON=0x50;//设置串口工作于方式1,
此文档下载收益归作者所有