[電子工作]GS-0001M:4人打ち麻雀ゲーム機(点数計算機能搭載)ESP32 2.8型LCDタッチパネルボードIoT(WiFiやBluetooth)の学習やソフト開発も可能価格:4000円(2023'3/25 半導体不足、円安のため在庫なくなり次第、価格見直し予定。) 在庫品はメルカリで「GS-0001M」で検索購入下さい。受注生産(料金振込後、製作するため多少納期が必要です)で良ければ、 hge00744@nifty.ne.jp にメール下さい。折り返し、納期、金額(割引要相談)、振込先を回答致します。 保証内容はこちら。
特徴本格4人打ち麻雀 銀河☆麻雀をGS-0001に移植・本格的4人打ち麻雀です。・イカサマ無しの思考ルーチンを持つコンピュータと対戦します。(強い/ふつう/弱いの3段階)・一般的な役はほぼ網羅しています。・チー及びカンに複数の候補がある場合、牌選択可能。・ノーテンでのリーチや上がりは、チェックして禁止。・フリテン、役無しによるチョンボあり。・点数計算機能搭載。(刻子/順子の簡単入力機能あり)・2.8型、240x320画素、液晶パネル搭載。・単3乾電池4個で動作可能。(電池は付属しません)本体の基本機能・ESP32、4MBフラッシュメモリ、USBシリアル変換LSI搭載。・無線LAN、Bluetooth、SPI、PWM、DACなどの機能を評価可能。・アナログジョイスティックと4つのキー(1つはリセット専用)を搭載。・2.8型、感圧式タッチパネル付き、240x320画素、液晶パネル搭載。・SDカード(32GB以下)スロット搭載。・圧電スピーカを1個搭載。可変抵抗により音量調整可能。・鉛フリー半田使用注意.液晶パネルには保護シートが貼られていますので、購入後、剥がして下さい。 注意.基板形状、搭載部品は、出荷時期によって変更される場合があります。 但し、ソフト互換性は確保し、基本仕様は変更しません。 ーーーーーーーーーー 1.起動画面・ゲームスタート : ゲーム開始 ・設定 : 各種設定 ・点数計算 : 点数計算
2.ゲーム開始2.1 相手の強さ ・強い : 私が作成した思考ルーチンの中で特に強かった3つを選択。 27000〜30000点の実力を持ち、流局は少なく積極的に上がります。 正直、トップになるのは難しい。 ・ふつう : そこそこ強かった思考ルーチン3つを選択。 25000〜27000点の実力を持ちます。 ・弱い : リーチをせず、ポンやチーも少ないです。 20000〜25000点の実力で、流局は多いです。 ダマで待っているので、高い点で上がることがあります。
2.2 席ぎめ 親の順番を決めるだけなので、1回、牌を引くだけです。
2.3 ゲーム ・左右キー : 牌の選択 ・上下キー : 右下の実行内容を選択(リーチ、ポン、チー、カン、ツモ、ロン) ・右ボタン : 右下の内容を実行 ・左ボタン : リーチの取り消し(ノーテンリーチは、牌を捨てた後に自動的にキャンセル)
チーに複数の候補がある場合は、牌に赤枠が表示されるので左右キーで選んで右ボタンで完了。 ノーテンでツモ、ロンはできません。フリテンや役無しで上がることはできますが、チョンボになります。
2.4 あがり ・右ボタン又は左ボタンで点数計算の画面に切り替わります。 ・再度、右ボタン又は左ボタンを押すと次の対戦が始まります。
3.設定・オープンモード : 対戦相手のコンピュータの牌が見えます ・食い断 : ポンやチーをしていてもタンヤオの役を認めるか? ・十三不塔 : 十三不塔の役を認めるか? ・裏ドラ : 裏ドラを認めるか? ・カン裏ドラ : カンで増えたドラの裏ドラを認めるか? ・2飜縛り : 点棒5本以上で2飜以上でないと上がれないようにするか? ・テンパイ連荘 : テンパイ連荘か、あがり連荘か? ・南場ノーテン連荘 : 南場をノーテン連荘か、テンパイ/あがり連荘か?
4.点数計算・左右キー : カーソル/赤枠の移動 ・上下キー : 牌の種類の選択、モードの選択 ・右ボタン : 1回目はカーソル位置の牌の刻子、2回目は順子を入力 ・左ボタン : 点数の詳細表示 その後、右ボタンでメインメニュー、左ボタンで牌や設定画面に戻る
左上のマスにあがり牌を設定すること。途中に隙間ができてもOK。 アンカンは上から2段目の大きなマスに設定。 ポン、チー、ミンカンは「なき」の下のマスに設定。
5.仕様
6.ソフト開発環境(1)Arduino IDEのインストール まず、Arduino IDEをインストールしてください。 その後、ファイルー環境設定ー追加のボードマネージャのURL に https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json を追加し、ツールーボードのボードマネージャで「esp32」を検索し、インストールします。 (注意.私のサンプルを実行する場合、バージョン1.0.6を選んで下さい。) 詳細は、Arduino IDEのESP32開発環境のInstallation instructions using Arduino IDE Boards Manager を参考にして下さい。
(2)ライブラリの準備 ライブラリとして、次のものを準備しています。 ・LCDパネルの表示ライブラリ Adafruit_ILI9341:Adafruit社の単純描画ライブラリを改変。(フレームバッファ無し。描画しているのが見える。) ILI9341_game:フレーム単位表示切り替えライブラリ(フレームバッファあり。アニメーションできる。) ・グラフィックライブラリ Adafruit_GFX_Library:Adafruit社のライブラリ ・タッチパネルライブラリ XPT2046_Touchscreen:タッチパネルのライブラリ ・BLEライブラリ ESP32_BLE_Arduino:Bluetoothキーボードを実現するためのライブラリ 次のファイルをダウンロードし、 Windowsの場合、「PC\ドキュメント\Arduino\libraries\」の下 Linuxの場合、「~/Arduino/libraries/」の下 にコピーする。 (3)GS0001ボードへのプログラム書き込み方法 (1)でインストールしたArduino IDEを起動し、ESP32用のプログラムを開きます。 ツールを、 ボード:NodeMCU-32S(他のものでもOKですが、設定が簡単なので) UploadSpeed:921600 FlashFrequency:80MHz シリアルポート:GS0001が繋がっているポートを選択(分からない時は抜き差しして確認) 書き込み装置:USBtinyISP(選べない場合は、esptool) に設定します。 GS0001ボードのUSRボタンを押したまま、RSTボタンを押して離し、最後にUSRボタンを離します。 これで、ESP32はライト状態になります。 Arduino IDEの→ボタンを押すとコンパイルされ、プログラムの書き込みが開始されます。 終了したら、今度はRSTボタンだけを押して離すか、電源を入れ直すと、プログラムが起動します。
麻雀ソフトのソースコードは次の通り。GS0001ボードに書き込むことも可能。 Ver.1.10 2023'4/4 ・カンに複数の候補があった場合に選択できるようにしました。 ・ポン又はチーを行った後、カンを行えるようにしました。
7.トラブルシューティング
「GS-0001:ESP32 2.8型LCDタッチパネルボード」はこちら「ESP32の使い方」はこちら。 |