注釈

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

参加する理由は?

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

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

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

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

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

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

ドットの拡大

次に、ボタンでドットのサイズを制御できる回路を作成しましょう。 ボタンを押すと、ドットはすぐに大きくなり、ボタンを離すと、ドットは徐々に小さくなります。これにより、ドットは膨らんでいる風船のように見えます。

../_images/dot_size.png

必要な部品

このプロジェクトには、以下の部品が必要です。

キット全体を購入すると非常に便利です。以下がリンクです:

名前

このキットのアイテム

リンク

Raphael Kit

337

Raphael Kit

以下のリンクから、それぞれ別々に購入することもできます。

コンポーネントの紹介

購入リンク

GPIO拡張ボード

BUY

ブレッドボード

BUY

ジャンパーワイヤー

BUY

ボタン

BUY

配線図

../_images/button_pressed.png

スケッチ

import processing.io.*;
int buttonPin = 18;

float diameter;

void setup() {
    size(200, 200);
    frameRate(64); //set frame rate
    GPIO.pinMode(buttonPin, GPIO.INPUT_PULLUP);
    diameter = width*0.5;
}

void draw() {
    if (GPIO.digitalRead(buttonPin)==GPIO.LOW) {
        if(diameter<width*0.8) {diameter=diameter+5;}
    } else {
        if(diameter>=width*0.2) {diameter--;}
    }
    background(192, 16, 18);
    ellipse(width/2, height/2,diameter, diameter);
}

どのように動作するのか?

このプロジェクトは、GPIOの出力機能を使用した前の2つのプロジェクトとは異なり、入力機能を使用しています。

GPIO.pinMode() 関数は、 buttonPin をプルアップ入力モードに設定するために使用され、これにより、デフォルトの状態でピンが自動的にハイになります。

次に GPIO.digitalRead() 関数を使用して buttonPin の値を読み取ります。値がLOWの場合、ボタンが押されていることを意味し、その時点でドットの直径を5増加させます。ボタンが放されたら、ドットの直径は1減少します。