0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Grove 端子が使いたかったので、Grove Base HAT for Raspberry Pi Zero を購入してみました。

IMG_20240715_174510.jpg

  • D15
  • D5
  • PWM
  • A0
  • I2C
  • A2
  • UART
  • A4

のコネクタが搭載されています。A0/A2/A4というのは何かな?

裏側。ICはバッファかと思ったら、STM32マイコンらしい。
IMG_20240715_174523.jpg

A0/A2/A4は、RaspberryPiとは直接つながってなくて、STM32マイコンにつながっている。
STM32マイコンは、I2C で RaspberryPi と通信し、ADコンバータとして動作しているらしい。

IMG_20240715_174538.jpg

for Raspberry Pi Zero となってますが、Raspberry Pi 3 にアタッチして使いました。

IMG_20240715_174555.jpg

連結ピンが搭載されているので、別のHATをスタックすることができます。

資料

公式 Wiki はこちら

回路図を参照する

I2C 関係の回路図を確認したいのだけれど、オンラインビューアは何も表示されない。
image.png

Wiki の 「Resources」

image.png

Eagle とあるが、この中に pdf も入っている。

I2C を使いたい

先の回路図を見てみると、I2C と名前のついている Grove コネクタは GPIO2 と GPIO3 につながっている。標準の I2C のピンアサインですね。プルアップ抵抗もついているのでつなぐだけで使えそうです。

image.png

NeoPixel を使いたい

この HAT 経由で NeoPixel をつなぐにはどうしたらいいかな?

https://learn.adafruit.com/neopixels-on-raspberry-pi/raspberry-pi-wiring
によると、GPIOGPIO10、GPIO12、GPIO18、または GPIO21 に接続する必要があるそうです。

![image.png](https://qiita-image-store.s3.ap-nohttps://learn.adafruit.com/neopixels-on-raspberry-pi/raspberry-pi-wiring
によると、GPIOGPIO10、GPIO12、GPIO18、または GPIO21 に接続する必要があるそうです。
rtheast-1.amazonaws.com/0/139524/be6293d5-6127-ac89-a6da-08efeb915592.png)
Grove Base HAT for Raspberry Pi Zero では、 PWM のコネクタが GPIO12 に割り当てられているのでこれを使いました。

おまけ NeoPixel を Python で動かす

ライブラリインストール

$ sudo pip install --break-system-package Adafruit-Blinka
$ sudo pip install --break-system-package rpi_ws281x adafruit-circuitpython-neopixel
Looking in indexe 

ソースコード

import board
import neopixel
pixels = neopixel.NeoPixel(board.D12,30)
pixels[0]=(255,0,0)

あれれ?



# python3 neopixel.py 
Traceback (most recent call last):
  File "/home/pi/neopixel.py", line 2, in <module>
    import neopixel
  File "/home/pi/neopixel.py", line 3, in <module>
    pixels = neopixel.NeoPixel(board.D12,30)
             ^^^^^^^^^^^^^^^^^
AttributeError: partially initialized module 'neopixel' has no attribute 'NeoPixel' (most likely due to a circular import). Did you mean: 'neopixel'?

ただ単にプログラムを neopixel.py としてしまったのでモジュールと名前の競合が起きただけでした。
プログラム名を led.py にしたらうまくいきました。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?