找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2315|回复: 2
收起左侧

HC05蓝牙控制单片机小灯程序问题

[复制链接]
ID:539763 发表于 2020-1-9 14:00 | 显示全部楼层 |阅读模式
用手机向蓝牙发送数据使小灯亮起来,但小灯总是不亮,数据是能成功发送和接受的。不知道问题出在哪里,有大神帮帮吗。
#include<reg52.h>
#include<intrins.h>

#define uchar unsigned char
#define uint  unsigned int


//--定义使用的IO--//

sbit LED=P2^0;

uchar receive_data;

//--声明全局函数--//   
void UsartConfiguration();
void Delay_1ms(uint i);


void Com_Int(void) interrupt 4
{                  
          while(RI==1);        
        RI = 0;
        receive_data = SBUF;//接收到的数据                        
}

void main()
{
        UsartConfiguration();//初始化串口
        while(1)
        {
        if(receive_data == '1')         
                {
                                LED =1;//接收到1亮灯
                }
                if(receive_data == '2')         
                {
                                LED =0;//接收到1亮灯
                }           
        }
}

void UsartConfiguration()
{        
        SCON=0X50;                        //设置为工作方式1,8位数据,可变波特率
        TMOD=0X20;                        //设置计数器工作方式2
        PCON=0X00;                        //波特率不加倍
        TH1=0XFd;                    //计数器初始值设置,9600@11.0592MHz
        TL1=0XFd;
        TR1=1;                                        //打开计数器
        ES = 1;         //开串口中断
  EA = 1;         //开总中断
}


void Delay_1ms(uint i)//1ms延时
{
  uchar x,j;

  for(j=0;j<i;j++)
    for(x=0;x<=148;x++);
}


发送数据图

发送数据图
回复

使用道具 举报

ID:539763 发表于 2020-1-9 14:01 | 显示全部楼层
调来调去结果出不来
回复

使用道具 举报

ID:140371 发表于 2020-1-10 05:55 | 显示全部楼层
void Com_Int(void) interrupt 4
{                  
        if(RI)
        {                                       
        RI = 0;
        receive_data = SBUF;//??????  
                       
        }
                if(TI)
                {
                        TI=0;
                }
}
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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