树莓派+Android Things使用超声波测距模块HC-SR04

前言

最近在浏览Google时,发现了Android Things这一新玩意儿(对我来说)。其实早就已经发布了,但是不知道为什么国内对此好像没什么太大的反应,好像学习者很少的样子,Google官网贴出来树莓派支持运行Android Things ,身为一个对硬件有兴趣却懒得学的安卓工程师我觉得这是一个很好的入门途径,所以就从网上买了个树莓派和若干传感器开始学习,这回先从超声波测距开始吧。网络上其实已经有很多类似的文章了,不过都是以Python或者C写的,Android我还没有找到,所以我根据网上的文章用Android写了一个,如果程序有问题,望大牛们指正。

树莓派介绍

略,自己百度就造了啊,这篇文章这个不是重点。

操作步骤

准备以下物品

硬件
  • 树莓派 * 1(假定是一个可以启动的树莓派,包含电源线、8G以上的TF卡)
  • HDMI 连接屏幕线 (其实不看屏幕也行,但是第一次获取树莓派IP比较麻烦,还是备一根吧)
  • HDMI 屏幕
  • HC-SR04 超声波测距模块 * 1
  • 杜邦线 若干
软件环境
  • Android Things 系统镜像(官网下载,选择Raspberry Pi的镜像)
  • Android Studio

将Android Thing刷入树莓派

这不是本篇重点,不再赘述,所以提供官方操作方法,包含(Linux、Mac、Windows)。
将树莓派配置好WIFI就行了,如果遇到问题可以留言。

将超声波模块和树莓派连接起来

树莓派+Android Things使用超声波测距模块HC-SR04_第1张图片
树莓派3针脚图

HC-SR04 一共有四个针脚。
VCC,超声波模块电源脚,接5V电源即可,我接的上图4针脚处(白色小数字)。
Trig,超声波模块发送脚,高电平时发送出40KHZ出超声波,我用的是
GPIO BCM20口,即上图38针脚处。
Echo,超声波模块接收检测脚,当接收到返回的超声波时,输出高电平。我用的是
GPIO BCM26口,即上图37针脚处。
GND,超声波模块GND,我接的是上图6针脚处。
具体如下图:

树莓派+Android Things使用超声波测距模块HC-SR04_第2张图片
超声波模块针脚
树莓派+Android Things使用超声波测距模块HC-SR04_第3张图片
树莓派针脚

这里说一下,网上教程说超声波模块的Echo返回电压可能高达5v会烧毁树莓派,需要电阻做分压电路。但是我没有电阻,也就没做,但是运行没问题,担心的朋友可以做一下分压试试。

编译工程到树莓派上

将我写的Android Things HC-SR04超声波模块测距Demo克隆到本地,用Android Studio打开。将已经连接好超声波模块的树莓派插上屏幕和电源打开,在Andorid Studio的Terminal中输入
adb connect
连接到你的树莓派,Run 工程即可。如果成功可以从屏幕和LOG中看到结果。

树莓派+Android Things使用超声波测距模块HC-SR04_第4张图片
resultlog.jpg
树莓派+Android Things使用超声波测距模块HC-SR04_第5张图片
屏幕

感觉代码还有一定的问题,不过现在基本可以磕磕碰碰跑的通,先抛砖引玉希望大牛能完善一下吧。

参考资料
  • 树莓派之HC-SR04超声波测距
  • Google官方的GPIO文档
  • Google官方的Android Things亮灯大法

你可能感兴趣的:(树莓派+Android Things使用超声波测距模块HC-SR04)