(DFR)Gravity:IO Expansion HAT for Raspberry Pi

来自DFRobot Product Wiki
跳转至: 导航搜索


目录

简介

树莓派2代、3代、3代B+,一波又一波树莓派来袭,当然是不忘我们的树莓派粉丝们啦~ 为大家做了许多和Arduino一样体验感的产品。这不给粉丝们上一道秀色可观的‘菜’--IIC 16X2 RGB LCD KeyPad HAT!

这个扩展板不忘预留出树莓派扩展口原型排针用于接口扩展或者连接其他模块用,高度集成化的RGB LCD可控屏更是酷炫~,除此外板载了5颗按键,分别以人工学位摆放设计增强体验效果。

LCD屏是使用高品质RGB背光板制作而成,在保证了与我们使用的传统屏相同的情况下添加了可控背光的功能,以IIC一个接口引出 控制屏的显示和背光的控制。

产品参数

  • Gravity IO扩展功能
    • 20个GPIO
    • 4路舵机接口
    • 5个I2C接口
    • 1个SPI接口
    • 1个串口
    • 舵机驱动占用管脚:4,5,6,7
  • 尺寸:65*56mm
  • 重量:36g


引脚对应说明

树莓派引脚对照表

树莓派管脚有三种编码方式:

  • 第一种是Board编码,这种就是按照树莓派主板上引脚排针编号。分别对应1~40号排针。
  • 第二种是BCM编码,这种方式是参考 Broadcom SOC 的通道编号,侧重CPU寄存器,是用BCM库或者python编程常采用这种编码。
  • 第三种是WPI编码,就是WiringPi编码,把扩展GPIO端口从0开始编码,在使用wiringPi库编程会使用这种编码。

此扩展板采用的编号为BCM编玛

使用教程

  • 如何在树莓派上扩展板上使用IIC和SPI以及舵机接口。



准备

  • 硬件
    • 1 x 树莓派控制板
    • 1 x IO Expansion HAT for Raspberry Pi
    • 1 x HDMI线
    • 1 x 显示屏
    • 1 x 键盘鼠标


IIC 16X2 RGB LCD KeyPad HAT



IIC使用步骤

 1、将Gravity:IO Expansion HAT for Raspberry Pi安装在树莓派板上,树莓派系统默认没有开启IIC和SPI外设,需要手动进行开启:(SPI开启方式与IIC相同)

在树莓派系统终端输入命令:sudo raspi-config

依次“键盘回车键”选择:【 Interfacing Options 】(或者【 Advanced Options 】)->【 I2C 】->【 Yes 】->【 OK 】->【 Finish 】:

step 1
step 2
step 3
step 4
 2、IIC接口使用教程(此处以ADS1115模块和DFR0026搭配作为使用样例**DFRobot I2C ADS1115**DFR0026
  • a.启动树莓派的I2C接口。如已开启,可跳过该步骤。

打开终端(Terminal),键入如下指令,并回车:

sudo raspi-config

然后用上下键选择“ 5 Interfacing Options ”, 按回车进入,选择 “ P5 I2C ”, 按回车确认“ YES ”即可。重启树莓派主控板。

  • b.安装Python依赖库与git,树莓派需要联网。如已安装,可跳过该步骤。

在终端中,依次键入如下指令,并回车:

sudo apt-get update
sudo apt-get install build-essential python-dev python-smbus git


  • c.下载驱动库,并运行。

在终端中,依次键入如下指令,并回车:

cd ~
git clone https://github.com/DFRobot/DFRobot_ADS1115.git
cd DFRobot_ADS1115/RaspberryPi/Python
sudo python DFRobot_ADS1115.py

运行样例代码

在终端中,依次键入如下指令,并回车:

cd ~/DFRobot_ADS1115/RaspberryPi/Python/ADS1115_ReadVoltage
sudo python ADS1115_ReadVoltage.py


连接示意图
结果示意图

结果

可以观察到当用手遮住DFR0026环境光传感器时,A0的数值出现明显变化,手拿开时数值又恢复到原来大小

舵机控制教程

Gravity:IO Expansion HAT for Raspberry Pi拥有4路舵机接口,方便用户在树莓派上使用和控制舵机

  • 首先确认你的树莓派连上网络
  • 然后打开IDE将如下程序复制并保存
打开软件
  • python舵机例程
import RPi.GPIO as GPIO
import time
import signal
import atexit

atexit.register(GPIO.cleanup)

servopin0=7
servopin1=6
servopin2=5
servopin3=4
GPIO.setmode(GPIO.BCM)
GPIO.setup(servopin0,GPIO.OUT,initial=False)
GPIO.setup(servopin1,GPIO.OUT,initial=False)
GPIO.setup(servopin2,GPIO.OUT,initial=False)
GPIO.setup(servopin3,GPIO.OUT,initial=False)
p0=GPIO.PWM(servopin0,50)
p1=GPIO.PWM(servopin1,50)
p2=GPIO.PWM(servopin2,50)
p3=GPIO.PWM(servopin3,50)
p0.start(0)
p1.start(0)
p2.start(0)
p3.start(0)
time.sleep(2)

while(True):
   for i in range(0,360,10):
       p0.ChangeDutyCycle(2.5+10*i/360)
       p1.ChangeDutyCycle(2.5+10*i/360)
       p2.ChangeDutyCycle(2.5+10*i/360)
       p3.ChangeDutyCycle(2.5+10*i/360)
       time.sleep(0.02)
       p0.ChangeDutyCycle(0)
       p1.ChangeDutyCycle(0)
       p2.ChangeDutyCycle(0)
       p3.ChangeDutyCycle(0)
   for i in  range(360,0,-10):
        p0.ChangeDutyCycle(2.5+10*i/360)
        p1.ChangeDutyCycle(2.5+10*i/360)
        p2.ChangeDutyCycle(2.5+10*i/360)
        p3.ChangeDutyCycle(2.5+10*i/360)
        time.sleep(0.02)
        p0.ChangeDutyCycle(0)
        p1.ChangeDutyCycle(0)
        p2.ChangeDutyCycle(0)
        p3.ChangeDutyCycle(0)
'''pin = 7
GPIO.setmode(GPIO.BCM)
try:
    GPIO.setup(pin,GPIO.OUT)
except:
    GPIO.clearnup()
while True:
    GPIO.output(pin,GPIO.HIGH)
    time.sleep(1)
    GPIO.output(pin,GPIO.LOW)
    time.sleep(1)'''
                            
  • 保存目录为/home/pi文件夹,文件名可自定,此处定为testservo
保存
  • 保存后/home/pi文件夹里会有testservo.py的文件,注意后缀为“py”
文件
  • 之后打开终端输入以下命令
打开终端

输入命令

sudo python testservo.py

结果可观察到舵机来回旋转,之后可ctrl+c退出

IO口配置

  • IO口配置同理舵机教程将下列代码保存后,在终端输入命令运行
import RPi.GPIO as GPIO
import time
import atexit
blinkPin=27
atexit.register(GPIO.cleanup)
GPIO.setmode(GPIO.BCM)
GPIO.setup(blinkPin,GPIO.OUT)
while True:
    GPIO.output(blinkPin,GPIO.HIGH)
    time.sleep(1)
    GPIO.output(blinkPin,GPIO.LOW)
    time.sleep(1)                           

此时在扩展板27脚插上LED灯可观察到LED不停亮灭

串口使用教程

1.通过串口实现PC对树莓派远程控制 除了树莓派和扩展板还需准备如下配件

然后按照下图进行连接

连接示意图

在电脑上确认树莓派连接到的COM口

COM连接确认

如果电脑无法识别,可下载更新USB转TTL驱动,在百度上搜索下载即可 在电脑上下载putty点击此处下载(打开后选择Windows一栏下64位下载即可)

putty软件界面

打开后按照上图所示进行配置,点击Open

登录界面

打开成功以后界面如上,之后输入用户名和登录密码,注意密码在输入的时候是看不见的,登录成功后显示如下

登录成功

自此就可以从电脑对树莓派进行终端控制

控制界面

自此就可以从电脑对树莓派进行终端控制

  • 2.通过串口通讯在树莓派上读取传感器数据
import RPi.GPIO as GPIO
import time
import atexit
blinkPin=27
atexit.register(GPIO.cleanup)
GPIO.setmode(GPIO.BCM)
GPIO.setup(blinkPin,GPIO.OUT)
while True:
    GPIO.output(blinkPin,GPIO.HIGH)
    time.sleep(1)
    GPIO.output(blinkPin,GPIO.LOW)
    time.sleep(1)                           

此时在扩展板27脚插上LED灯可观察到LED不停亮灭

常见问题

还没有客户对此产品有任何问题,欢迎通过qq或者论坛联系我们!


更多问题及有趣的应用,可以 访问论坛 进行查阅或发帖。


更多

  • 有趣的应用链接
  • 相关下载链接
  • 推荐阅读链接
  • 旧版本维库的链接


DFshopping car1.png [Link DFRobot商城购买链接]

个人工具
名字空间

变换
操作
导航
工具箱