【超详细】C51单片机与HC |
您所在的位置:网站首页 › 蓝牙耳机芯片51与50的区别在哪儿 › 【超详细】C51单片机与HC |
此文记录HC05蓝牙模块在C51单片机上的学习历程 文章目录 一、硬件连接(1)配置模式下接线(2)正常模式下接线 二、配置模式操作三、正常模式四、使用蓝牙通过蓝牙调试app点灯1.单片机代码烧录与蓝牙连接2.蓝牙调试app配置 一、硬件连接HC05一共有6个引脚,此实验一般只用到中间四个,即RXD、TXD、GND、VCC 无论哪种模式,VCC与GND的接线方法是相同的,即VCC接单片机的5V口(供电电压为3.6V~6V,接到3.3V上是不亮的),GND接单片机的GND,如下所示
配置模式下HC05的RXD接单片机的RXD,TXD接TXD。 由于博主使用的单片机型号为STC89C52RC,查看原理图得单片机的RXD为p30口,TXD为p31口 则连接如下图所示 在正常模式下HC05的RXD接单片机的TXD,TXD接RXD。 二、配置模式操作使用配置模式接线后,将单片机通过串口连接电脑。若此时给单片机上电,在连接无误的情况下, HC05模块上有灯快速闪烁,大概1s闪两次,此时还未进入配置模式。 给单片机断电,一直按住HC05模块上的小按钮,如下图所示: (4)打开串口,在输入框内输入AT,点击发送。若一切正常,则会收到OK,如下图所示。 若没有收到,请检查接线,或者中奖了,单片机/模块有问题 。 接下来可以使用AT指令对模块进行配置,部分AT指令如下 AT+ROLE=0 (蓝牙模块设为从机,此时只可以被搜索) AT+CMODE=1 (蓝牙模块可以和任意设备连接) AT+UART=9600,0,0 (设置波特率9600) AT+NAME=HC05 (设置蓝牙的名字为HC05,手机蓝牙搜索时就找这个名字) AT+PSWD=1234 (设置密码,手机蓝牙串口APP连接蓝牙模块,需要输入密码) 以上,蓝牙串口通通返回OK 。例如改变波特率为9600: 将接线按照正常模式接入,即RXD对TXD,TXD对RXD。给单片机上电,HC05会快速闪烁。下载一个手机蓝牙调试app(题主使用的为Bluetooth spp pro,其他在应用市场上搜索的大部分也可以使用),搜索到自己的设备 单片机代码如下: UART_init () 配置文件 #include void UART_init() //[email protected] { PCON |= 0x80; //使能波特率倍速位SMOD SCON = 0x50; //8位数据,可变波特率 TMOD &= 0x0F; //清除定时器1模式位 TMOD |= 0x20; //设定定时器1为8位自动重装方式 TL1 = 0xFA; //设定定时初值 TH1 = 0xFA; //设定定时器重装值 ET1 = 0; //禁止定时器1中断 TR1 = 1; //启动定时器1 ES=1; EA=1; }.h文件 #ifndef __UART_H__ #define __UART_H__ void UART_init(); #endifmain.c文件 #include void main() { UART_init(); P2=0x00; while(1) { } } void UART_Routine() interrupt 4 { if (RI==1) { P1=SBUF;//将SBUF值赋值给P1 if (P1==0x01) { P2=~0x80; RI=0; } else if (P1==0x02) { P2=~0x40; RI=0; } } }将代码烧录进单片机后,给单片机上电,此时HC05快速闪烁,打开手机app进行蓝牙连接,连接成功后HC05进入慢闪(大约5s快速闪两次)。 连接成功后选择键盘模式,选择配置键盘值 !!! 别忘记选择IO模式,选择为hex模式,若选错模式则实验会毫无反应 (若选择为ascii模式,则代码需要改动,例如键盘发送01给单片机,在hex模式下单片机收到的值为0x01,在ascii模式下收到的为0x0031,具体转换方法请查看acii码表) |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |