注釈

こんにちは、SunFounderのRaspberry Pi & Arduino & ESP32愛好家コミュニティへようこそ!Facebook上でRaspberry Pi、Arduino、ESP32についてもっと深く掘り下げ、他の愛好家と交流しましょう。

参加する理由は?

  • エキスパートサポート:コミュニティやチームの助けを借りて、販売後の問題や技術的な課題を解決します。

  • 学び&共有:ヒントやチュートリアルを交換してスキルを向上させましょう。

  • 独占的なプレビュー:新製品の発表や先行プレビューに早期アクセスしましょう。

  • 特別割引:最新製品の独占割引をお楽しみください。

  • 祭りのプロモーションとギフト:ギフトや祝日のプロモーションに参加しましょう。

👉 私たちと一緒に探索し、創造する準備はできていますか?[ここ]をクリックして今すぐ参加しましょう!

2.13 リアクションゲーム

このプロジェクトでは、複数のボタン、ブザー、およびLEDを使用してリアクションゲームを作成します。審判用のボタンを押すとゲームがスタートし、ブザーもゲームが続いていることを示すために鳴り続けます。2人のプレイヤーボタンをそれぞれ素早く押します。再び審判ボタンが押されると、ゲームは終了し、ブザーが停止します。この時点で、Piper MakeのCONSOLEを見て、誰の手の速さが速いかを確認します。

必要なコンポーネント

このプロジェクトで必要な部品は以下の通りです。

一式を購入する方が便利です、リンクはこちら:

名前

このキットに含まれるアイテム

リンク

Kepler Kit

450+

Kepler Ultimate Kit

以下のリンクから個々にも購入できます。

SN

コンポーネント

数量

リンク

1

Pico Wを知る

1

購入

2

Micro USBケーブル

1

3

ブレッドボード

1

購入

4

ジャンパーワイヤー

数本

購入

5

トランジスタ

1(S8050)

購入

6

抵抗器

6(2-220Ω, 1-1KΩ, 3-10KΩ)

購入

7

Active ブザー

1

8

ボタン

3

購入

9

LED

2

購入

配線

button_race0

  • プレイヤー1(GP14)とプレイヤー2(GP12)として2つのボタンを定義し、それぞれプルアップ抵抗が接続されています。ボタンが押されると、GP14とGP12はそれぞれ低くなります。

  • それらのインジケーターはGP15とGP13に接続されており、高い出力で点灯します。

  • GP10に接続された審判用のボタンを定義します。ボタンが押されると、GP10は低くなります。

  • アクティブブザーはGP11に接続されています。GP11が高い出力の場合、ブザーが鳴ります。

コード

注釈

  • 下の画像を参照して、ドラッグ&ドロップでコードを書くことができます。

  • kepler-kit-main\piper のパスから 2.13_reaction_game.png をインポートしてください。詳細なチュートリアルは、 コードをインポート を参照してください。

button_race

  • Pico Wに接続した後、 スタート ボタンをクリックしてコードが実行されます。

  • 審判ボタンを押すと、ブザーが連続して鳴り始め(ゲームの開始を示します)。

  • この時点で、 プレイヤー ボタンを別々に素早く押し、対応するLEDが点灯します。

  • 審判 ボタンが再び押されると、ブザーが停止し、ゲームが終了します。

  • この時点でCONSOLEをクリックして、誰がそれをより多く押したかを確認します。

仕組み

button_race1

GP10は審判ボタンで、審判ボタンが押されていない場合は高く、ゲームはまだ始まっていません。 GP10が低い(審判ボタンが押された場合)、ゲームがスタートします。GP11を高く設定(ブザー)、変数を作成して初期値を設定します。

button_race2

フラグが1(ゲームスタート)の場合、次にGP14(プレイヤー1)の値を読み取ります。プレイヤー1ボタンが押された場合、[count1]という変数に押す回数を保存し、GP15のインジケーターを点灯させます。

button_race3

同様にして、GP12(プレイヤー2)の押し回数を読み取ります。

button_race4

それぞれのプレイヤー1とプレイヤー2の押し回数を印刷します。

button_race5

審判ボタンが再び押されると、ブザーが停止してゲームが終了します。