E680I通过蓝牙串口传送图像

本文介绍了使用BLUEZ蓝牙库通过手机蓝牙串口传输图像的程序开发过程。手机作为服务器端等待连接,电脑作为客户端进行连接并请求数据包。由于串口速度限制,150kb的bmp图像传输需要约27~33秒,计划通过压缩优化达到50K以内的目标。程序运行展示了连接、传输及接收完成的各个阶段。
摘要由CSDN通过智能技术生成
最近,空闲的时候做了一个 通过蓝牙串口传送图像 的小程序。

使用的是 BLUEZ 蓝牙库。手机本身提供了蓝牙串口,为何使用这个呢?就是可以方便控制启动、关闭蓝牙功能。但,这个也有缺点:/dev/不能创建 rfcomm0 的设备,非要 mount bind 不可。

BlueZ 的安装,就不用说了,在许多的论坛都已经讲过很多了,而且 BlueZ 本身也有说明。

开发的过程。手机端做为服务器端,启动串口之后,等待连接;电脑端作为客户端,去连接手机。
           手机                                电脑
等待      
                                          <-     连接
应答、等待数据包请求   ->      
                                          <-      请求第1个数据包
返回数据包,再等待      ->
                                          <-      请求第2个数据包
返回数据包,再等待      ->
……
返回 结束标志                  - >
                                                    终止


其中碰到最大的问题:串口的速度跟不上。一张 raw 的 bmp 的大小是150kb (240X320|24B),需要时间大约27~33秒之间,速度大概 5.6~5 k/s 。

期待:
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值