ちょっとTea Time!? 秋月のRP2040マイコンボードを動かしてみる! 2023.3.1
秋月からRP2040チップをつかったマイコンボードが出ています。
雰囲気的にはRaspberry Pi PICOと同じなんだけど、どうなんだろう?
面白そうなので買ってみました。
写真でみると接続ポートはUSB-Cのようです。
PICOはmicroUSBだったのに、なぜ変えたのかな?もう世の中はUSB−Cが主流なのかな?
秋月のRP2040を使ったマイコンボードです。
700円なのでPICOより安いようです。
接続にはUSB-Cケーブルが必要なようなので、これも秋月で購入(@100円)
PICOとの違い
PICOとの違いをみてみると、こんな感じです。
一番の特徴はサイズが小さくなっているけど、IO数が増えた点でしょう。
フリーに使えるIO数が30あれば40PinのPICとほぼ同じなので、かなりのことができます。
PICO | 秋月のRP2040ボード | |
ピン数 | 40Pin | 34Pin |
I/O数 | 26 | 30 |
ADC_VREF | あり | 無し |
秋月のRP2040ボードはGNDピンが少ないですが、その分IO数が確保されています。
PICOはGND数が多いので、ピン数が多い割にはI./O数は若干少ないです。
動かしてみましょう!
PICOと同じように動かせるのかが一番の興味のある点なので、まずはRaspiに接続して調べてみました。
しかしRasPiも高くなったなあ〜。
RP2040ボードがPICOと比べて便利なのはRUNスイッチがついている点です。
PICOでは端子はでていましたが、スイッチがないので外部につける必要がありました。
このRUNスイッチはリセットスイッチみたいなものです。
BOOTスイッチを押しながらRUNスイッチを押すと、プログラムのロード待ち状態になります。
このあたりはPICOと同じです。
RasPi4Bと接続してPICOと同じように使えるかチェックです。
RUNスイッチがついているが便利です。でも、大きい指で両方押すのは厳しい〜。
プログラムのロード待ち状態が現れました。
チカチカプログラムをロード
以前にもPICOで動かしましたが、
下記の簡単なプログラムで動作確認です。
動作周期が56nsです。プログラムとしては7サイクルなので1サイクル8nsですから、
クロックは125MHzということになりますね。これもPICOと同じです。
nt main() { const uint LED_PIN = 0; gpio_init(LED_PIN); gpio_set_dir(LED_PIN, GPIO_OUT); while (true) { gpio_put(LED_PIN, 1); gpio_put(LED_PIN, 0); } } |
何が大変かというと(備忘録)
以前にPICOを動かしたのは今から約1年半前です。
流石にそれだけ時間が経つと、ほとんど忘れていました。
もう、だいぶ歳だものな〜。
で、今回備忘録もふくめて、プログラムを作成するまでの一連の作業を記録です。
1.新規のプロジェクトフォルダーを作成
cd pico
cd pico-examples
cd pico-project-generator
./pico_project.py --gui
赤枠部分を設定。OKを押して、フォルダーが作成されたらQUITで抜ける。
2.ソースコード作成(edit)
ファイルの編集は上記の場合はpico/pico-examples/led/led.c で行う。
3.ターゲットファイル作成(make)
ターゲットファイルの作成はカレントディレクトリ pico/pico-examples/led として
cd build
make
最初は時間がかかるが2度目からは短時間。
ターゲットファイル(uf2)はbuildのディレクトリの中に作成される。
uf2ファイルが作成されたらRP2040ボードに転送すればOK!
(おしまい)