2017年3月18日土曜日

ESP32開発ボードをMacで


シリコンラボのUSBシリアルドライバが必要です。ああこのUSBシリアルのドライバがまともに作られていますように(祈

ESP32開発ボードを繋いでからターミナルで ls /dev/tty.SLAB* とタイプして /dev/tty.SLAB_USBtoUART と出てくればOKです。出なかったら再起動してみましょう。macOS Sierraは出来が悪くて困ったもんです。

■まずBASICで遊ぶ■

IO12をプルアップしてリセットするとBASICモードになります。ESP32開発ボードのようにブレッドボードに差しにくくかつ最初からピンヘッダーがついているボードでちょっとプルアップする場合、「抵抗入りジャンパーワイヤー」を作っておくと便利です。

ともかくIO12と3v3を数KΩの抵抗でつないでから、USBを接続します。ターミナル.appで screen /dev/tty.SLAB_USBtoUART 115200 とターミナルコマンドを起動します。滝のようにbootメッセージが出てビビりますが、ここでenterキーを押します。すると
Falling back to built-in command interpreter.
OK
>
>

となります。 print 10+10<enter>で

OK
>
>print 10+10
20

こうです。おお懐かしい。

昔、TRS-80だったかPC-8001ではfor nextループ1000回で1-2秒だったと思います。今時の240Mhz CPUはどんなもんかと思ったら

>list
10 FOR I=1 TO 100000
20 NEXT I
OK
>run
OK
>

100,000まで2秒でした。クロック比通りですね。deleteキー効かないし、細かい関数とかがどういう実装になっているか知らないし、まぁ、あとでまたゆっくり遊ぶことにします。うーむ、BASICは私が調べ物なしに書ける唯一の言語かもしれないorz

screenから抜けるにはctrl+Aを押してからKyです。プルアップ抵抗の回路は外しておきましょう。

■ESP-IDF■

せっかくのdual core、ArduinoじゃもったいないのでここはESP-IDFでいきます。ターミナルでの作業です。もうここにある通り。

なお、Step 0のInstall pyserialのところ sudo pip install pyserial で黄色い字でエラーメッセージっぽいのが出た場合には sudo -H pip install pyserialでどぞ。

Step 1でパスを追加していますが、ついでにStep 4に出てくる export IDF_PATH=~/esp/esp-idf も追加しておきます。

Step 1のあとに書いてあるAlternative Step 1は飛ばして、Step 2まで。Step 3ではテンプレートをmyappって名前のディレクトリ作ってダウンロードしていますが、ここで作られるテンプレートはwifi接続するやつなのでwifiの設定などがめんどくさいので、既成のLチカで試します。cd ~/esp/esp-idf/examples/get-started/blinkでディレクトリを移動します。ここのmain/blink.cがソースです。

Step 4のmakeconfigではSerial flasher config > Default serial portにさっきのシリアルポート名 /dev/tty.SLAB_USBtoUART を設定し、ついでDefault baud rateを912600にします。blink.cを読むと、make manuconfigでGPIOポートを指定できる、と書いてあるので、Example Configuration > Blink GPIO numberを見てみると5になっています。

ので、GPIO5 ▶ LEDのアノード(長い方)、LEDのカソード(短い方)▶ 抵抗(200-2kΩぐらい) ▶ GNDと接続します。

お待たせしました。make flashでbuild & flash & runです。

ゆっくりLEDが点灯すれば出来上がりです。コマンド一発でbuild & flashできるのはいいですね。

さて、何を作ろうか。

0 件のコメント:

コメントを投稿