- 2023.03.10
ラズピコ PIO ~Lチカ コーディング編~
皆さん こんにちは。 今回は PIO を使ってLチカしてみます。 開発環境は C/C++ SDK です。 環境構築やプロジェクトのつくり方 環境構築やプロジェクトのつくり方、VSCodeの起動については、このブログの一番最初の記事に書きました。 環境構築してみたい方は こちら をご覧になってください。 プロジェクトジェネレーターの”Library Option”で R […]
皆さん こんにちは。 今回は PIO を使ってLチカしてみます。 開発環境は C/C++ SDK です。 環境構築やプロジェクトのつくり方 環境構築やプロジェクトのつくり方、VSCodeの起動については、このブログの一番最初の記事に書きました。 環境構築してみたい方は こちら をご覧になってください。 プロジェクトジェネレーターの”Library Option”で R […]
皆さん こんにちは。 今回はラズピコのマイコン RP2040 の目玉機能である PIO についてお話します。 ネット上に「ラズピコPIO」の記事はゴロゴロしていますがデータシートと手持ちの本を参考にしながら私なりにPIOについてまとめてみることにしました。 PIOとは PIOとは prgrammable input / output の略で、端子の部分とマイコン中核部の仲介役をプログラマブルに行う […]
皆さん こんにちは。 今回は ADC を使ってみます。 ADCとは アナログ・ディジタル・コンバーターの略です。 文字通りアナログの電圧をディジタルに変換する機能です。 ここでは ADC と略して呼ぶことにします。 温度測定 ラズピコのマイコン RP2040 には電圧出力の温度センサーが内蔵されていてADCにつながっています。 ADCには5つの入力があり、ain_sel = 4 で温度センサーの電 […]
皆さん こんにちは。 今回は ウォッチドッグタイマーを使ってみます。 ウォッチドッグタイマーとは 番犬タイマーと呼べば良いでしょうか。 カウンターを監視していて、オーバーフローするとマイコンにリセットがかかるというものです。 例えばプログラムが暴走して動かなくなった場合にリセットをかけて正常に動作させる役割を持ちます。 通常はリセットがかからないようにカウンターをリフレッシュしてあげます。 ひと昔 […]
皆さん こんにちは。 今回はコアを2つ動かしてみます。 私の場合マルチコアの製品を使うのは ESP32 に続いて今回が2回目になります。 ラズピコのマイコン RP2040 の場合、比較的簡単にマルチコアの動作が実現できます。 プロジェクトの作成 以下の設定でプロジェクトを作成します。 Project Name: picoMulticore Console Options の Console ove […]
皆さん こんにちは。 今回は PWM出力を使ってみます。 PWMとは PWMとは、Pulse Width Modulation の略で、日本語ではパルス幅変調といいます。 GPIOからパルスを出力する機能です。 パルス幅を変えることでモーターを制御したり、LEDの明るさ調節を行ったりすることができます。 今回はラズピコに載っている緑色のLED(D2)をPWM出力で制御して明るさを調節してみます。 […]
皆さん こんにちは。 そう言えばラズピコのクロックについて全く理解していないなぁと思い、少々かじってみることにしました。 RP2040のクロック系統図 ラズピコのマイコン RP2040 のクロック系統図を以下に示します。 ラズピコには 12MHz の水晶振動子が実装されていて、これをPLLで逓倍して、125MHz のシステムクロックを生成しています。 USB向けには 48MHz のクロックが生成さ […]
皆さん こんにちは。 今回はラズピコで使われているマイコンの型名について確認です。 RP2040 左から順番に RP : Raspberry Pi の略 2 : コア数です。デュアルコアということです。 0 : コアのタイプで cortexM0+ から来ています。 4 : floor(log2(ram / 16k)) と書かれています。 計算してみましょう。 ram が 264KB ということなの […]
皆さん こんにちは。 今回は SPI を使って気圧センサーモジュールとつないでみます。 気圧センサーモジュール 今回使った気圧センサーモジュールは こちら です。 端子設定で I2C と SPI のインターフェースを切り替えることができるのでマイコンペリフェラルの取り扱いを練習するのに良さそうです。 デバイスのデータシートは こちら です。 接続例 配線のしやすさを考慮して、こちらでは以下のように […]
皆さん こんにちは。 今回は I2C を使って気圧センサーモジュールとつないでみます。 気圧センサーモジュール 今回使った気圧センサーモジュールは こちら です。 端子設定で I2C と SPI のインターフェースを切り替えることができるのでマイコンペリフェラルの取り扱いを練習するのに良さそうです。 デバイスのデータシートは こちら です。 半田付けでジャンパー2か所を短絡すると SCL, SDA […]