\ Amazon prime day 7/16(火)・7/17(水) /

Arduino 入門 番外編 03 【デジタル出力 とは】【 デジタル入力 とは】

arduino-extra-edition-03 Arduino番外編
記事に広告(アフィリエイト広告)が含まれています。
スポンサーリンク

Arduino 入門
番外編 03
【デジタル出力 とは】【 デジタル入力 とは】

こんにちはomoroyaです。

今回は、Arduino 入門 番外編 03 デジタル出力 とは デジタル入力 とはです。

arduino 入門 番外編はarduinoの基本的なことを書いていく方向性にしたいと考えています。

本日は、arduinoのデジタル出力とデジタル入力についてです。

その前に、arduinoの外観とピン配置を知っていたほうが良いので番外編 02も併せてお読みください。

arduino自身のことを少しづつ理解して行きましょう。

 

いやいや、arduinoを早速始めたいんだ!というかたは下記の入門編からお読みください。

 

Arduino入門編の解説にて使用しているArduinoは互換品です。

互換品とは言え、Arduinoはオープンソースであり複製して販売するのもライセンス的に問題なし。

そのため互換品の品質も悪くなく、それでいて値段は安いです。

正規品本体の値段程度で豊富な部品が多数ついています。

正規品(Arduino UNO R3)の本体単品がほしい方はこちらとなります。

 

Arduino入門編2では「Arduino UNO R4 Minima」「Arduino UNO R4 WIFI」にて遊ぶため今のところは正規品を使用。(まだ互換品が・・・ほぼない)

 

 

スポンサーリンク

Arduino デジタル出力 デジタル入力 ピン

番外編02のおさらいです。

Arduino UNO R3の外観図を下記に示します。

外観図右下のデジタル0~デジタル13がデジタル出力、デジタル入力のピンになります。

arduino_uno_R3-appearance

デジタルというのは、通常「1」と「0」の2値のことを言います。

Arduinoでは「1」に相当するものが、電圧の高い「5V」であり、「High」と表現します。

また、「0」に相当するものが、電圧の低い「0V」であり、「Low」と表現します。

 

モードの設定

デジタル出力とデジタル入力が同じピンに割り当てられています。

同じピンなのに、出力、入力の区別はどうするの?と思いますよね。

そこで登場するのが次のコマンド。

pinMode(ピン番号,モード)
ピン番号:使用するピン番号を指定
モード:OUTPUTを指定すれば出力、INPUTと指定すれば入力

例 デジタル13(ピン番号13)を出力ピンとして指定する。

pinMode( 13, OUTPUT );

 

デジタル出力

デジタル出力は、外観図のデジタル0~13までの端子が対応しています。

指定したピンからは「5V」、「0V」を出力することができます。

各端子に動作させたい部品を接続することで、「5V」、「0V」を与えて制御することになります。

例えば、LEDを点灯、消灯、モータの回転、停止などの制御が可能です。

使用する制御コマンドは以下です。

digitalWrite(ピン番号,値)
ピン番号:使用するピン番号を指定
値:HIGHまたはLOWを指定。
※HIGHは5V、LOWは0Vを出力を意味する。

例 デジタル13(ピン番号13)に5Vを出力する。

digitalWrite( 13, HIGH );

 

入門のLesson編にてdigitalWrite()を使ったダイオードの点滅を制御する実践の解説をしています。

 

デジタル入力

デジタル入力もデジタル出力と同様には、外観図のデジタル0~13までの端子が対応しています。

指定したピン番号にかかった電圧の状態が「5V」なのか「0V」なのかを判断します。

それによって、「HIGH」、「LOW」を戻り値として返します。

※実際には5Vよりも低い電圧、0Vよりも高い電圧でも「HIGH」、「LOW」の判断はします。

なぜなら、判定するためのレベルをArduino自身が持っており、それより高ければ「HIGH」、低ければ「LOW」と判断するためです。

一般的に、「閾値(しきいち)」や「スレッショルド」などど呼ばれるものです。

Arduinoの場合は、HIGHを判定する閾値は約2.7V、LOWを判断する閾値は約2.1Vに設定されています。

そのため、2.7Vより高ければ、「HGIH」、2.1Vよりも低ければ「LOW」となります。

2.7Vと2.1Vの間は何?っていうことになりますが、閾値を設定する場合は不安定な動作を避けるためにヒステリシスを持たせておきます。

ヒステリシスについては、また別の機会に説明します。

想定の使用例としては、スイッチがオン、オフのどちらの状態にあるのかを知るために利用したりします。

ようは外部の機器の状態を知りたい!

なおかつその判定は高いか低いかの2値で十分!

というときに取利用するということです。

使用する制御コマンドは以下です。

digitalRead(ピン番号)
ピン番号:値を読みたいピン番号を指定
戻り値:HIGHまたはLOW

例 デジタル13(ピン番号13)に5Vを出力する。
※読みだすコマンドのため、読みだした値を格納する変数が必要です。
ここではvalとしています。
intは整数型を定義していて、使用できる値の範囲は-32768から32767です。

int val;
val = digitalRead(13);

記事を書いていて気づきましたが、入門 Lesson編にてdigitalReadを利用した実践解説がまだでした。

いずれアップしますので、少々お待ちください・・・。

アップしましたら更新いたします。

digitalReadを利用した実践解説をアップいたしましたのでお知らせします。

 

次回の番外編 04は【アナログ出力】の解説を予定しています。

Arduino 入門 番外編 04 【アナログ出力 とは】
今回は、「Arduino 入門 番外編 04 アナログ出力 とは」です。arduino 入門 番外編はarduinoの基本的なことを書いていく方向性にする予定です。今回は、arduinoのアナログ出力について解説していきます。…

 

最後に

疑問点、質問などありましたら気軽にコメントください。

この電子部品の解説をしてほしい!などなどなんでもOKです。

リンク切れ、間違いなどあればコメントいただけると助かります。

 

Arduino入門編、番外編、お役立ち情報などなどサイトマップで記事一覧をぜひご確認ください。

 

Arduino入門編Arduino入門編2で使用しているUNOはAmazonにて購入可能です。

Arduino入門編では互換品を使用。

Arduinoはオープンソース。

複製して販売するのもライセンス的に問題なし。

 

そのため互換品の品質も悪くなく、それでいて値段は安いです。

正規品本体の値段程度で豊富な部品が多数ついています。

 

学習用、遊び用、お試し用には安価な互換品がおすすめです。

 

上記のものでも十分に多数の部品が入っていますが、最初からもっと多数の部品が入っているこちらもお勧めです。

 

Arduino入門編2では「Arduino UNO R4 Minima」「Arduino UNO R4 WIFI」にて遊ぶため今のところは正規品を使用。(まだ互換品が・・・ほぼない)

 

Amazonでお得に買う方法

Amazonでお得に購入するならAmazon MastercardAmazonギフト券がおすすめです。

時期により異なりますが、様々なキャンペーンを実施しています。

\Amazonギフト券/
Amazonギフトカード キャンペーン

Amazon Mastercard お申込み
Amazon Mastercard 申し込み 

 

いずれの場合もプライム会員である方がお得!!

\Amazon Prime 30日間の無料会員を試す/
無料会員登録 

 

 

コメント

タイトルとURLをコピーしました