工作と競馬2

電子工作、プログラミング、木工といった工作の記録記事、競馬に関する考察記事を掲載するブログ

SPRESENSE+拡張ボードのPWM機能をArduinoで動かす

概要

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欄に

https://github.com/sonydevworld/spresense-arduino-compatible/releases/download/generic/package_spresense_index.json

を追加。

ツール > ボード > ボードマネージャーで、SPRESENSEを検索してインストール。


3. ブートローダーの書き込み

スタートガイドでは、ブートローダーの書き込みが必要だが訳あって書き込み済みデバイスが手元にあるので手順は省略。


4. プログラミング

とりあえず、スタートガイドにあるSPRESENSEメインボード上のLED4つを順に光らせるプログラムを書き込み。

https://youtube.com/shorts/3uglngMeA7k?feature=share


www.youtube.com


5. PWMを使う

拡張ボード上のPWM機能を使うため、以下のコードを作成。拡張ボードのD09ピンを使用し、デューティは50%。

int ledPin = 9;      // LEDはピン9に接続

void setup() {
    analogWrite(ledPin, 127);
}

void loop() {

}

オシロスコープで波形を確認。3.3V、50Hz、デューティ50%の矩形波が出力されていることを確認。これで、とりあえず、PWMが使える。


参考



まとめと今後の課題

SPRESENSE+拡張ボードで、ひとまずPWM機能を使える状態になった。目的のアプリケーション作成を進める。