android 蓝牙与单片机通信原理图,基于51单片机蓝牙开关控制:程序+原理图+手机端串口通信......

该程序涉及单片机控制,通过初始化设置和中断处理实现继电器状态监测及蓝牙通信。根据输入信号,系统会发送对应状态的字符串到蓝牙设备,如‘The light is on’或‘The light is off’。中断服务函数ser()中,根据输入信号判断继电器状态,并更新要发送的数据。整个系统实现了设备状态的实时反馈与控制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#include

#define uchar unsigned char

#define uint unsigned int

unsigned char flag,a,i,flag_z;

uchar code table_open[]="The light was turn on ! ";

uchar code table_close[]="The light was turn off ! ";

uchar code table_ison[]="The light is turn on ! ";

uchar code table_isoff[]="The light is turn off ! ";

sbit IN_1 =P3^2;                                                                                //低电平吸合继电器信号线一

sbit IN_2 =P3^3;                                                                                //低电平吸合继电器信号线一

/*********初始化函数*********/

void init()

{

TMOD=0x20;

TH1=0xfd;

TL1=0xfd;

TR1=1;

REN=1;

SM0=0;

SM1=1;

EA=1;

ES=1;

}

/***********主函数**********/

void main()

{

init();

while(1)

{

if (flag==1)

{

ES=0;

switch(flag_z)                                                        //选择发送的数据

{

case 0:for(i=0;i<25;i++)

{

SBUF=table_open[i];

while(!ti);

TI=0;

}break;

case 1:for(i=0;i<25;i++)

{

SBUF=table_close[i];

while(!TI);

TI=0;

}break;

case 2:for(i=0;i<25;i++)

{

SBUF=table_ison[i];

while(!TI);

TI=0;

}break;

case 3:for(i=0;i<25;i++)

{

SBUF=table_isoff[i];

while(!TI);

TI=0;

}break;

default:break;

}

//SBUF=a;

//while(!TI);

//TI=0;

ES=1;

flag=0;

}

}

}

void ser() interrupt 4

{

RI=0;

a=SBUF;

switch(a)

{

case 97:{

if(IN_1==0)                                //判断信号输出口的状态

{

flag_z=2;                        //若状态为0,说明继电器为吸合状态,并发送“The Light is turn on”到蓝牙

}

else

{

IN_1=0,flag_z=0;}}                //否则则说明继电器为断开状态,则端口置高,并发送“The Light Was turn on”到蓝牙

break;

case 98:{

if(IN_1==1)

{

flag_z=3;

}

else

{

IN_1=1,flag_z=1;}}                //灯关,并发送“The Light Was turn off”到蓝牙

break;

default:break;

}

flag=1;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值