51单片机怎么写程序用hc05 控制led的亮灭

51单片机怎么写程序用hc05 控制led的亮灭,第1张

#include<reg52h>

//#include<stdioh>

sbit LED = P2^0;

 

unsigned char ReceiveData;

void main()

{

    TMOD = 0x20;

    SCON = 0x50;

    TH1  = 0xfd;//baud 9600bit/s

    //TI   = 1;

    TR1  = 1;

    ES  = 1;

    EA  = 1;

    while(1)

    {

      

    }

}

void UART1_Routine()interrupt 4

{

    if(RI)

    {

        RI = 0;

        ReceiveData = SBUF;

        //此处视上位机发过来的指令而定(将0x01改成对应字节命令即可),只适用于单字节命令,数据包格式需另改代码

        if(ReceiveData==0x01)

        {

            LED =~LED;//实现按一下灯亮,再次按下灯灭

        }

    }

}

 

///如有问题,可再咨询

1、低电压33v工作,蓝牙模块RXD接51单片机TXD(P31),蓝牙模块TXD接单片机RXD(P30)。

注意:给51单片机烧写程序时不要先连接超声波模块。烧写完程序后再接线。

2、学习单片机与蓝牙模块通信,实质上是学习单片机串口通信编程,手机将数据发送给蓝牙,蓝牙通过串口发给单片机。

3、蓝牙模块程序编写步骤:先不接蓝牙模块,编写程序,用电脑串口工具测试,如果测试成功再接蓝牙模块。

用STC-ISP软件的串口助手设置蓝牙模块AT参数:

1、将开发板上的单片机取下来,然后蓝牙模块的RXD和开发板上USB转TTL电路的TXD(P30)相接,蓝牙模块TXD与开发板上USB转TTL电路的RXD(P31)相接,然后再接GND和33V。

2、接好线,蓝牙模块蓝灯和绿灯闪烁,则位AT模式。

3、将STC-ISP软件中串口助手发送接收改为文本模式,然后发送AT,接受区会收到OK,即进入成功。

你看一看芯片手册,芯片有个一8位的移位寄存器,每个移位寄存器都对应带一个锁存器输出,在更新输出的时候,将锁存器锁存,保存输出不变,然后串行输入8位数据到移位寄存器,然后将锁存控制端关闭,这时新输入的8位数据就直接由移位寄存器更新至锁存寄存器,再然后将输出锁存,输出完成。下次更新的时候,同样 *** 作即可。

下位机的程序就是串口接收,单片机处理后再返回,这只能满足玩玩,一个实用的发送~接收~处理~返回,还要保证传输数据的可靠,准确,是一个较大的程序,不过我有一个现成的,你可以看看

以上就是关于51单片机怎么写程序用hc05 控制led的亮灭全部的内容,包括:51单片机怎么写程序用hc05 控制led的亮灭、汇编语言程序编写HC-06蓝牙模块控制指示灯在哪里、为什么我的HC595输出会偶尔乱本来控制一个,结果别的也跟着乱变,HC595程序中该怎么控制等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9711791.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-01
下一篇2023-05-01

发表评论

登录后才能评论

评论列表(0条)

    保存