編集履歴一覧に戻る
shimodashのアイコン画像

shimodash が 2025年01月20日22時05分13秒 に編集

初版

タイトルの変更

+

手のひら小型サイネージの製作

タグの変更

+

SPRESENSE

+

Arduino

+

LovyanGFX

+

GC9A01

メイン画像の変更

メイン画像が設定されました

記事種類の変更

+

製作品

ライセンスの変更

+

(MIT) The MIT License

本文の変更

+

# 初めに 展示会などでよくみられる、製品の説明がスクロール表示されるデバイスを見かけます。 私も作ってみたいなと思い、Spresenseを使って作成してみました。 また、Spresenseの機能を生かして外部モジュールを追加せずに音楽再生をさせました。 # 部品表 以下の部品を使用します。 | No | 名称 | 入手先 | 備考 | |:---:|:---|:---|:---| | 1 | Spresense メインボード |SwitchScienceなど| | 2 | Spresense 拡張ボード |SwitchScienceなど| | 3 | 円形ディスプレイ 240x240 |[Aliexpress](https://ja.aliexpress.com/item/1005004482028005.html)|ドライバICがGC9A01のもの| | 4 | タクトSW |秋月電子など| | 5 | ピンヘッダ |秋月電子など| | 6 | ICソケット |秋月電子など| | 7 | マイクロSDカード |家電量販店など| | 8 | 自作基板 |JLCPCB| # 回路図 円形ディスプレイおよびタクトSWと拡張ボードの接続表は以下となります。 タクトSWの片側はGNDと接続し、SPRESENSE側はpull-upしておき 押下されたときにGNDになるようにします。 | 拡張ボード | 円形ディスプレイ| |:---:|:---|:---| | 3.3V | VCC | | GND | GND | | D13 | SCL | | D11 | SDA | | D09 | DC | | D08 | CS | | D07 | RST | | 拡張ボード | タクトSW| |:---:|:---|:---| | D04 | Blue | | D03 | Green | | D02 | Red | # 自作基板について オンラインの基板作成のサイト[EasyEDA](https://easyeda.com/)というサービスを使って基板を作りました。 基板の配線のレイアウトです。 ![キャプションを入力できます](https://camo.elchika.com/70b2ea7b2bee9f8af4683222014f5d3606908668/687474703a2f2f73746f726167652e676f6f676c65617069732e636f6d2f656c6368696b612f76312f757365722f35363063333631352d663463342d346431352d616131342d6533373663653463633839332f30383664316661362d313033322d343636652d393732352d303761636334663265373361/) # スケッチ SPRESENSEはArduino SDK 3.3.1 LovyanGFXライブラリは 1.2.0 を使用しています。 スケッチは https://github.com/shimodash/SPRESENSE/tree/master/LongTextScroll_circledisplay_bgm に登録しています。 Lovyanさんの、LongTextScrollのサンプルをベースに テキストの参照先と画像の参照先をSDカードのファイルにするように 変更しました。 音楽再生は、SpresenseのAudioのplayサンプルをベースにしています。 苦労した点は、 音楽再生スケッチをマージした時に、、、 **Buffer is not allocated** というエラーがでましたので、 > theAudio->setPlayerMode(AS_SETPLAYER_OUTPUTDEVICE_SPHP, AS_SP_DRV_MODE_LINEOUT,**65536,0**); と修正して対応しました。 # 外装について 基板をカバーする板は、tinkercadで作成しSTLデータを以下に登録しています。 タクトSWと円形ディスプレイ側のカバー https://github.com/shimodash/SPRESENSE/blob/master/LongTextScroll_circledisplay_bgm/spresense-ext-stl-2mm-v1.stl 底面のSPRESENSE拡張ボードのカバー https://github.com/shimodash/SPRESENSE/blob/master/LongTextScroll_circledisplay_bgm/spresense-ext-stl-botom-base-v1.stl # 動作画像 SDカードに - 各画像ファイル r.png g.png b.png - スクロールテキストデータ r.txt g.txt b.txt - 音楽データ Sound.mp3 を直下に格納します。 色で塗りつぶした、画像ファイルと ボタンが押されたことを示すテキストを流すデモ画像は 以下になります。 @[youtube](https://youtu.be/yRriXmJo3pU) # まとめ SPRESENSEのAudio機能を使って、Arduinoサイズの小型のサイネージの 製作ができました。また円形ディスプレイを使って少し違ったデザイン の表示ができたと思います。 今後は、SPRESENSEにはGPSの機能もあるので、それらを使って サイネージの位置に応じた、表示などが応用ができたら面白いと思います。