HC-08藍牙模塊的基本知識


先發點官方的文件,了解下AT的東西

自己下載去

http://www.hc01.com/Upload/file/download/HC-08package.rar

里面有所有的資料,看不明白沒關系

有這么幾個引腳
RXD
TXD
GND
VCC
KEY
STATE
有的單片機提供了藍牙模塊的接口,直接安裝就可以了
沒有提供藍牙接口的話單片機的TXD應該連接藍牙的RXD,交叉連接。
然后比較重要的是
看看手冊的引腳,因為不同的引腳對應不同的通訊功能

看看手冊的引腳,因為不同的引腳對應不同的通訊功能

看看手冊的引腳,因為不同的引腳對應不同的通訊功能

然后發一下寫的程序

#include<reg52.h>
#include<intrins.h>

#define uchar unsigned char
#define uint  unsigned int


//--定義使用的IO--//

sbit LED=P1^3;


//--聲明全局函數--//   
void UsartConfiguration();
void Delay_1ms(uint i);

void Com_Int(void) interrupt 4
{
    uchar i;
  uchar receive_data;
            
        receive_data = SBUF;//接收到的數據
        RI=0;
        SBUF=receive_data;
        while(!TI);
        TI=0;
        if(receive_data == '1')     
        {
            P1=0xfe;
        }
        if(    receive_data == '2')
        {
                P1=0xFD; //其他情況燈滅
        }
        if(    receive_data == '3')
        {
                P1=0xFB; //其他情況燈滅
        }
        if(    receive_data == '4')
        {
                P1=0xF7; //其他情況燈滅
        }
        if(    receive_data == '5')
        {
                P1=0xEF; //其他情況燈滅
        }     
        if(    receive_data == '6')
        {
                P1=0xDF; //其他情況燈滅
        }
        if(    receive_data == '7')
        {
                P1=0xBF; //其他情況燈滅
        }
        if(    receive_data == '8')
        {
                P1=0x00; //其他情況燈滅
        }
        if(    receive_data == '9')
        {
                P1=0xff; //其他情況燈滅
        }

}


void main()
{

    UsartConfiguration();//初始化串口
    
    while(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;         //開總中斷
    REN=1;
}



void Delay_1ms(uint i)//1ms延時
{
  uchar x,j;
  
  for(j=0;j<i;j++)
    for(x=0;x<=110;x++);
}
 receive_data = SBUF;//接收到的數據
        RI=0;

這段代碼是接受

 SBUF=receive_data; while(!TI); TI=0;

這段代碼是回傳(可以沒有)
就這么多吧
然后藍牙的GND和單片機的GND必須是一起的,提供一致的電平

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM