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

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
ログインしてコメントを投稿する