树莓派和arduino蓝牙通信
树莓派和arduino蓝牙通信
树莓派上使用pybluez蓝牙模块
树莓派上使用蓝牙通信模块来进行通信
- pybluez的安装
使用pip工具安装,python2 使用 sudo pip install pybluez 进行安装,python版本使用 sudo pip3 install pybluez 安装
然后进入python import bluetooth 测试是否装好
没有报错说明安装成功
2.pybluez 使用简要说明
简单的的客户端代码
import bluetooth bd_addr = "01:23:45:67:89:AB" #arduino连接的蓝牙模块的地址 port = 1 sock=bluetooth.BluetoothSocket( bluetooth.RFCOMM ) sock.connect((bd_addr, port)) #创建连接 sock.send("1") #发送数据 sock.close() #关闭连接
arduino 上蓝牙模块使用
- Arduino HC05 接线
VCC:接Arduino的5V。
GND:接Arduino的GND。
TXD:发送端,一般表示为自己的发送端,接Arduino的RX。
RXD:接收端,一般表示为自己的接收端,接Arduino的TX。
注意检查下引脚不要接错了,以防烧坏原件。
- 接好后打开arduino编辑器
新建blue_tooth
将代码粘贴进编辑器
void setup() { Serial.begin(9600); } void loop() { while(Serial.available()) { char c=Serial.read(); Serial.println("get message is :"); Serial.println(c); if(c=='1') { Serial.println("hello arduino"); } } }
然后先将蓝牙模块的TXD RXD拔掉,编译上传程序。
显示上传成功后即可
- 打开串口调试工具
树莓派上面运行 代码
import bluetooth bd_addr = "01:23:45:67:89:AB" #arduino连接的蓝牙模块的地址 port = 1 sock=bluetooth.BluetoothSocket( bluetooth.RFCOMM ) sock.connect((bd_addr, port)) #创建连接 sock.send("1") #发送数据 sock.close() #关闭连接
查看arduino串口调试工具
ok ,显示接收到字符“1”
现在树莓派就可以和arduino说话了。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
JFinal整合WebSocket
说明以tomcat容器为例,tomcat7以上版本开始支持websocket,JFinal集成的jetty服务器不支持websocket 一、包依赖,tomcat7或是javaee包都行,两者二选一,容器中已提供所以只作为提供者 org.apache.tomcattomcat-websocket-api7.0.47provided javaxjavaee-api7.0provided 二、JFinal的配置,需要一个Handler拦截websocket请求,WebSocketHandler实现如下 package com.nmtx.manager.handler; import java.util.regex.Pattern; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.jfinal.handler.Handler; import com.jfinal.kit.StrKit; public class WebSocketHa...
- 下一篇
好程序员web前端学习路线分享Javascript-HTML的request类
好程序员web前端学习路线分享Javascript - HTML的request类,做中英转换的时候,要准确的获取参数并取出,所以做了一个简单的html中用js获取当取地址栏的一个Object。 里面有三个方法: 1、request.QueryString("参数")//获取指定参数,返回字符串; 2、request.QueryStrings();//获取全部参数,并返回数组; 3、request.setQuery("参数","参数的值");//如果当前地址栏有此参数,那么将更新此参数,否则返回一个新的地址栏参数字符串。 例如: 当前地址栏参数字符串为:?name=a&site=never_online alert(request.setQuery("name","blueDestiny")) 如果地址栏参数中有"name",那么返回?name=blueDestiny&site=never_online setQuery方法有自动追加参数的功能。如: 当前地址栏参数字符串为:?site=never_online alert(request.setQuery("name"...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- CentOS8安装Docker,最新的服务器搭配容器使用
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS7,8上快速安装Gitea,搭建Git服务器
- 设置Eclipse缩进为4个空格,增强代码规范
- SpringBoot2全家桶,快速入门学习开发网站教程
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Red5直播服务器,属于Java语言的直播服务器
- Docker安装Oracle12C,快速搭建Oracle学习环境