找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4559|回复: 9
打印 上一主题 下一主题
收起左侧

单片机串口怎样与蓝牙实现通讯

[复制链接]
跳转到指定楼层
楼主
ID:311366 发表于 2018-4-22 17:23 来自手机 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
烦啊,搞了一下午,就是没弄到想要的效果_(:з」∠)_。求大神指点~

Screenshot_2018-04-22-17-21-53.jpg (7.5 KB, 下载次数: 58)

Screenshot_2018-04-22-17-21-53.jpg
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:311366 发表于 2018-4-22 17:25 来自手机 | 只看该作者
这是代码,哪错了?#include<reg52.h>#define uchar unsigned char#define uint unsigned intsbit ji=P2^1;uint flag;uchar rx;void delay(uint z){uint x,y;for(x=100;x>0;x--)for(y=z;y>0;y--);}void init(){SCON=0x50;TMOD=0x20;PCON=0x00;TH1=0xfd;TL1=0xfd;EA=1;ES=1;//REN=1;TR1=1;}void main(){init();while(1)        {                if(flag==0)                {                ji=1;}        delay(1000);                if(flag==1)                {                ji=0;                delay(1000);                }        }}void exter0() interrupt 1{RI=0;rx=SBUF;switch(rx)        {        case'a':flag=0;        break;        case'b':flag=1;        break;        default:        break;        }}
回复

使用道具 举报

板凳
ID:46065 发表于 2018-4-22 20:20 | 只看该作者
蓝牙发送数据有两种数据形式,16进制发送或字符发送,而字符发送需要在SBUF后面减去48!
回复

使用道具 举报

地板
ID:99548 发表于 2018-4-22 23:07 来自手机 | 只看该作者
个人感觉在终端程序中,接收部分是不是应该加while(!RI)
回复

使用道具 举报

5#
ID:99548 发表于 2018-4-22 23:08 来自手机 | 只看该作者
这个链接我尝试过,没有问题。再有建议终端程序中增加关闭终端语句,在中断结束后再开启
回复

使用道具 举报

6#
ID:314264 发表于 2018-4-23 10:47 | 只看该作者
好好看看手册。
回复

使用道具 举报

7#
ID:291351 发表于 2018-4-23 11:12 | 只看该作者
问题0010:蓝牙串口模块使用的正确步骤 很多人现在都开始使用蓝口模块,利用手机蓝牙或者PC蓝牙进行控制单片机系统。但是很多人一上来就直接把蓝牙模块和单片机相连接,然后编写程序,效果实现不了,就不知该如何了。蓝牙模块很多都是结合了串口通信的,通常拿到模块,需要经过一下步骤(自己总结,可做参考):  (1)首先,需要蓝牙模块和PC的硬件连接,这里有两种方法: <a>把你的开发板的单片机取下来,然后从开发板引出电源线VCC和GND,还有P30、P31接口,连接蓝牙模块的四个端口(注意RXD和TXD不要反接了)  <b>如果你有USB-TTL模块,可以直接连接蓝牙模块,无需单片机开发板转接过去。  (2)通过PC的串口软件(比如STC-ISP软件自带的串口),设置好软件的波特率和通信数据格式,通过串口软件发送AT命令(通常购买时卖家提供了),看是否有返回数据,如果没有返回,有可能是P30、P31接口需要换过来,如果发送命令,有返回信息且不是乱码,表示蓝牙模块和PC可以串口通信了。  (3)手机下载软件“蓝牙串口”,通过此软件连接蓝牙模块(蓝牙的名称和配对密码可通过 AT命令设置),然后给蓝牙模块供电,PC打开串口软件,手机发送任意字符到蓝牙模块,会发现PC串口软件接收到了信息,这表示蓝牙可以正常工作。  (4)编写单片机程序,此时需要分为两步: <a>先不连接蓝牙模块,编写程序,单片机接收到串口数据,做出相应动作,写好后下载,然后打开PC的串口软件,发送命令,检验现象是否正确,如果正确,开始第二步 <b>把蓝牙模块连接到单片机,手机蓝牙连接模块,手机发送命令,此时只要步骤<a>现象经过反复验证没有问题,第二步肯定没问题。(如果第二步不对,那就返回去做第一步)  (5)其他。如果需要用PC的蓝牙进行控制,还需要购买蓝牙适配器,也就是模块发送信息到电脑时,需要一个接收器。如果不是很必要,就用手机蓝牙软件就好了,省钱省事
回复

使用道具 举报

8#
ID:341000 发表于 2018-5-30 22:34 | 只看该作者
308 发表于 2018-4-23 11:12
问题0010:蓝牙串口模块使用的正确步骤 很多人现在都开始使用蓝口模块,利用手机蓝牙或者PC蓝牙进行控制单 ...

你好!我最后一步出了问题,没有连接蓝牙模块时,单片机和pc能正常通信,接上蓝牙模块后,手机发送命令单片机没反应。是不是蓝牙模块与单片机连接有问题?感觉手机发送的数据没有被单片机接收啊,
蓝牙模块与pc能正常通信。
回复

使用道具 举报

9#
ID:273802 发表于 2018-5-31 02:00 | 只看该作者
个人感觉在终端程序中,接收部分是不是应该加while(!RI)
回复

使用道具 举报

10#
ID:341994 发表于 2018-5-31 10:31 | 只看该作者
仔细看看手册
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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