初心者がESP32-DevKitCを使ってArduino IDEでLチカしてみた

#はじめに

とりあえずLEDを点灯させてみましょう！
僕も詳しいことはよくわかりませんでしたがとりあえずLEDをつけてみたいと、、、
難しいことは点灯させてから考えましょう。

#準備するもの

**・[ESP32-DevKitC](https://akizukidenshi.com/catalog/g/gM-11819/)**
**・LED**
**・抵抗**
**・ブレッドボード**
**・USBケーブル(Micro USB Type-B)**
**・WindowsPC(Windows10)**

#準備する環境

**・[ArduinoIDE](https://www.arduino.cc/en/software)**
ArduinoIDEをインストールしましょう。
現在(2020/11/01)の最新はバージョン1.8.13です。
ArduinoIDEのWEBページ[(https://www.arduino.cc/en/software)](https://www.arduino.cc/en/software)を開いて
画面右の赤枠をクリックします。
![ard1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/801032/280ab8d6-301b-c49c-cb24-dc164886e4d7.png)
赤枠の「JUST DOWNLOAD」をクリックするとダウンロードできます。
右側の「CONTRIBUTE & DOWNLOAD」は寄付なので寄付したい方はそちらをどうぞ。
![ard1 (2).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/801032/b8765024-ab0d-60bb-72f4-d49bd732494d.png)
ダウンロードしたインストーラ を起動してインストールしてください。
途中に出てくるダイアログは全部許可で大丈夫です。

**・[CP210x USB - UART Bridge VCP Driver](https://jp.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers)**
次にCP2102をインストールしましょう。
CP2102はUSB-UART変換ICのドライバらしいです。
これをインストールしておかないとArduinoIDEでポート設定ができないみたいです。
赤枠からダウンロードしてzipファイルを展開しましょう。
![CP210.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/801032/375016b9-1c3a-43f4-e52b-75a8271bcf28.png)

**・[Arduino core for the ESP32](https://github.com/espressif/arduino-esp32/blob/master/docs/arduino-ide/boards_manager.md)**
最後にEPS32のプログラムを生成できるように、ボード制御プログラムを追加しましょう。
サポートするボードを拡張させてあげる必要があるようです。
赤枠のURLをコピーしましょう。
![URL.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/801032/ae32ece4-d5e9-fea4-5551-0bf99a36a142.png)
先ほどインストールしたArduinoIDEを起動して、ファイル ➔ 環境設定
![ard3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/801032/101e11d8-5f8c-c7bc-549a-85261e7522e3.png)
「追加のボードマネージャのURL」に先ほどコピーしたURLを張り付けてあげましょう。
![ard4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/801032/d053aaca-9e24-e342-e62a-3cfe03294483.png)
次に、ツール ➔ ボード ➔ ボードマネージャ
![ard5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/801032/8f67935c-2776-9a6e-a058-1ecd0ba58dde.png)
「esp32」と検索して出てきたものをインストールしましょう。
現在(2020/11/01)の最新はバージョン1.0.4です。
![ard6.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/801032/278dfc33-8ff3-a1f1-e43d-35c4b9da6b26.png)
最後に、ボードを選択しましょう。
どれが正しいのかよくわからないのですが、それっぽい「VintLabs ESP32 Devkit」を選択。
(色々試してみましたが、どれでもLチカできました)
![ard7.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/801032/abd92811-d24d-dcbb-6eee-394d96536a32.png)
ようやく環境が整いましたね！
いよいよ、LEDを点灯させましょう！！

#ボード接続
**・ブレッドボード**
ブレッドボードはa～e、f～jの各5マスずつ内部で繋がっています。(写真黄ライン)
そのラインが30列×2あります。
＋－の列は縦一列すべて繋がっています。(写真赤青ライン)
![CFB68B9E-4EBC-4A0A-97B4-D73B56D3E9B3.jpeg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/801032/747f07c9-9fd2-d819-70dd-06b56c52c4d4.jpeg)

**・ESP32接続**
ESP32をブレッドボードに刺してUSBケーブルでPCに接続してみましょう。
赤いランプが点灯すればとりあえず接続完了です！
![A1FBB453-E2E4-4CE4-AC90-2941F46C8DD3.jpeg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/801032/3735f7e3-1059-4463-f5d8-4dbf03aee9a6.jpeg)


#ArduinoIDEでESP32にコード書き込み
**・LED点灯コード**
簡単に説明すると、
1つ目のpinMode関数で4番のピンから出力(OUTPUT)を設定
2つ目のdigitalWrite関数で4番のピンに5ボルト(HIGH)の値を設定

```
void setup() {
  pinMode(4, OUTPUT);
}

void loop() {
  digitalWrite(4, HIGH);
}
```

**・ArduinoIDE書き込み**
上記のコードをArduinoに張り付けて赤丸をクリックして
マイコンボードに書き込みましょう。
「ボードへの書き込みが完了しました。」と表示されます。
![ard8.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/801032/810d279d-c2f1-6f47-12f8-7529eb47e629.png)

#LED点灯
**・回路**
いよいよLED点灯ですね！
ここでLEDと抵抗の登場です。
LEDは足が長いほうがプラスなので4番のピンに繋ぎます。
抵抗は向きありません、GNDピンに繋ぎます。
そしてLEDのマイナス側と抵抗を繋げましょう。
![7C8A5C4C-D66B-462![6CDA5ACB-9C6F-4ABD-B19A-9E4A921A3355.jpeg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/801032/abc3556f-c61e-25ef-6968-67a292198d7c.jpeg)
E-933A-5AFB069E658F.jpeg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/801032/d328e785-7e37-885a-d350-3fa022cec789.jpeg)

![CBDAE633-E1F6-457B-940F-7439802FE91A.jpeg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/801032/28a7dac6-ef10-393e-7264-c6a4d325dbd9.jpeg)

光ったー！！！！！
コードを書き換えると点滅させたりもできるのでぜひ調べてみてください。