Rasberry Pi PicoとTWELITE DIPを単三乾電池2本で駆動させてみました。
単三乾電池2本はPicoのVSYSに接続しています。Picoは内部にSMPS(Switched Mode Power Supply)を備えていて、VSYSに給電された電圧を3.3Vに昇圧することでGPIOを3.3Vに維持していまるそうです。TWELITEのGPIOはPicoのGPIOに接続されるため、電源電圧を揃えておく必要があります。その為、Picoが内部で作り出し3V3端子を通して外部にも給電することができる3.3VをTWELITE DIPのVCCに給電することで両チップ間の電源電圧を揃えています。


PicoにはMicroPythonをインストールしてあります。TWELITE DIPにはApp_Uartを書き込んで透過モードでUARTデータ転送を実行するようにしてあります。
なお、Picoで実行したMicroPythonコードは以下で、1秒ごとにPicoオンボードのLEDの点灯と消灯を繰り返すとともにその都度文字列として”Hello World”をUARTに書き込んでいます。
import machine
import utime
led = machine.Pin(25, machine.Pin.OUT)
uart = machine.UART(1,115200)
while True:
led.toggle()
utime.sleep(1)
uart.write(“Hello World”)
Picoは1秒間隔でTWELITEにUARTでデータを送り込みます。TWELITEのUART設定は以下の設定となっています。
min_bytes=0 :この文字数がバッファに溜ったら送信する。つまり即時送信。
dly=100[ms] :送信条件に達していなくてもこの時間が経過したら強制送信する。
つまり、min_bytes=0なのでバッファにデータ書き込まれた即時送信します。
MONOSTICK側で受信したデータは以下になります
:030048656C6C6F20576F726C64E1
ここで03は送信したTWELITEのDevice IDです。続く00は送信側で必要に応じてプリセットする値で、特に何も設定していないので00が入っています。それ以降が”Hello World”の16進数データをアスキー文字列化したデータになります。最後のE1はチェックサムです。このデータ部分をアスキーコード化して表示すると以下になりました。
Hello World
以上より、電池駆動のPicoがUARTに出力した文字列をTWELITEが送信し、MONOSTICKが受信することが確認できました。
コメント