2023年1月

  • 2023.01.30

ラズピコ デュアルコアしてみる

皆さん こんにちは。 今回はコアを2つ動かしてみます。 私の場合マルチコアの製品を使うのは ESP32 に続いて今回が2回目になります。 ラズピコのマイコン RP2040 の場合、比較的簡単にマルチコアの動作が実現できます。 プロジェクトの作成 以下の設定でプロジェクトを作成します。 Project Name: picoMulticore Console Options の Console ove […]

PWM
  • 2023.01.29

ラズピコ PWM出力を使ってみる

皆さん こんにちは。 今回は PWM出力を使ってみます。 PWMとは PWMとは、Pulse Width Modulation の略で、日本語ではパルス幅変調といいます。 GPIOからパルスを出力する機能です。 パルス幅を変えることでモーターを制御したり、LEDの明るさ調節を行ったりすることができます。 今回はラズピコに載っている緑色のLED(D2)をPWM出力で制御して明るさを調節してみます。 […]

  • 2023.01.29

ラズピコ クロックについて浅く掘る

皆さん こんにちは。 そう言えばラズピコのクロックについて全く理解していないなぁと思い、少々かじってみることにしました。 RP2040のクロック系統図 ラズピコのマイコン RP2040 のクロック系統図を以下に示します。 ラズピコには 12MHz の水晶振動子が実装されていて、これをPLLで逓倍して、125MHz のシステムクロックを生成しています。 USB向けには 48MHz のクロックが生成さ […]

  • 2023.01.28

ラズピコのマイコン RP2040の型式

皆さん こんにちは。 今回はラズピコで使われているマイコンの型名について確認です。 RP2040 左から順番に RP : Raspberry Pi の略 2 : コア数です。デュアルコアということです。 0 : コアのタイプで cortexM0+ から来ています。 4 : floor(log2(ram / 16k)) と書かれています。 計算してみましょう。 ram が 264KB ということなの […]

SPI
  • 2023.01.27

ラズピコ SPI を使ってみる

皆さん こんにちは。 今回は SPI を使って気圧センサーモジュールとつないでみます。 気圧センサーモジュール 今回使った気圧センサーモジュールは こちら です。 端子設定で I2C と SPI のインターフェースを切り替えることができるのでマイコンペリフェラルの取り扱いを練習するのに良さそうです。 デバイスのデータシートは こちら です。 接続例 配線のしやすさを考慮して、こちらでは以下のように […]

I2C
  • 2023.01.20

ラズピコ I2C を使ってみる

皆さん こんにちは。 今回は I2C を使って気圧センサーモジュールとつないでみます。 気圧センサーモジュール 今回使った気圧センサーモジュールは こちら です。 端子設定で I2C と SPI のインターフェースを切り替えることができるのでマイコンペリフェラルの取り扱いを練習するのに良さそうです。 デバイスのデータシートは こちら です。 半田付けでジャンパー2か所を短絡すると SCL, SDA […]

  • 2023.01.15

ラズピコ UART 割り込みで送受信

皆さん こんにちは。 今回は UARTの割り込みを使って送受信してみます。 環境構築やプロジェクトのつくり方 環境構築やプロジェクトのつくり方、VSCodeの起動については、このブログの一番最初の記事に書きました。 環境構築してみたい方は こちら をご覧になってください。 プロジェクトの作成 以下の設定でプロジェクトを作成します。 Project Name: picoUartRxTxInt Con […]

  • 2023.01.14

ラズピコ UARTで受信

皆さん こんにちは。 今回は UART で受信してみます。 サンプルにもあるもので何か受信すると値を+1して返信するというシンプルなエコーバックです。 環境構築やプロジェクトのつくり方 環境構築やプロジェクトのつくり方、VSCodeの起動については、このブログの一番最初の記事に書きました。 環境構築してみたい方は こちら をご覧になってください。 プロジェクトの作成 以下の設定でプロジェクトを作成 […]

  • 2023.01.07

ラズピコ UART 割り込みで送信

皆さん こんにちは。 今回は UARTの送信割り込みを使ってノンブロッキングで送信してみます。 環境構築やプロジェクトのつくり方 環境構築やプロジェクトのつくり方、VSCodeの起動については、このブログの一番最初の記事に書きました。 環境構築してみたい方は こちら をご覧になってください。 プロジェクトの作成 以下の設定でプロジェクトを作成します。 Project Name: picoUartT […]

  • 2023.01.07

ラズピコ UART レジスタへのアクセス

皆さん こんにちは。 ペリフェラルに対して細かい制御をしようとするとAPIだけでは処理しきれません。 レジスタに値を書いたり読んだりすることで細かい制御が可能になります。 そこで今回はレジスタへのアクセス方法についてお話します。 前回、UARTの送信処理を行いました。次回は少し飛躍して割り込みを使って送信する予定です。 その際にレジスタへアクセスする必要が出てくるので、今予習しておこうというわけで […]