概要
SPRESENSE+拡張ボードのPWM機能をArduinoで動かすまでの環境構築とプログラミングを行った。
背景と目的
事情により、SPRESENSEのPWM機能でモータを動かす必要が出た。そのため、一連の環境構築とプログラミングを行い動作確認する。
詳細
0. 環境
1. USBシリアル変換ICのドライバーをインストール
スタートガイドに従い、まずはSPRESENSEに載っているUSBシリアル変換ICのドライバーをインストール。
CP210x USB to serial driver (v11.1.0) for Windows 10/11
ダウンロードしたzipファイルを解凍し、デバイスドライバーで当該デバイスのドライバーを更新の際にフォルダを選択。
これで、TeraTermでシリアルポートが見えるようになった。
2. Arduino IDEでボードを追加
Arduino IDEの設定を開き、追加のボードマネージャーのURL欄に
を追加。
ツール > ボード > ボードマネージャーで、SPRESENSEを検索してインストール。
3. ブートローダーの書き込み
スタートガイドでは、ブートローダーの書き込みが必要だが訳あって書き込み済みデバイスが手元にあるので手順は省略。
4. プログラミング
とりあえず、スタートガイドにあるSPRESENSEメインボード上のLED4つを順に光らせるプログラムを書き込み。
https://youtube.com/shorts/3uglngMeA7k?feature=share
5. PWMを使う
拡張ボード上のPWM機能を使うため、以下のコードを作成。拡張ボードのD09ピンを使用し、デューティは50%。
int ledPin = 9; // LEDはピン9に接続 void setup() { analogWrite(ledPin, 127); } void loop() { }
オシロスコープで波形を確認。3.3V、50Hz、デューティ50%の矩形波が出力されていることを確認。これで、とりあえず、PWMが使える。
参考
- Spresense Arduino スタートガイド
- https://developer.sony.com/spresense/development-guides/images/overview_hardware_mainboard_signal.jpg
まとめと今後の課題
SPRESENSE+拡張ボードで、ひとまずPWM機能を使える状態になった。目的のアプリケーション作成を進める。