技术小白,感谢大家阅读和点赞!使用蓝牙模块也有段时间了,更新……

现在市面上用的蓝牙芯片大部分是ble的了,也就是低功耗透传模式。最近用到蓝牙SOC(片上系统),和大家分享下。

我们平时用蓝牙,一般是单片机的串口与蓝牙的串口连接,实现数据传输,同时,也会用到mcu的其他一些功能,比如IIC,比如定时器,ADC等。但对于一些功能相对较少的产品,或者要求小体积的产品,这时候可以考虑把mcu省略掉,通过蓝牙直接实现需求,这就是soc。

目前市面上用的比较多的soc包括TI的CC2640, Nordic的nRF52832和nRF52840,高通的CSR102x,各个品牌的功能和价格都大同小异,开发环境稍有不同,一般能满足可穿戴、物联产品的需求,博主最近在使用CSR102X,  使用后分享经验哈!

以下帖子为原内容

第一次用蓝牙通讯,现在市场上很多蓝牙模块功能都很强大,如果只是使用,不需要过多了解内部结构原理,只需要设置一些自己用到的参数就行了。

蓝牙分为传统蓝牙和ble蓝牙,现在大部分用到的都是ble低功耗蓝牙。蓝牙分主从模式,主模式是主动连接其它蓝牙设备,作为主模式可同时连接7个从设备,作为从设备只能被一个主设备连接。

使用蓝牙模块时,看模块支持哪种电平,有的可以直接接单片机的串口(TTL电平),有的需要经过232芯片连接。选定串口,设置好波特率,写好通讯协议,就可以通讯了。

以上都是很简单的内容,这里需要跟大家分享的惨痛的教训是关于串口和单片机的隔离。

我采购的SKY369可以直接连在单片机串口上,而且也可以3.3v供电。所以在设计电路时,我直接把蓝牙模块与单片机的某个串口接在一起,同时从模块引出四个排针,分别是vcc、gnd、rx、tx,注意,此时蓝牙模块已经焊在板子上了,按道理,在电路板不供电的情况下,我用usb转ttl线接四个排针,是可以进行AT指令设置的。但是,此处却出现了很多问题,很多问题!

问题如下图,我用的是友善串口助手,串口设置好了(可以在电脑计算机右键——设备管理——端口处查询自己用的串口号),蓝牙模块都有初始波特率,可以参考蓝牙模块的手册,数据位校验位停止位也是参考手册。发送和接收都是ASCII,然后点击发送,没反应,再点击,还是没反应。

排查串口波特率、排查串口线电压、排查tx、rx接没接反,最后发现都没问题,总不可能是蓝牙坏了吧,事实证明现在的模块都很稳定,一般不会出现质量问题,芯片坏了的情况基本不要考虑。

而且,这个现象并不是每次都出现,而且蓝牙的通讯功能完好,只是设置出问题。同时,这个问题不是每次都会出现,有时候发送AT指令,有的可以实现,有的就会出现00 00 00 00……

这个现象据蓝牙模块厂家说,是供电问题,换了好几个串口工具和线,确认不是此处的原因。

经历了蓝牙模块返厂等一系列,发现,单片机和蓝牙模块之间在设置模式下,最好不要直接连接,拿一块板子做测试,把单片机与模块间的线割掉,就再也没出现发送数据没反应的现象了。

串口连接蓝牙模块时,同时也给单片机供电了,发送给串口的数据同时也发给单片机了,这时就混乱了,处理方法是单片机与蓝牙模块之间加跳线帽,设置时拔开,通讯时插上。

经验教训:外接设备与单片机连接时,最好做好隔离,包括编码器、蓝牙模块、wifi模块等。

另外,做通讯协议时,单片机通过蓝牙收到数据,处理返回数据时,返回处理函数最好清晰,此串口用作接受处理函数后,就不要再定时器里写其他的定时返回函数,否则会很混乱!收发乱七八糟……这也是血的教训。

例如,用单片机usart5做蓝牙通讯,蓝牙收到00,返回01,同时,蓝牙还要每隔0.01秒返回02,这样就会乱,导致蓝牙发送接收丢数据。

同时,还要强调,一定要检查自己的电脑com口有没有问题,博主用自己的台式机一直失败,换了个笔记本莫名其妙好了!

蓝牙篇就到这。

蓝牙模块惨痛教训——模块与单片机串口的隔离(更新)相关推荐

  1. 智能手环功能模块设计_基于51单片机的智能手环蓝牙模块设计

    龙源期刊网 http://www.qikan.com.cn 基于 51 单片机的智能手环蓝牙模块设计 作者:王烈进 王游司 陈洪燕 孙超 卢宇 来源:<电脑知识与技术> 2018 年第 2 ...

  2. 中移4G模块-ML302-OpenCpu开发-51单片机串口转I2C

    B站:https://space.bilibili.com/309103931 中移4G模块-ML302专栏:https://blog.csdn.net/qq_33259323/category_10 ...

  3. 单片机串口转USB模块CH376S读写U盘

    文章目录 前言 一.CH376S是什么? 二.使用步骤 1.USB转串口六合一模块 2.CH376模块 3.读写U盘测试 总结 前言 在做一些项目时需要支持U盘,一般的单片机不能支持USB主设备,即使 ...

  4. TB-02 Kit开发板及TB系列BLE蓝牙模块固件及天猫精灵三元组串口烧录工具操作方法说明及固件市场介绍(基于泰凌微TLSR8258芯片)

    摘要 这篇文章介绍如何通过烧录工具给TB系列蓝牙模块烧录固件及天猫精灵三元组,以及如何通过烧录工具的固件市场下载最新的固件及固件操作说明文档. 获取烧录工具 安信可团队针对TB系列蓝牙模块专门开发了烧 ...

  5. 单片机设计:基于stm32智能语音识别蓝牙音响(ld3320语音识别模块+mp3模块+喇叭+点阵屏+OLED+蓝牙+手机app)

    单片机设计:基于stm32智能语音识别蓝牙音响(ld3320语音识别模块+mp3模块+喇叭+点阵屏+OLED+蓝牙+手机app) 一.主要功能: 1.手机app播放内存卡的音乐.同时点阵屏随音乐进行跳 ...

  6. 泰凌微ble mesh蓝牙模组天猫精灵学习之旅④如何在Android开发低功耗蓝牙ble控制 TB-02 模块,代码工程全部开源!(附带Demo)

    本<泰凌微ble mesh蓝牙模组天猫精灵学习之旅>系列博客学习由半颗心脏 潜心所力所写,仅仅做个人技术交流分享,不做任何商业用途.如有不对之处,请留言,本人及时更改. 1.小白也痴迷,如 ...

  7. 基于8266WIFI模块实现智能手机与51单片机的通信入门

    1  芯片及电路的介绍 1.1  8266WIFI模块 在文章的最开始我们首先要介绍今天的主角,8266WIFI模块.这是一个非常好用的模块,其他的废话不在多说,我们直接上干货. 这是一张我从百度上盗 ...

  8. 迅为IMX6开发板支持全网通4G模块丨GPS模块丨WIFI蓝牙丨千兆以太网

    迅为i.MX6开发板丨迅为i.MX6Q开发板丨四核imx6开发板丨Cortec-A9开发板丨资料介绍: 特点: 处理器:Freescale Cortex-A9四核i.MX6Q主频1GHz 核心板配置: ...

  9. Microchip推出公司首款蓝牙® 4.1低功耗模块RN4020

    Microchip推出公司首款蓝牙® 4.1低功耗模块.RN4020基于Microchip在传统蓝牙技术方面积累的深厚经验研发而成,新模块通过了全球法规认证以及蓝牙技术联盟(SIG)的认证.集成的蓝牙 ...

最新文章

  1. 全链路跟踪系统设计与实践(转载)
  2. maven dependency中scope=compile 和 provided区别
  3. Java实现ftp的上传、下载和删除
  4. 面试准备——Struts2相关问题
  5. Processing 字体变形
  6. aix oracle 10.2.0.1 升级 10.2.0.4,install oracle 10r2 for aix
  7. 【报告分享】2021中国移动互联网秋季大报告.pdf(附下载链接)
  8. 使用计算机的好处作文,电脑的好处
  9. 如何从一台铅封计算机上取走数据
  10. SECS/GEM介绍
  11. jcr多久更新一次_sci分区什么时候更新
  12. android 的User-Agen
  13. 拖放drag、drog
  14. 英语绕口令大全 练习你的口语
  15. 安装loadrunner11的时候提示'命令行选项语法错误。键入命令 / ?’ 怎么办
  16. 逻辑卷 /dev/mapper
  17. 使用k-means及k-prototype对混合型数据集进行聚类分析
  18. 简单好用的服务器压力测试小工具 ab
  19. appium手机APP自动化定位元素
  20. 逆向学习路线(推荐书籍)

热门文章

  1. VVC帧内预测(一)
  2. photoshop 图片裁剪与填充前景色及背景色
  3. JVM:JVM常见参数配置
  4. bilibili源码泄漏后,程序员们从代码里扒出来的彩蛋
  5. java解析pdf获取pdf中内容信息
  6. 真的,我现在特讨厌 Safari 浏览器!
  7. 2021年中国奶粉行业发展现状分析,行业集中度不断提升,下沉市场发展空间广阔「图」
  8. mysql之联合索引
  9. VMware Workstation虚拟机网络相关配置
  10. 微信小程序学习(实战)