メルマガ
C言語によるRaspberry Pi Picoマルチコアマイコンボード入門 (Digi-Key社【アプリケーションラボ】技術解説記事のご紹介)
|
|
||||||||||||
![]() |
C言語によるRaspberry Pi Picoマルチコアマイコンボード入門 (Digi-Key社【アプリケーションラボ】技術解説記事のご紹介) | ||
| 「アプリケーションラボ」は、Digi-Key社のご協力をいただいて、Digi-Key社が公開している新製品や技術情報を日本語でご紹介するWebページです。基礎技術から最新技術まで有益な情報を公開していますので、是非ご活用ください。 今回は、Raspberry Pi財団が開発した組み込み用マイコンRP2040を搭載したRaspberry Pi Picoを活用する方法について解説した記事をご紹介します。 ■C言語によるRaspberry Pi Picoマルチコアマイコンボード入門 Raspberry Pi Picoは、Raspberry Pi財団が販売するマイコンボードで、現在、標準構成のRaspberry Pi Pico、Wi-Fiチップを搭載したRaspberry Pi Pico W、さらにヘッダーピンを実装済みのRaspberry Pi Pico HとRaspberry Pi Pico WHを入手することができます。 Raspberry Pi PicoにはRaspberry Pi財団が独自に開発したマイコンRP2040が搭載されています。RP2040が2021年に登場したとき、数多くの既存マイコンに対抗して普及させることができるのか疑問に思いましたが、それは杞憂だったようです。 ユーザー目線で開発された仕様と初心者にもわかりやすいマニュアルと開発環境、非常に低価格なマイコンボードを用意することで現在は様々な用途に使用されています。 Raspberry Pi Picoの回路図や基板パターンは無償で公開されていて、誰でも自由に互換品を作成して配布できることも利点です。 RP2040には様々な工夫がありますが、フラッシュメモリが搭載されていないという点が肝になっています。RP2040に搭載された16KB ROMにブートローダとフラッシュメモリの制御プログラムが書き込まれていて、アプリケーションプログラムは外部に接続するフラッシュメモリからロードして実行させます。こうすることで、RP2040の低価格化が図られ、PC上で作成したアプリケーションプログラムをフラッシュメモリにドラッグ&ドロップするだけで書き込みができるようになります。 RP2040には、133MHzのArm Cortex-M0+コアを2個と264KBのSRAMを搭載しています。そして、Quad SPIバスと16KBのフラッシュ用キャッシュにより最大16MBの外部フラッシュメモリに高速アクセスが可能になっています。 その他、DMAコントローラや補間器、整数除算器、500kspsの12ビットA/Dコンバータ×3、時計(カレンダー)機能などを搭載しています。インターフェースには、4本のアナログ入力を含むGPIO×30、UART×2、SPI×2、I2C×2、PWM×16、USB1.1(ホスト/デバイス)、プログラマブルI/O×8が用意されています。 RP2040は、インターフェースの制御線を減らすためにPIO(プログラマブルI/Oブロック)というハードウェアを搭載しています。プログラムにより入出力をコントロールする仕組みで、SDカードやVGAなどのインターフェースをエミュレートすることができます。 Raspberry Pi Picoは電子工作の入門者向けに開発されているので、Arduinoが競合するマイコンボードになると思います。Raspberry Pi Picoの方がArduinoよりも安価で処理能力も高いので有利に思えますが、Arduinoは歴史も長く膨大なソフトウェア資産が存在するので、どちらが良いかは一概には言えません。 Raspberry Pi Picoには、2MBのフラッシュメモリが搭載されています。30本のGPIOのうち4本のアナログ入力ピンはLEDの駆動や電源制御、システム電圧の検出に使用されています。電源は1.8~5.5Vの入力電圧に対応しており、USB接続の場合は5V、VBUS端子からは1.8~5.5Vの入力で動作します。BOOTSELボタンを押しながら電源を入れると書き込みモードになります。 【アプリケーションラボ】では、Raspberry Pi Picoが産業用途でも使用されるようになった理由やPicoの基本仕様、Raspberry Pi Picoの開発環境の概要とThe C/C++ SDKのセットアップ方法、サンプルとして提供されている点滅アプリケーションの作成方法などについて解説しています。Raspberry Pi Picoには、MicroPythonとC/C++の開発環境が用意されています。 入門者にはMicroPythonをお勧めしますが、産業用途にはMCUのレジスタに低レベルでアクセスできるC/C++が向いています。 ここで解説されているデバイスは、マルツオンラインのウェブサイトで購入できますので、是非参考にしてください。
|
||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||













