蓝牙BLE模块传输大量数据的解决方案 |
您所在的位置:网站首页 › 足球500比分网页版 › 蓝牙BLE模块传输大量数据的解决方案 |
使用环境(蓝色粗体字为特别注意内容) 1、软件环境:Keil uv5.15 2、硬件环境:STM32F103C8T6、蓝牙BLE4.0模块 在一个项目中需要用到蓝牙BLE传图片,(巨坑,亏我想的出来。。。。),没办法自己选的路趴着也要走下去_^_ ,还好图片是用JPEG压缩过的,数据量小了不少!我用的蓝牙模块如下图所示: 需要将摄像头采集到JPEG图片通过蓝牙传输到上位机,图片大小大约有18kb左右,调来调去,直接将单片机和电脑串口相连数据传输就很稳定,但是通过蓝牙模块串口透传之后数据变得很不稳定,出错的概率很大,导致crc校验失败。后来发现是蓝牙模块传输的问题,在使用蓝牙传输大量数据的时候,需要注意以下两点: ①一次性不能给太多数据 如使用 printf("%02X", databuf[i]);的方式将大量数据传送出去即databuf的长度很大的话容易出问题,正确的处理方式是将所有数据拆分成多段发送出去,这时候databuf就不会太长,测试中取40比较合适,超过50就容易出现误码。 ②每次给完数据需要delay一小段时间。 测试中必须大于100ms 这里贴上一些关键代码: void print_str(const v |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |