このカテゴリーでは、Raspberry Pi Picoというマイクロコントローラを、C/C++言語を使ってプログラミングする方法を探っていきます。
Raspberry Pi Picoのプログラミングは、Pythonの小型版のMicroPythonと、プログラミング言語界の重鎮C/C++で行え、MicroPythonを使った情報は書籍やらWebサイトで多く得られるのですが、C/C++を使った情報はMicroPythonと比べると、圧倒的に少ないのが現状です。
本カテゴリーではこの現状に挑戦すべく、Raspberry Pi PicoとC/C++をまったく知らない状態から、どうやってプログラムを作っていくかを、わたしの手探りの冒険を交えながら書いていきます。
Raspberry Pi Picoって何?
Raspberry Pi Pico(ラズベリーパイピコ、Pico)は、いわゆるマイコンと呼ばれるマイクロコントローラです。この手のマイコンは今や多くの家電や自動車などに組み込まれていて、スマートスピーカーと呼ばれるAmazon EchoやGoogle Homeなどがその代表格です。
Picoはテストや開発用に使われるものなので、実際にスマートな(賢い)自動トイレや炊飯器に組み込まれているわけではないですが、たとえばPicoに人感センサーをつないで、誰かがトイレに入ってきたら、それを検知することができます。
Picoには無印版とWi-Fi、Bluetooth接続機能を持つW版があり、それぞれに、ピンヘッダと呼ばれる金属の突起をはんだ付けしたH版があります。どれも1,000円前後で購入できます。

PicoはパソコンとUSBケーブル(micro USB – USB type A)で接続し、パソコン側でプログラムを作成してそれをPicoに送ることで、Picoが動作します。具体的に言うと、LEDをチカチカさせるプログラムを記述して、それをPicoにアップロードすると、Picoが接続されたLEDをチカチカ点滅させます。このプログラムの記述に使えるのが、MicroPythonかC/C++言語というわけです。
C/C++て何?
C/C++というのはC(シー)言語とC++(シープラスプラス)言語を合わせて言った呼び名で、互換性があるので一緒に使えます。ちょっとやそっとの事で動かなくなっては困る、頑丈な機械などの制御によく使われます。
C言語は1970年代に登場した老舗言語で、無粋でとっつきにくいですが、多くのプログラミング言語がC言語の影響を受けているという意味で、プログラミングの基礎を学ぶには(おそらく)最適な言語です。
新しい言語は人間の言葉に近く、その分学びやすいと言われます。その意味ではPythonは学びやすい筆頭でしょう。C/C++は、こうした高水準言語よりもハードウェアの方に近く、より機械に近い話し方でプログラミングします。手取り足取り面倒を見てくれる高水準言語よりも、本来的なプログラミングの基本を学ぶことができます。
逆に言えば、C/C++は手も足もとってくれないので、手も足も出なくなって挫折する可能性も高くなります。