欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

树莓派和HC-05蓝牙连接以及通过串口写入(Write)和读入(Read)数据

程序员文章站 2022-03-11 14:49:49
系列文章目录提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加例如:第一章 Python 机器学习入门之pandas的使用提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录系列文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结树莓派和HC-05蓝牙通过串口收发数据前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。...

树莓派和HC-05蓝牙连接以及通过串口写入(Write)和读入(Read)数据

前言

本章讲解树莓派与蓝牙连接,以及如何实现树莓派和蓝牙通过串口互相收发数据。我使用的是HC-05蓝牙,实现树莓派给蓝牙写入字符数据‘, 通过上位机显示,同时蓝牙给树莓派发送数据,树莓派终端把读到的数据打印出来。

一、树莓派和hc-05 蓝牙连接

1.蓝牙HC05模块上电后,蓝牙灯进入慢闪状态,
2.启动树莓派
3.点击树莓派的蓝牙,
4.点击add device,找到HC05,点击pair,输入密码,默认密码1234
(但这样并不能成功连接,这样操作是为了让树莓派记住HC06蓝牙密码(默认是0000或1234))
5.运行Python代码:代码如下

#**导入需要用到的库**
import datetime
import serial
import os
#注册设备号,20:19:01:26:18:70为蓝牙的MAC地址;7为设备号;
#再次连接同一个个蓝牙时需要更改这个设备号码;
os.system('sudo rfcomm bind 7 20:19:01:26:18:70')
port='/dev/rfcomm7'
ser=serial.Serial(port,115200)
ser.flushInput() #初始清空一下串口

#串口接收,发送函数
def recvread():
    while True:
        # 获得接收缓冲区字符
        count = ser.inWaiting()
        if count != 0:
            # 读取内容并显示
            recv = ser.read(count)
            print recv  
        # 清空接收缓冲区
        ser.flushInput()
        # 必要的软件延时
        time.sleep(0.1)
#主函数
if __name__ == '__main__':
    try:
	# 打开串口
    	ser = serial.Serial('/dev/rfcomm1', 9600)
    	if ser.isOpen == False:
        	ser.open()                # 打开串口
    	ser.write(b"Raspberry pi is ready")
		recvread()
    except KeyboardInterrupt:
        if ser != None:
            ser.close()

硬件连接:

1.USB-TTL连接HC-05
2.打开PC端的串口助手,设置波特率为9600

树莓派运行.py文件,对应结果正常。

本文地址:https://blog.csdn.net/jinanhezhuang/article/details/109250208