目录摘要故事背景启示摘要当使用HC-05蓝牙模块一次性连续发送大量数据时需要将数据进行拆分分包发送每个数据包之间适当加时间间隔否则当连续传输的数据量达到一定程度时蓝牙模块容易宕机。分包建议建议数据来自于广州汇承信息科技有限公司的官方淘宝技术客服每个数据包的大小建议为500-1k1024个的8bit数据115200波特率下1K大小的数据包建议间隔100ms230400波特率下1K大小的数据包建议间隔50ms故事背景做课设时需要将上位机的一张图片数据传输到FPGA上传输的图片在MATLAB上进行预处理将图片裁剪成640*480的大小图片数据转化为RGB565的格式即一个像素点的数据为16位数据。故一张图片共有640*480*2614400个8位数据即上位机给FPGA发送数据一次需发送约61万个8bit数据。数据的发送与接收通过两个HC-05蓝牙模块实现一个为主机模式、一个为从机模式波特率为115200。上位机软件将这61万个数据一次性发送给FPGA多次发送时发现经常在发送到35万-50万个数据时蓝牙模块出现宕机。虽然两个蓝牙模块的LED指示灯仍显示两个蓝牙之间仍保持连接状态但这两个蓝牙模块实际上已经不能再次通信发送端不管怎么发接收端一直接收不到数据需要将任一蓝牙模块断电重启重新连接后才能重新收发数据。咨询汇承官方技术客服得知原来HC-05蓝牙模块不能一次性连续发送太多数据需要将数据进行拆分分包发送每个数据包之间适当加时间间隔。分包建议见摘要。这个分包建议以及宕机情况没有在模块的资料里提及到若没有咨询技术客服还真难以发现问题所在以及解决方案。按他们的建议进行分包发送蓝牙模块确实不会再出现宕机情况。FPGA能够成功接收图片的所有数据。波特率改用为230400时测试发现一次性连续发送约15万个8bit数据时蓝牙模块就出现宕机情况。按建议的时间间隔进行分包发送确实也没有了这种宕机情况。启示以后采用一些通信模块进行数据通信时当一次性连续传输的数据量大到一定程度时要有分包发送的意识这样有利于通信模块保持正常稳定地工作。当一次性连续传输的数据量大到一定程度时若数据前面一部分能够正常接收后面出现连接断开、数据丢失的情况可以尝试进行数据拆分、分包发送、延长间隔时间。觉得讲得还不错的话麻烦点一下赞呀你的点赞是我更新的动力❤