nakkyiのアイコン画像
nakkyi 2022年06月17日作成 (2022年06月18日更新)
製作品 製作品 Lチカ Lチカ 閲覧数 965
nakkyi 2022年06月17日作成 (2022年06月18日更新) 製作品 製作品 Lチカ Lチカ 閲覧数 965

M5Stick C 自作エルチカ HAT

M5Stick C 自作エルチカ HAT
  1. はじめに
     M5Stick Cのエルチカをする為に、自作のHATを作ってみました。
    スイッチでLEDをON-OFFさせるもの、3個のLEDを点滅させるもの、3色LEDの色を変えるものの3点を作りました。

  2. 目次
    ① はじめに
    ② 目次
    ③ エルチカ HAT
    ④ エルチカ スイッチ HAT
    ⑤ 3個のLED エルチカ HAT
    ⑥ 3色LED エルチカ HAT
    ⑦ おわりに

  3. エルチカ HAT
    動画↓

    ここに動画が表示されます

    穴あき基板をM5Stick CのHATのサイズにカットし、L型ピンを半田付けします。LED、スイッチ、抵抗を取り付け、配線を行い、UIflowでエルチカを行うプログラムを作りました。
    キャプションを入力できます
    キャプションを入力できます
    Pythonのコード

from m5ui import *
from uiflow import *
import machine
import time

setScreenColor(0x111111)

title0 = M5Title(title="M5 stick C", x=3, fgcolor=0xFFFFFF, bgcolor=0x0000FF)
label0 = M5TextBox(16, 31, "nakkyi", lcd.FONT_Default, 0xFFFFFF, rotate=0)
circle0 = M5Circle(22, 78, 10, 0xFFFFFF, 0xFFFFFF)
circle1 = M5Circle(55, 78, 10, 0xFFFFFF, 0xFFFFFF)
triangle0 = M5Triangle(40, 136, 21, 118, 60, 118, 0xf90404, 0xFFFFFF)

pin0 = machine.Pin(0, mode=machine.Pin.OUT, pull=machine.Pin.PULL_UP)
while True:
  pin0.on()
  wait(0.5)
  pin0.off()
  wait(0.5)
  wait_ms(2)
  1. スイッチでエルチカ HAT
    動画↓
    ここに動画が表示されます

    上記の基板を使って、スイッチのON-OFFで、LEDを点灯させるプログラムです。
    キャプションを入力できます キャプションを入力できます
    キャプションを入力できます
    Pythonのコード
from m5ui import *
from uiflow import *
import machine

setScreenColor(0x111111)

v = None

title0 = M5Title(title="M5 stick C", x=3, fgcolor=0xFFFFFF, bgcolor=0x0000FF)
label0 = M5TextBox(16, 31, "nakkyi", lcd.FONT_Default, 0xFFFFFF, rotate=0)
circle0 = M5Circle(22, 78, 10, 0xFFFFFF, 0xFFFFFF)
circle1 = M5Circle(55, 78, 10, 0xFFFFFF, 0xFFFFFF)
triangle0 = M5Triangle(40, 136, 21, 118, 60, 118, 0xf90404, 0xFFFFFF)

pin0 = machine.Pin(0, mode=machine.Pin.OUT, pull=machine.Pin.PULL_UP)
pin1 = machine.Pin(36, mode=machine.Pin.IN, pull=machine.Pin.PULL_UP)
while True:
  v = pin1.value()
  if v == 1:
    pin0.on()
  else:
    pin0.off()
  wait_ms(2)
  1. 3個のLED エルチカ HAT
    動画↓
    ここに動画が表示されます

    3個のLEDを取り付けたHATを作りました。プログラムはUIflowの通りです。
    でも、両端の2個しか点滅しません。いろいろ調べて、GPIO36が入力専用になっている為出力に使えない事が分かりました。そこで、下部のグローブ端子のGPIO33を使うことにしました。
    キャプションを入力できます
    キャプションを入力できます
    キャプションを入力できます
    GPIO36が使えないにで、2個のLEDのUiFlowにしましたが、GPIO33をつかうことで、下記の3色LED エルチカHATで3個が点滅します。
    Pythonのコード
from m5ui import *
from uiflow import *
import machine
import time

setScreenColor(0x111111)

title0 = M5Title(title="M5 stick C", x=3, fgcolor=0xFFFFFF, bgcolor=0x0000FF)
label0 = M5TextBox(16, 31, "nakkyi", lcd.FONT_Default, 0xFFFFFF, rotate=0)
circle0 = M5Circle(22, 78, 10, 0xFFFFFF, 0xFFFFFF)
circle1 = M5Circle(55, 78, 10, 0xFFFFFF, 0xFFFFFF)
triangle0 = M5Triangle(40, 136, 21, 118, 60, 118, 0xf90404, 0xFFFFFF)

pin0 = machine.Pin(0, mode=machine.Pin.OUT, pull=machine.Pin.PULL_UP)
pin1 = machine.Pin(26, mode=machine.Pin.OUT, pull=machine.Pin.PULL_UP)
while True:
  pin0.on()
  wait(0.5)
  pin0.off()
  pin1.on()
  wait(0.5)
  pin1.off()
  wait_ms(2)
  1. 3色LED エルチカ HAT
    動画↓
    ここに動画が表示されます

    RGBの3色LEDを使った、変色させるHATを作りました。RGBの変化により順に色が変わります。
    キャプションを入力できます
    キャプションを入力できます
    キャプションを入力できます
    Pythonのコード
from m5ui import *
from uiflow import *
import machine
import time

setScreenColor(0x111111)

title0 = M5Title(title="M5 stick C", x=3, fgcolor=0xFFFFFF, bgcolor=0x0000FF)
label0 = M5TextBox(16, 31, "nakkyi", lcd.FONT_Default, 0xFFFFFF, rotate=0)
circle0 = M5Circle(22, 78, 10, 0xFFFFFF, 0xFFFFFF)
circle1 = M5Circle(55, 78, 10, 0xFFFFFF, 0xFFFFFF)
triangle0 = M5Triangle(40, 136, 21, 118, 60, 118, 0xf90404, 0xFFFFFF)


pin0 = machine.Pin(0, mode=machine.Pin.OUT, pull=machine.Pin.PULL_UP)
pin1 = machine.Pin(26, mode=machine.Pin.OUT, pull=machine.Pin.PULL_UP)
pin2 = machine.Pin(33, mode=machine.Pin.OUT, pull=machine.Pin.PULL_UP)
while True:
  pin0.on()
  wait(0.5)
  pin0.off()
  pin1.on()
  wait(0.5)
  pin1.off()
  pin2.on()
  wait(0.5)
  pin2.off()
  wait_ms(2)

7.おわりに
M5stick Cに付けられるHATのようなものでエルチカをしたいと思って作ってみました。UIflowを使うのが初めてなので、取り敢えず動くようなプログラムを作ってみました。更にPythonのコードも載せておきます。これからも更に勉強したいと思っています。

2
ログインしてコメントを投稿する