ごく最近、ラズベリー財団のメンバーが新しいボードを発表しました。その主要な要素は、独自のSoCであるRP2040です。ボードは素晴らしく、何も言うことはありませんが、もちろん、いくつかの機能が欠けています。
サードパーティの開発者はこの問題に取り組んでいます。-同じシステムオンチップに基づいて、新しい機能を備えた独自のボードを作成します。それらの1つはAdafruitFeatherRP2040です。何が新しいのですか?
私たちは角で雄牛を連れて行きます
はい、すぐに技術仕様に取り掛かりましょう。そして、彼らはこのようなものです:
- 3.3Vで21の多機能GPIOピン。
- 2つのSPIポート。
- 2I2C。
- 2UART。
- 4つの12ビットADC。
- 16の制御されたPWMチャネル。
- カスタム周辺機器をサポートする8つのプログラム可能なI / O(PIO)ステートマシン。
- キャリアボードでのはんだ除去の可能性。
- 内蔵のWS2812Neopixel STEMMAQTコネクタ。
- 内蔵バッテリー充電とLiPoおよびLilonバッテリーのサポート、ホットスワップ可能なUSBTypeC。
システムオンチップに関しては、最大133 MHzのコア周波数、264 KBのSRAM、および8MBのフラッシュメモリを備えたデュアルコアARMCortex M0 +チップです。
Adafruit Feather RP2040:-それがどのように行われるか
Adafruit Featherファミリーに精通している場合は、新しいボードを一目見ただけで、Featherに共通の設計機能が見つかります。このエコシステムに属することは、FeatherWingsを含む、この開発者のあらゆるシステムと互換性があるため、ボードのもう1つの利点です。
ボードサイズは50.8x22.8mmで、51x21mmのオリジナルの「ラズベリー」よりわずかに大きいだけです。
ちなみに、ここではラズベリーよりもGPIOピンの数が少なくなっています(40ではなく21)。ピン配置はFeatherで一般的です。ボードの両面に各ピンが登録されているので、理解に問題はありません。
ピンには、Picoより1つ多い4つの12ビットADCが含まれています。詳細-2セットのl2C、2つのSPI、および2つのUART。 16ピンはPWM(パルス幅変調)、LEDおよびオーディオ出力に使用できます。
ボードには、システムの動作モードを監視するための1つの赤いLEDがあります。フラッシュメモリはRaspberryPiPicoの4倍です-2MBではなく8MBです。CircuitPythonを使用する場合 、コードとライブラリを保存するために7MBのファイルスペースを取得します。
フェザーボードには常に追加機能があり、このボードも例外ではありません。左側は、互換性のあるリチウムイオン電池とリチウムポリマー電池を接続するためのJSTコネクタです。 USB経由で接続した場合、充電電流は200mAです。
多くのプロジェクトで重要な「ホット」モードでは、バッテリーをシャットダウンせずに交換できます。で テストコードを処理している間にトムのハードウェアによって実行される、USB電源がオフになったが、ボードは、コードを実行し続けました。
もう1つの可能性は、互換性のあるコンポーネントをすばやく接続するために使用されるSTEMMAQTコネクタの存在です。これは、ボードでの作業を簡単にするための優れたオプションです。
そして、2つの追加ボタンがあります。ボードの構成または新しいソフトウェアのフラッシュに使用されるBOOTSEL。また、RESETを使用すると、論理的には、電源をオフにすることなくシステムを再起動できます。
Adafruit FeatherRP2040を使用したプログラミング
ボードはAdafruitエコシステムの一部であるため、開発者が独自のバージョンのMicroPythonであるCircuitPythonを使用してボードを操作することを提案するのは当然です。ソフトウェアを簡単にダウンロードしてフラッシュできます。
CircuitPythonには、USB HIDのサポートなど、MycroPythonよりも優れた利点があります。したがって、ボードを接続すると、ボードはUSBスティックとして表示されます。 code.pyを使用してコードを生成できます。ただし、Visual Studio Code、Thonny、Muなどのエディターを使用することをお勧めします。ライブラリは会社のWebサイトからダウンロードでき、作業が非常に簡単になるため、使用する価値があります。
テストにはVisualStudioCodeを使用しました。テスターはその助けを借りて、ボードの動作モードを監視するために内蔵LEDを制御するスクリプトを作成しました。より複雑なプロジェクトも実装できます。同じテスターが、接続されたNeopixelLEDを制御するスクリプトを作成しました。
STEMMAQTおよびI2C接続
ボードの内蔵STEMMAQTコネクタもテストされました。静電容量センサーボードMPR121をフェザーRP2040に接続しました。次に、CircuitPythonライブラリがボードにインストールされました。次に、テスターは、連絡先がいつタッチされたかを検出するコードを作成しました。すべてがすぐに問題なく機能しました。
その後、新しい段階が始まりました。I2CHD44780LCDディスプレイを16x2文字の解像度で接続します。そして、ここですでに問題が発生しています。両方のl2Cピンにプルアップ抵抗がないとディスプレイを接続できませんでした。ボードには独自の抵抗がないため、追加で取り付けるか、STEMMAQTボードを使用する必要があります。
一般的に、すべてが良好であることが判明しました。いくつかの問題がありましたが、これはすべて解決できました。ちなみに、重要な点は、ボードがCまたはMicroPythonで動作しないことです。ただし、CircuitPythonはスムーズに実行されるため、追加機能は必要ない場合があります。
ボードに接続できるものはたくさんあります。Adafruitエコシステムには、OLEDスクリーン、Wi-Fiコプロセッサー、RGB LEDマトリックス、ジョイスティック、LCDQWERTYキーボードが含まれます。
ボードは何に使用できますか?
小規模な住宅プロジェクトから、多かれ少なかれ大規模なIoTシステム、屋外デバイスなど、あらゆるものに対応します。ボードのフォームファクターは便利で、システムはキャリアボードに簡単にはんだ付けできます。
乾燥残留物中
運が良ければこのボードが販売されているのを見ることができたら、必ず購入してください。これは公式の「マリンカ」の優れた代替品ですが、いくつかの利点があります。
ボードの唯一の欠点は、それ自体のエコシステムの要素で動作することです。このシステムは、ほとんどのPicoアクセサリでは機能しません。たとえば、40ピンでPimoroniからPicoExplorerに接続することはできません。
しかし、マイナスよりもプラスの方がはるかに多い。多くのユースケースを備えた用途の広いボードです。