# PLUS モジュール {docsify-ignore-all} *** :memo:**[概要](#概要)**      :octocat:**[サンプルコード](#サンプルコード)**      :electric_plug:**[回路図](#回路図)**      🛒**[購入リンク](https://www.aliexpress.com/store/product/M5Stack-New-Arrival-PLUS-Module-Encoder-Module-with-MEGA328P-500mAh-Battery-ISP-IR-Transmitter-UART-GPIO/3226069_32949278724.html?spm=a2g1x.12024536.productList_5885013.pic_1)**      :clapper:**[関連動画](#関連動画)** ## 概要 **PLUS**モジュールは500mAhのバッテリ、ロータリエンコーダ、IR送信機、PORT B(GPIO)、PORT C(UART)そしてマイクジャックの為のパッドを備えています。M5Stackの下に重ねるだけで、機能を強化することが出来ます。M5Stackとの通信にはI2Cを使用します。I2Cアドレスは **0x89**です。 ## 特徴 - 500mAh バッテリー - プログラマブルロータリエンコーダ - IR送信機 - PORT B (GPIO) - PORT C (UART) ## パッケージ内容 - 1x PLUS モジュール ## 関連リンク - **[公式ビデオ](https://www.youtube.com/channel/UCozgFVglWYQXbvTmGyS739w)** - **[フォーラム](http://forum.m5stack.com/)** - **[モジュール内のMEGA328ファームウェア](https://github.com/m5stack/M5-ProductExampleCodes/tree/master/Module/PLUS/firmware_328p)** ## サンプルコード ### 1. Arduino IDE *完全なソースコードは[こちら](https://github.com/m5stack/M5-ProductExampleCodes/tree/master/Module/PLUS/Arduino)`plus_read_encoder.ino`。* ```arduino /* * ギアポテンショメータのデータを読む * 赤外線ライト */ #include #include #define IrPin 13 #define PLUS_ADDR 0x62 // declaration int32_t number = 0; uint8_t press = 0; // initialization M5.begin(true, false, false); Wire.begin(); ledcSetup(1, 38000, 10); ledcAttachPin(IrPin, 1);// IR Pin setting // read data Wire.requestFrom(PLUS_ADDR, 2); while(Wire.available()) { int8_t encode = Wire.read(); uint8_t press_n = Wire.read(); number += encode; if(press_n == 0xff) { press = 0;//encoder was pressed } else { press = 1;//encoder was releaed } } ``` ## 回路図 ## 関連動画 **PLUS デモ - ツリーメニューの操作**