差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン 前のリビジョン
次のリビジョン
前のリビジョン
gimmickkouza:electronic_basic:6:2_dfplayer_uart [2024/06/17 19:21] – ★全部修正済み lutamestagimmickkouza:electronic_basic:6:2_dfplayer_uart [2024/06/21 18:34] (現在) lutamesta
行 2: 行 2:
 「ライブラリ」を使いこなせば、「シリアル通信」で部品とArduino間でデータのやり取りを行う、高機能な電子部品を動かすことができるようになります。 「ライブラリ」を使いこなせば、「シリアル通信」で部品とArduino間でデータのやり取りを行う、高機能な電子部品を動かすことができるようになります。
 本項より順に、「UART」・「I2C」・「SPI」の3種類のシリアル通信について説明します。 本項より順に、「UART」・「I2C」・「SPI」の3種類のシリアル通信について説明します。
 +  
 ===== 本項で使用する電子部品 ===== ===== 本項で使用する電子部品 =====
 ==== DFPlayerモジュール ==== ==== DFPlayerモジュール ====
行 405: 行 405:
 サンプルコード6-2-1をR3等のArduinoで使えないのは、ずばりこれが原因です。 サンプルコード6-2-1をR3等のArduinoで使えないのは、ずばりこれが原因です。
 (逆にハードウェアシリアルを4つ搭載したArduino Mega 2560なんてのもあります) (逆にハードウェアシリアルを4つ搭載したArduino Mega 2560なんてのもあります)
 +  
 +こちらのページも参考に!:[[gimmickkouza:electronic_basic:7:3-r3-r4|]]
      
 で、このようなハードウェアシリアルの数以上にUARTを繋ぎたいシーンで役に立つのが「ソフトウェアシリアル(Software Serial)」です。 で、このようなハードウェアシリアルの数以上にUARTを繋ぎたいシーンで役に立つのが「ソフトウェアシリアル(Software Serial)」です。
 **「ソフトウェアシリアル」は、ハードウェアシリアルの機能をプログラムで"模倣"することで、機能的には同じように使えるようにしたもの**です。 **「ソフトウェアシリアル」は、ハードウェアシリアルの機能をプログラムで"模倣"することで、機能的には同じように使えるようにしたもの**です。
 +  
 +<panel type="info" title="まつはちさんからのアドバイス">ソフトウェアシリアル、複数使えるしピンの制限もないしめっちゃ便利じゃん!と思いそうですが、なんとハードウェアシリアルよりも通信速度が遅いのです。
 +最大115200 bps。ソフトウェア内での処理が重いと9600でもキツい…。</panel>
 +/*<alert type="danger">ソフトウェアシリアル、複数使えるしピンの制限もないしめっちゃ便利じゃん!と思いそうですが、なんとハードウェアシリアルよりも通信速度が遅いのです。最大115200 bps。ソフトウェア内での処理が重いと9600でもキツい…。</alert>*/
      
 ==== 配線図 ==== ==== 配線図 ====
行 492: 行 498:
          
 ===== 6-2-3_DFPlayer_SoundPlayer_for_fursuit ===== ===== 6-2-3_DFPlayer_SoundPlayer_for_fursuit =====
 +{{youtube>XUJsuB6To_c?large}}
 +  
 仮にも"きぐるみギミック"制作講座を標榜しているので、きぐるみのギミックとして実際に役立ちそうな、或いはそのヒントになりそうな作例もお届けしていこうかなと思います。 仮にも"きぐるみギミック"制作講座を標榜しているので、きぐるみのギミックとして実際に役立ちそうな、或いはそのヒントになりそうな作例もお届けしていこうかなと思います。
  
 とりあえず、DFPlayerで音を鳴らせるようになったので、タクトスイッチと組み合わせて好きなタイミングで任意のサウンドを鳴らせる、簡易サウンドプレイヤーを作ってみました。 とりあえず、DFPlayerで音を鳴らせるようになったので、タクトスイッチと組み合わせて好きなタイミングで任意のサウンドを鳴らせる、簡易サウンドプレイヤーを作ってみました。
 <text background="success"> なおこのコーナーはオマケ的な存在ですので飛ばしてもらってもOKです**(でもたのしいよ…)** </text> <text background="success"> なおこのコーナーはオマケ的な存在ですので飛ばしてもらってもOKです**(でもたのしいよ…)** </text>
 +