蓝牙串口单片机_单片机 串口 蓝牙 - CSDN
精华内容
参与话题
  • 工具包括淘宝上淘的stc单片机实验板一块,hc-06蓝牙模块一个,杜邦线,win7电脑一部,安卓手机一部,相关软件:单片机小精灵,串口通讯助手,keil以及单片机烧录软件,蓝牙通讯软件APP。软件基本上都是免安装直接...

    打算利用蓝牙芯片HC06实现手机和单片机之间的简单通信。工具包括淘宝上淘的stc单片机实验板一块,hc-06蓝牙模块一个,杜邦线,win7电脑一部,安卓手机一部,相关软件:单片机小精灵,串口通讯助手,keil以及单片机烧录软件,蓝牙通讯软件APP。软件基本上都是免安装直接运行的。

    工作流程简单总结下为以下3步:
    1.利用单片机小精灵软件,做好烧录程序,确定波特率应该设置为2400
    2.hc-06蓝牙模块进入AT模式,串口通讯助手成功将蓝牙模块波特率设置为2400
    3.将烧录程序通过keil编译成功后烧录至单片机实验板上,手机上安装好APP,设置完成后运行,确定成功。

    步骤(2)见


    https://blog.csdn.net/dok12/article/details/80152239
    步骤(3)见
    https://blog.csdn.net/dok12/article/details/801730

    本篇先介绍步骤1。工具,单片机小精灵软件,免安装,直接运行。

    打开单片机小精灵软件,选择串口波特率选项。必须选择好晶振和波特率。其他选项,c语言还是汇编,是否串口中断,波特率加倍,允许接收都自己决定。
    因为淘宝买到的单片机实验板是12M晶振,蓝牙模块的默认波特率是9600。所以一开始输入这两项数据。
    结果发现误差太大,必须修改。晶振改不了,只好改波特率了。
    修改波特率为2400后误差控制在千分之一点六,效果不错,得到了一个C语言的串口通信基本框架了。

    根据这个框架做了个C语言程序,目标是对单片机实现蓝牙通讯,实现不同的单片机流水灯效果,并且得到回复数字8。
    #include <reg51.h>
    unsigned char k;
    void InitUART(void)
    {
        TMOD = 0x20;
        SCON = 0x50;
        TH1 = 0xF3;
        TL1 = 0xF3;
        PCON = 0x00;
        EA = 1;
        ES = 1;
        TR1 = 1;
    }
    /*******延时函数*************/
    void delay(unsigned int i)
    {
        unsigned char j;
        for(i; i > 0; i--)   
            for(j = 255; j > 0; j--);
    }
    void main(void)
    {	k=0;
        InitUART();
    	while  (1){
    	if(k==1)
    	{P1=0xff;delay(500);P1=0x00;delay(500);}
    	else if (k==2)
    	{P1=0x01;delay(500);P1=0xfe;delay(500);}
    	else 
    	{P1=0x02;delay(500);P1=0xfd;delay(500);}
    	}
    }
    void SendOneByte(unsigned char c)
    {
        SBUF = c;
        while(!TI);
        TI = 0;
    }
    
    void UARTInterrupt(void) interrupt 4
    {
        if(RI)
        {
            RI = 0;
            //add your code here!
    		k++;
    		if(k>2)k=0;
    		SendOneByte(8);
        }
        else
            TI = 0;
    }
    
    
    




    展开全文
  • HC-05蓝牙串口通信模块应该是使用最广泛的一种蓝牙模块之一了。为什么呢? 因为HC05模块是一款高性能主从一体蓝牙串口模块,可以不用知道太多蓝牙相关知识就可以很好的上手。说白了,只是个蓝牙转串口的设备,你...

    HC-05蓝牙串口通信模块应该是使用最广泛的一种蓝牙模块之一了。为什么呢?

    因为HC05模块是一款高性能主从一体蓝牙串口模块,可以不用知道太多蓝牙相关知识就可以很好的上手。说白了,只是个蓝牙转串口的设备,你只要知道串口怎么编程使用,就可以了,实现了所谓的透明传输。

    但是就是这么一个很常见的模块,网上很多的博客写的都是错的,或者都是很不详细的。

    所以本文就介绍一下这款蓝牙通信模块的使用,包括蓝牙模块的调试、手机与蓝牙模块之间的传输、手机蓝牙控制STM32单片机,应该是逐渐深入的一个过程。但是这仅仅是使用,以后有时间应该会对蓝牙有一个稍微深度的学习,而不能仅仅是浮于表面,只会用。

     

    模块名称:HC-05蓝牙串口通信模块

    参考资料:HC-05蓝牙串口通信模块官方资料包

    知识储备:【STM32】串口通信基本原理(超基础、详细版)

    其他模块:USB转TTL模块、手机蓝牙串口助手app

    手机蓝牙串口助手软件,可以点击链接下载:蓝牙串口。因为这是我见过所有手机端界面最好看的了,其他的界面都有点太糟糕了。

     

    蓝牙模块的调试

    准备工作

    USB转TTL模块与HC-05蓝牙模块的接线:

    两模块共地,两模块共VCC(VCC取5V);蓝牙模块的RX接转换模块的TX,蓝牙模块的TX接转换模块的RX。如下图所示:

    这个时候就要将转换模块连接到电脑上,然后利用串口调试助手进行蓝牙模块的调试。

    附可能会用到的驱动:链接:https://pan.baidu.com/s/1bpYLfCr 密码:yabv

    蓝牙模块的调试

    HC-05蓝牙串口通讯模块具有两种工作模式:命令响应工作模式和自动连接工作模式。在自动连接工作模式下模块又可分为主(Master)、从(Slave)和回环(Loopback)三种工作角色。

    • 当模块处于自动连接工作模式时,将自动根据事先设定的方式连接的数据传输;
    • 当模块处于命令响应工作模式时能执行AT命令,用户可向模块发送各种AT 指令,为模块设定控制参数或发布控制命令。

    怎么进入命令响应工作模式?

    进入命令响应工作模式有两种方法:

    • 模块上电,未配对情况下就是AT模式,波特率为模块本身的波特率,默认:9600,发送一次AT指令时需要置高一次PIO11;
    • PIO11 置高电平后,再给模块上电,此时模块进入AT 模式,波特率固定为:38400,可以直接发送AT指令。

    什么叫做置高一次PIO11?

    在蓝牙模块中有一个小按键,按一下就置高一次PIO11。也就是说,第一种方法需要每发送一次AT指令按一次;而第二种方式是长按的过程中上电,之后就无需再管了,直接发送AT命令即可。

    需要注意一下,两种进入命令响应工作模式的方式使用的波特率是不一样的,建议使用第二种方式。

    怎么区分进了命令响应工作模式呢?

    在蓝牙模块上有灯,当灯快闪的时候,就是自动连接工作模式;当灯慢闪的时候,就是命令响应工作模式。

    AT命令

    进入到命令响应工作模式之后,就可以使用串口调试助手进行蓝牙调试了。

    首先有一点,AT指令不区分大小写,均以回车、换行结尾。下面介绍常用的AT指令:

    常用AT指令
    指令名 响应 含义
    AT OK 测试指令
    AT+RESET OK 模块复位
    AT+VERSION? +VERSION:<Param> OK 获得软件版本号
    AT+ORGL OK 恢复默认状态
    AT+ADDR? +ADDR:<Param> OK 获得蓝牙模块地址
    AT+NAME=<Param> OK 设置设备名称
    AT+NAME? +NAME:<Param> OK 获得设备名称
    AT+PSWD=<Param> OK 设置模块密码
    AT+PSWD? +PSWD:<Param> OK 获得模块密码
    AT+UART=<Param1>,<Param2>,<Param3> OK 设置串口参数
    AT+UART? +UART:<Param1>,<Param2>,<Param3> OK 获得串口参数

    对于AT指令,有几点注意:

    • AT+NAME?:获得设备名称,这个AT指令有很大可能性是没有返回的,因为我也看到了很多的例子……,但是其他的指令都是没有问题的,直接设置设备名称就行了;
    • AT+UART?:获得串口参数,串口的参数一共有三个,波特率、停止位、检验位。其取值如下:
    串口参数
    参数名称 取值
    波特率

    2400、4800、9600、19200、38400、5760、

    115200、230400、460800、921600、1382400

    停止位

    0:1位

    1:2位

    校验位 0:NONE  1:Odd  2:Even

    其默认值为:9600,0,0。

    例子:

    本文中,蓝牙串口的波特率设置成115200。之后的内容,就会采用这个波特率来进行通讯了。

     

    手机与蓝牙模块之间的传输

    直接将蓝牙模块与转换模块连接,再讲其连接到电脑上,蓝牙模块直接进入自动连接工作模式。

    此时手机打开蓝牙串口调试应用,用其来连接蓝牙模块。手机蓝牙串口助手软件,可以点击链接下载:蓝牙串口。万分推荐这款,因为界面脱离了那种黑不溜秋的感觉,比较简洁、清爽。

    这个软件的使用:点击界面右下角蓝牙的标志,选择蓝牙进行连接。

    然后在电脑上的调试助手和手机的蓝牙串口调试应用之间就可以相互传输了,比如:

    可以清楚的看到:电脑向手机发送了“hello you”,手机向电脑发送了“hello world”。

     

    手机蓝牙控制STM32单片机

    之前的两个例子都是相比较而言比较简单的,这个例子将会涉及到程序的内容了。

    实现功能:手机通过蓝牙,向STM32单片机发送消息,STM32接收到消息之后原封不动的返回给手机。当然如果掌握了这个例子,也可以修改成,手机发送特定的消息,然后,STM32单片机做出相对应的动作。比如:点亮LED等、发动电机等等。

    连接说明

    使用USART1进行试验,也就是说STM32选取PA9、PA10来和HC-05进行连接。同时手机通过蓝牙来和HC-05进行连接。

    原理就是:手机通过蓝牙传输到HC-05上,再通过串口通信和STM32通信;而之前一般都是电脑上通过USB线转串口的方式,通过串口和STM32通信。本质上没有区别的。

    这个时候就应该更加深刻地体会到了本文开篇的一句话:说白了,只是个蓝牙转串口的设备,你只要知道串口怎么编程使用,就可以了,实现了所谓的透明传输。蓝牙的相关一切都被封装起来了,都不需要接触到。

    STM32控制程序

    #include "stm32f10x.h"
    
     void My_USART1_Init(void)  
    {  
        GPIO_InitTypeDef GPIO_InitStrue;  
        USART_InitTypeDef USART_InitStrue;  
        NVIC_InitTypeDef NVIC_InitStrue;  
          
        RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);//GPIO端口使能  
        RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE);//串口端口使能  
          
        GPIO_InitStrue.GPIO_Mode=GPIO_Mode_AF_PP;  
        GPIO_InitStrue.GPIO_Pin=GPIO_Pin_9;  
        GPIO_InitStrue.GPIO_Speed=GPIO_Speed_10MHz;  
        GPIO_Init(GPIOA,&GPIO_InitStrue);  
          
        GPIO_InitStrue.GPIO_Mode=GPIO_Mode_IN_FLOATING;  
        GPIO_InitStrue.GPIO_Pin=GPIO_Pin_10;  
        GPIO_InitStrue.GPIO_Speed=GPIO_Speed_10MHz;  
        GPIO_Init(GPIOA,&GPIO_InitStrue);  
          
        USART_InitStrue.USART_BaudRate=115200;  
        USART_InitStrue.USART_HardwareFlowControl=USART_HardwareFlowControl_None;  
        USART_InitStrue.USART_Mode=USART_Mode_Tx|USART_Mode_Rx;  
        USART_InitStrue.USART_Parity=USART_Parity_No;  
        USART_InitStrue.USART_StopBits=USART_StopBits_1;  
        USART_InitStrue.USART_WordLength=USART_WordLength_8b;  
          
        USART_Init(USART1,&USART_InitStrue);
          
        USART_Cmd(USART1,ENABLE);//使能串口1  
          
        USART_ITConfig(USART1,USART_IT_RXNE,ENABLE);//开启接收中断  
          
        NVIC_InitStrue.NVIC_IRQChannel=USART1_IRQn;  
        NVIC_InitStrue.NVIC_IRQChannelCmd=ENABLE;  
        NVIC_InitStrue.NVIC_IRQChannelPreemptionPriority=1;  
        NVIC_InitStrue.NVIC_IRQChannelSubPriority=1;  
        NVIC_Init(&NVIC_InitStrue);  
          
    }  
      
    void USART1_IRQHandler(void)  
    {  
        u8 res;  
         if(USART_GetITStatus(USART1,USART_IT_RXNE)!=RESET)  
     {  
         res= USART_ReceiveData(USART1); 	 
         USART_SendData(USART1,res);     
      }  
    }  
       
     int main(void)  
     {    
    	NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);  
        My_USART1_Init();  
         while(1);  
           
     } 

    这段程序和【STM32】串口相关配置寄存器、库函数(UART一般步骤)中的程序一模一样,几乎没有什么改动。

    区别就是,在UART实验中,USART1是和USB转串口模块连接在一起的,然后与电脑上的串口调试助手进行通信;现在改成USART1是和蓝牙模块连接在一起的,然后和手机上的蓝牙串口调试助手进行通信。

     

    展开全文
  • 蓝牙串口助手(Android Studio源码)

    热门讨论 2020-07-30 23:32:03
    能连接单片机及PC的蓝牙串口。 可用于硬件的串口蓝牙模块(TTL)通信。 软件功能: 1、搜索蓝牙设备 2、接收显示数据与发送数据 3、可设置ASCII与HEX的输入输出模式 4、自定义接收对齐字节数 本工具含三种发送方式:...
  • 首先将HC-06蓝牙通信模块和单片机串口通过杜邦线连接,接线如图所示:RX-P30 TX-P31tips:淘宝购买HC06模块的时候,卖家表示蓝牙模块的TX,RX端的丝印搞反了,所以如果你发现蓝牙模块无法和单片机通信的话,可以尝试...

    本篇介绍如何将蓝牙模块进入AT模式,调整波特率。

    工具:软件串口通讯助手,免安装,直接在win7电脑上运行。

    首先将HC-06蓝牙通信模块和单片机串口通过杜邦线连接,接线如图所示:
    RX-P30                TX-P31
    tips:淘宝购买HC06模块的时候,卖家表示蓝牙模块的TX,RX端的丝印搞反了,所以如果你发现蓝牙模块无法和单片机通信的话,可以尝试调换下TX,RX两端的杜邦线


    将单片机连上电脑,(电脑需要安装单片机的相关驱动,买单片机实验板时候卖家附送的驱动我发现在win10下没用,win7下正常运行),我的电脑——》计算机管理,端口显示端口4
    然后在打开串口调试助手软件。

    串口com4,波特率是9600,输入AT,得到OK就表明成功进入AT模式。

    之后在输入AT+BAUD2,将波特率改为2400.会显示OK2400.
    将串口助手波特率改为2400,输入AT显示OK,表明成功修改至2400



    展开全文
  • 51单片机AD转换、串口蓝牙通讯、labview上位机显示 功能:单片机模拟数字转化,将数字信号通过蓝牙或者串口传输给电脑,电脑上labview显示出一个图表。 我这里实际使用是探测光信号强弱的: 光信号——>光电...

    51单片机AD转换、串口蓝牙通讯、labview上位机显示

    功能:单片机模拟数字转化,将数字信号通过蓝牙或者串口传输给电脑,电脑上labview显示出一个图表。

    我这里实际使用是探测光信号强弱的:

     光信号——>光电探测器——>单片机电压转化为数字信号(AD转化)——>单片机通过串口发送出——>labview接收显示

     

    单片机采用非常简单,别人常说它垃圾,可能确实有点垃圾,但是我却很喜欢的stc12c5a60s2,自带AD转化,有2个串口美滋滋,引脚图如下:

    我使用P1.1口作为模拟信号输入,P1.3作为串口把数据实时传输出去。

    voltagetemp_int=(int)(voltagetemp*1000);
    voltagetemp_a = voltagetemp_int /100;
    voltagetemp_b = voltagetemp_int %100;
    UartSendChar('l');
    UartSendChar('m');
    UartSendChar(voltagetemp_a);
    UartSendChar(voltagetemp_b);
    UartSendChar('n');
    UartSendChar('o');

    根据上面代码,可以知道,传出去的数据,自己为了弄一个校验识别,先发送字符l和m,再发送真实数据,再发送字符n和o表示这一次数据发送结束。模拟信号电压真实值在0-5v之间,这里为了精度高一点显示,先乘以1000,再把高2位和低2位分别取出来,分别发送出去。

     

    还是以前本科时候写的主要代码C语言,拿过来改改用,或许不是很规范。问题很大。懒得改了。

    完事之后文件夹如下。

     

    主函数代码:ceshi.c

    
    #include <12c5a60s2.h>
    
    #include "intrins.h"
    
    #include <stc12delay.h>
    
    #include <ADchange.h>
    
    #include  <math.h>
    
    #include  <uart.h>
    
    int light=0;
    
    uint scan_num=0;
    
    float voltagetemp=0;
    
    int  voltagetemp_int=0;
    
    int  voltagetemp_a=0;
    
    int  voltagetemp_b=0;
    
    int t_int=0;
    
    void main()
    
    {
    
    UartInit();
    
    AD_init();
    
        while(1)
    
       {
    
    scan_num++;
    
     if(scan_num>30)
    
     {
    
        scan_num=0;
    
    AD_get(1);
    
    light=initvoltage1;delay(1);
    
        voltagetemp=light/1024.0*5;
    
        voltagetemp_int=(int)(voltagetemp*1000);
    
        voltagetemp_a = voltagetemp_int /100;
    
    voltagetemp_b = voltagetemp_int %100;
    
    // UartSendChar(voltagetemp_int);
    
        UartSendChar('l');
    
    UartSendChar('m');
    
    UartSendChar(voltagetemp_a);
    
    UartSendChar(voltagetemp_b);
    
    UartSendChar('n');
    
    UartSendChar('o');
    
     }
    
    }
    
    }
    
    

    ————

    ADchange.h内容如下:

    idata uint initvoltage1;
    
    void AD_init()
    
    {
    
    P1ASF=0x03;  //P1  0 1 口作为模拟功能AD使用
    
    ADC_RES=0;   //清零转换结果寄存器高8位
    
    ADC_RESL=0; //清零转换结果寄存器低2位
    
    ADC_CONTR=0x80;//开启AD电源  
    
    delay(1);   //等待1ms,让AD电源稳定
    
    }
    
    
    
    void AD_get(char channel)  //我这里只能取0 和 1 通道
    
    {  
    
    ADC_CONTR=0x88|channel;    //开启AD转换1000 1000 自定通道 即POWER SPEED1 SPEED0 ADC_FLAG  ADC_START CHS2 CHS1 CHS0
    
    _nop_(); _nop_(); _nop_(); _nop_();//要经过4个CPU时钟的延时,其值才能够保证被设置进ADC_CONTR 寄存器
    
    while(!(ADC_CONTR&0x10));    //等待转换完成
    
    ADC_CONTR&=0xe7;      //关闭AD转换,ADC_FLAG位由软件清0
    
    initvoltage1=ADC_RES*4+ADC_RESL;
    
    //voltagetemp=initvoltage1/1024.0*5;
    
    //FtoS(voltagetemp);
    
    //return str;   //返回AD转换完成的10位数据(16进制)
    
    }

     

    ————

    stc12delay.h内容如下:

     #ifndef __STC12DELAY_H__
    
    #define __STC12DELAY_H__
    
    
    
    #define uchar unsigned char
    
    #define uint unsigned int
    
    
    
    
    
    /*****相关宏定义***/
    
        /* exact-width signed integer types */
    
    typedef   signed          char int8_t;
    
    typedef   signed short     int int16_t;
    
    typedef   signed           int int32_t;
    
    typedef   signed       long int int64_t;
    
    
    
        /* exact-width unsigned integer types */
    
    typedef unsigned          char uint8_t;
    
    typedef unsigned short     int uint16_t;
    
    typedef unsigned           int uint32_t;
    
    typedef unsigned       long int uint64_t;
    
    
    
    
    
    11.0592    1T
    
    void delay01ms() //@11.0592MHz
    
    {
    
    unsigned char i, j;
    
    
    
    _nop_();
    
    i = 11;
    
    j = 190;
    
    do
    
    {
    
    while (--j);
    
    } while (--i);
    
    }
    
    
    
     //延时n ms
    
    void delaynms(unsigned int n)
    
    {   unsigned int i;
    
    for(i=0;i<n;i++)
    
    delay01ms();
    
    }
    
    //也是延时 n  ms
    
    void delay(unsigned int n)
    
    {   unsigned int i;
    
    for(i=0;i<n;i++)
    
    delay01ms();
    
    }
    
    
    
    11.0592    1T
    
    void delay1ms12(void)   //误差 -0.018084490741us
    
    {
    
        unsigned char a,b,c;
    
        for(c=8;c>0;c--)
    
            for(b=197;b>0;b--)
    
                for(a=2;a>0;a--);
    
    }
    
    
    
    void delaynms12 (unsigned int n)
    
    {   unsigned int i;
    
    for(i=0;i<n;i++)
    
    delay1ms12();
    
    }
    
    
    
    #endif
    
    


     

     

    ————

    uart.h内容如下:

      

    
    void UartInit();
    
    void UartSendChar(unsigned char ch); //向外发送字节
    
    void UartSendStr(unsigned char *pStr); //向外发送字符串
    
    
    
    void UartInit()
    
    {
    
    //串口2,用于舵机控制器
    
    //串口1,用于接收上位机发出指令
    
         S2CON = 0x50; // SCON: serail mode 1, 8-bit UART  定时器1作为波特率的发生器
    
     SCON = 0x50;
    
     AUXR=0X15;
    
     BRT=(int)(256-((11059200/9600)/32));
    
     EA = 1;
    
     ES = 1;
    
    }
    
    
    
    //串口2有关
    
    void UartSendChar(unsigned char ch)   //向外发送字节
    
    {
    
        S2BUF = ch;
    
        while(!(S2CON&S2TI));
    
        S2CON&=~S2TI;
    
    }
    
    void UartSendStr(uchar *pStr)     //向外发送字符串
    
    {
    
        while(*pStr != 0)
    
         {
    
            S2BUF = *pStr++;
    
            while(!(S2CON&S2TI));
    
         S2CON&=~S2TI;
    
         }
    
    }  
    

    把生成的hex文件下载到单片机之后,单片机就不停的向串口发送:l,m,数据1,数据2,n,o,l,m,数据1,数据2,n,o, l,m,数据1,数据2,n,o, ……

     

    好,然后是labview做的上位机界面的接收,显示。

     

    先看界面情况:

     

    然后看前面板程序:

     

    先配置串口(和单片机内配置保持一致就行了),电脑上就可以选择串口号,包括蓝牙也可以直接选择电脑蓝牙对应的串口号:

     

    再经过一个while循环,循环内进行主要数据的接受和处理。先visa读取数据,这里每次读取10个数据,一边直接显示在缓存区,同时下面接一根线将其转化为图标。

     

     

    下面将visa读取的数据实际上是一个字符类型的,转化为字节数组。

    下面接for循环,来解析分别把这个10个元素的一维数组内的数据索引出来。

     

     

    索引数组就是脚本语言中的a[5],把a数组中第6个元素取出来。

    下面就分别把这个数组中,a[i],a[i+1],a[i+2],a[i+3]这4个元素分别拿出来。i是遍历的从0-9。

    然后判断,如果满足a[i] =109,a[i+3]=110,(109和110分别是asc的字符mn) 那么 把a[i+1]和a[i+2]这2真实数据拿出来进行一个类型转换,转化为真实的电压数据显示出来即可。

     

    完整的labview代码如下:

     

    Over~

     

     

    展开全文
  • 蓝牙串口APP源码

    2020-07-30 23:31:54
    应移动互联实验需求,实现手机与蓝牙之间的通信,即单片机检测的温度通过蓝牙模块传送到手机上。特地在网上找了蓝牙连接程序,下载有七八个就发现这个还行,经过修改效果不错。
  • Android与蓝牙串口模块通信

    万次阅读 多人点赞 2017-06-21 16:57:11
    蓝牙串口模块就是使用单片机的TX ,RX与蓝牙模块通信,单片机通过TX发送数据给蓝牙模块,然后蓝牙模块在通过蓝牙协议把数据发送出去,蓝牙模块与Android的通信方式使用spp协议。 2.蓝牙通信 蓝牙的通信需要服务端和...
  • 1、单片机使用模块:HC-05蓝牙模块; 2、蓝牙通信其实也是利用了串口,所以这里先介绍一下对串口的读写: 3、主要使用API:CreateFile(),WriteFile(),ReadFile()。 代码展示: (这里提供对串口进行读写操作的函数...
  • 能连接单片机及PC的蓝牙串口。 可用于硬件的串口蓝牙模块(TTL)通信。 软件功能: 1、搜索蓝牙设备 2、接收显示数据与发送数据 3、可设置ASCII与HEX的输入输出模式 4、自定义接收对齐字节数 本工具含三种发送方式:...
  • 51单片机蓝牙串口调试测试源代码, 非常适合初学者学习使用 //**** 声明 ******************************************************************** /*************************************************************...
  • 蓝牙串口HC06 手机与单片机联合调试

    千次阅读 2019-05-04 19:11:22
    一、蓝牙模块与串口调试 1.准备一个蓝牙模块HC-06和一个TTL转usb下载器,如下图。 2.在进行蓝牙模块调试时我用的是STC-ISP工具,打开之后里面有串口调试工具,设置波特率一般是...3、手机行下载蓝牙串口调试工具...
  • (1)安卓手机与蓝牙模块联合调试(一)——蓝牙模块的串口通讯  (2)安卓手机与蓝牙模块联合调试(二)—— 单片机蓝牙控制LED灯亮灭(上) (3)安卓手机与蓝牙模块联合调试(三)—— 单片机蓝牙控制LED灯亮...
  • 可以测试通过串口的收发,有安卓和eclipse的工程代码。适合新手。在淘宝上花钱买的基础上添加了一些功能,注释比较清晰。
  • win7电脑虚拟蓝牙串口

    2020-07-29 14:20:13
    这份文档介绍了win7系统利用自带的蓝牙串口与外界蓝牙进行通信调试的方法
  • 通过蓝牙串口发送指定数据到STC89C52RC单片机,控制28BYJ-48步进电机正转或者反转或者速度的快中慢,然后51单片机, 做相应的判断,在LCD1602屏幕上显示正反转状态 以及 转速。 一.准备: 1.单片机 —— 个人...
  • 51单片机蓝牙模块连接

    万次阅读 多人点赞 2018-02-22 12:17:38
    不久前开始学习使用蓝牙模块,在模块与51单片机连接的过程中出现了非常多的问题,我想应该也是很多新手和我一样会遇到这样的问题,因此特地写这篇文章,想分享下在学习过程中遇到的问题以及解决方法。此次学习用到...
  • 最近在接毕设当零花钱,要做物联网的比较多,经常需要用到蓝牙串口来和单片机通讯。引出了几个问题: 蓝牙串口是什么? 如何扫描蓝牙设备 如何连接蓝牙设备 如何收发串口数据 1 蓝牙串口是什么? 先介绍下...
1 2 3 4 5 ... 20
收藏数 2,305
精华内容 922
关键字:

蓝牙串口单片机