1.1运行环境

树莓派:型号为树莓派3B+,使用的镜像为:2018-04-18-raspbian-stretch.img
蓝牙打印机:深圳市邦贝特科技有限公司的DL58蓝牙热敏手持打印机
可二次开发的蓝牙打印机的打印指令如链接所示。
百度云链接:https://pan.baidu.com/s/18j4netJWBJhUinsMg3UZtQ
提取码:ksvp

1.2 使用工具

5寸HDMI显示屏、键盘、鼠标、读卡器、SD卡、镜像烧录的工具:Win32DiskImagerDK ,格式化工具工具PanasonicSDFormatter_ha

1.3树莓派板载蓝牙配置

参考:https://blog.csdn.net/guzhong10/article/details/78574577
http://www.xiaovdiy.cn/?post=424
查看蓝牙的状态:

表明树莓派的板载蓝牙是开启的,可以使用

2.1 修改与板载蓝牙有关的文件

修改 /etc/systemd/system/dbus-org.bluez.service
在树莓派的terminal中输入sudo nano /etc/systemd/system/dbus-org.bluez.service
ExecStart =/usr/lib/Bluetooth/bluetoothd 后面添加-C
紧接着添加一行:ExecStartPost=/usr/bin/sdptool add SP
按下Ctrl+x 保存文件----- 然后按下y ------回车键
然后重启树莓派sudo reboot
具体操作如下图所示

2.2 首次连接热敏打印机的蓝牙地址

打开热敏打印机的蓝牙功能
在树莓派的terminal中输入下图的命令

以上的操作只是在第一次连接蓝牙的时候进行的操作,原因可能是为了信任蓝牙设备和输入配对码 0000或是1234
##第二次使用蓝牙通信时就不需要进行此操作了**************
##********************************************************************************************##

3 使用串口的方式实现通信

3.1 在terminal中执行命令 hcitool scan 扫描蓝牙设备
3.2 在terminal中执行命令 sudo rfcomm connect 1 B0:B4:48:AA:E6:F1

出现上述结果后说明连接成功,可以关闭terminal

3.3 若在连接过程中(步骤2.2)报错 可以在terminal中执行以下命令

sudo hciconfig hci0 down
sudo hciconfig hci0 down
sudo rfcomm connect 1 B0:B4:48:AA:E6:F1
如若不行可以反复执行步骤3.3或是重新配置一下树莓派的板载蓝牙

3.4 按上述操作后查看蓝牙服务接口

3.5 测试代码

import serialdef get_soil_temp():ser = serial.Serial('/dev/rfcomm1', 115200) #对应 ls /dev查看的结果data = ''print('starting print')a0= bytes.fromhex('1b 61 01') # 居中打印a = bytes.fromhex('1D 28 6B 03 00 31 43 02') # 设置QR code 单元大小b = bytes.fromhex('1D 28 6B 03 00 31 45 19') # 设置QR错误纠错等级c = bytes.fromhex('1D 28 6B 0c 00 31 50 30') # 数据缓存,主要改变的是0c,0c=9+3d1= bytes.fromhex('20 CE D2 CF B2 BB B6 C4 E3') #需要打印的数据内容,此时的内容个数为9 d = bytes.fromhex('1D 28 6B 0c 00 31 51 30') # 打印QRe = bytes.fromhex('1B 64 03')ser.write(a0)ser.write(a)ser.write(b)ser.write(c)ser.write(d1)ser.write(d)ser.write(e)print('print is over')
passif __name__=="__main__":get_soil_temp()

3.6 测试结果图

利用树莓派(3B+)板载蓝牙(ble)实现与蓝牙热敏打印机的通信相关推荐

  1. 树莓派体验13 - 树莓派3B板载wifi配置方法

    树莓派3代B版自带板载wifi和蓝牙,因此想让树莓派通过wifi上网不再需要单独购买wifi模块,通过简单配置板载wifi即可快速实现. 配置方法在命令行操作,前提是你需要进入命令行终端,进入命令行终 ...

  2. Arduino ESP32利用PWM实现板载LED呼吸灯效果

    Arduino ESP32利用PWM实现板载LED呼吸灯效果 LEDC简介 LED控制(LEDC)外围设备主要用于控制LED的强度,尽管它也可以用于生成PWM信号用于其他目的.它具有16个通道,可以生 ...

  3. 蓝牙BLE芯片PHY6222之I2C主从通信

    蓝牙BLE芯片PHY6222之I2C主从通信 开发环境 I2C主机 I2C从机 注意事项 开发环境 1.PHY6222开发板 2.SDK版本以及路径:SDK\release_bbb_sdk-PHY62 ...

  4. (十九)深入理解蓝牙BLE之“低功耗蓝牙dongle”

    目录 什么是蓝牙dongle: 为什么要买dongle: 为什么最好买nordic的dongle: 如何选择dongle:

  5. 树莓派自启板载蓝牙(ble)

    1. 打开树莓派的终端(terminal)输入命令sudo apt-get update更新一下 2. 执行命令 sudo apt-get install pi-bluetooth bluez blu ...

  6. 基于树莓派3b的嵌入式实验——蓝牙通信实验(python)

    1.实验内容 本实验以树莓派开发板作为控制板,通过树莓派的 USB 母座连接 USB 转串口模块,再使用 板载蓝牙连接蓝牙模块,通过蓝牙模块发送控制信息,板载蓝牙模块接收并点亮 LED 模块 上不同位 ...

  7. winscp连接nas root账户拒绝访问_树莓派 3B 结合 NextCloud PI 搭建皮米级 NAS 家庭储存...

    背景 又是突发奇想- 前几天想起家里还有个闲置的树莓派 (Raspberry Pi) 3B ,应该是之前想拿来学 Python 还有物联网啥的而购入的,之后因为时间问题.学习考试之类的一直闲置.中途好 ...

  8. 蓝牙BLE之系统学习

    文章目录 1 蓝牙BLE简介 2 蓝牙BLE概述 2.1 ISM Band 2.4GMHz 3 蓝牙BLE协议架构 3.1 Physical Layer 3.2 Link Layer 3.2.1 Ph ...

  9. 蓝牙技术|蓝牙BLE和蓝牙Mesh的关系

    蓝牙BLE和蓝牙Mesh的关系 蓝牙Mesh并非无线通信技术,而是一种网络技术.蓝牙Mesh网络依赖于低功耗蓝牙.低功耗蓝牙技术是蓝牙Mesh使用的无线通信协议栈. 低功耗蓝牙设备可以设置成广播模式, ...

最新文章

  1. 观察内核linux行为,Linux 学习:基于proc观察Linux行为
  2. opencvsharp_基于轮廓的形状匹配中匹配坐标与旋转角度
  3. sencha app refresh
  4. python连接mongodb进行查询_Python中的MongoDB基本操作:连接、查询实例
  5. c++如何打印一维数组首地址_C语言之二维数组和指针的结合
  6. 大剑无锋之二分搜索、二分搜索时间复杂度、三分查找呢?
  7. STM32 的加密实现(转)
  8. api工具 graphql_为什么GraphQL是API的未来
  9. 查询所有_学会DSUM函数,轻松搞定所有的数据查询与数据求和
  10. window新建文本快捷键
  11. new QPushbutton 时程序崩溃
  12. python print函数用法_print函数的用法总结
  13. 如何申请微信号测试账号,进行微信开发
  14. 现代笑话二则 木子家创作
  15. 半群 群 阿贝尔群 环 整数环 多项式环
  16. 高通 android 传感器支持,Android加速度传感器数值的过滤
  17. 软件企业 双软认定好处、条件及具体内容
  18. 浅入浅出linux中断子系统
  19. 【面试总结】测试开发面试题目
  20. Linux虚拟机不显示IP地址的三种解决方法

热门文章

  1. BlenderSubstance Painter流程:高模(Blender/Substance Painter)
  2. 程序员如何在工作中自我增值?电子版已问世
  3. 【原创】技术人员的未来:做技术还是做管理?
  4. 智慧城市数据可视化助力于城市建设
  5. 遥感学习笔记(二)——地物反射波谱特征
  6. 零售新时代,零售行业数字化破局的新路径
  7. 计算机如何连接网络扫描仪,Win7系统怎么连接扫描仪 win7连接扫描仪的方法
  8. 互联网电商大数据环境 ——大数飓数据分析实践培训精华笔记(六)——电商核心业务知识之订单商品模块
  9. 互联网电商大数据环境 ——大数飓数据分析实践培训精华笔记(七)——电商核心业务知识之订单商品模块
  10. api 定位 微信小程序 精度_微信小程序JavaScript SDK