前回、wrapを使って、システム・クロック125MHzを1MHzに落としました。もう一つの分周器を使って、もっと周波数を下げます。 ●固定小数点形式 uint8_t div = 2;uint8_t f
PicoからPWM出力をします。PWMはどのGPIOからでも出力できます。ここでは、GPIO2、GPIO3、GPIO4、GPIO5の4本を最初に利用します。 ●PWMの周波数 Picoは125MHzの
gpioファンクションの中にmask関連があります。どういう機能なのか確認しました。 ●MASK関連gpioファンクション ファンクション 要約 void gpio_set_outover (uint
前回、スイッチが押されると、LEDを点灯させるというプログラムを作りました。while()文でループを作り、定期的に、if()文で、スイッチの状態を見に行きます。これをポーリングといいます。 このプロ
Lチカでgpioの出力を扱いました。ソース・プログラムです。 /** * Copyright (c) 2020 Raspberry Pi (Trading) Ltd. * * SPDX-License
前回、10ビットA-DコンバータMCP3008を利用しました。ここでは12ビットA-DコンバータMCP3208を使います。ビット数が増えると、より細かくアナログ電圧を扱えます。言い換えれば、量子化誤差
SPIバスは、I2Cよりデータの転送速度を高くできます。 Picoにはspi0とspi1のバスがあります。チップ・セレクトCS信号は、ユーザがGPIOピンを独自に制御するプログラムを書きます。 クロッ
低価格湿度センサのAHT20をつなぎました。使用したAdafruitのブレークアウト・ボードは、STEMMA QT(JST SH 4ピン)コネクタは2か所に装着されていて、どちらにつないでもかまいませ
温度センサTMP117は、動作温度範囲;-55~+150℃で、確度;-20~+50℃の範囲で±0.1℃(最大値)と、小数点第一位までが信頼できます。読み出すデータは16ビットで0.0078125°C
i2cは、クロックSCLとデータSDA信号のタイミングを利用したバスです。Picoではi2c0とi2c1の二組のバスがサポートされ、いろいろなピンで利用できるので、汎用性が高いです。 次に示すのは、そ
ラズパイのi2ctoolsにあるi2cdetectと同じものが、pico\pico-examples\build\i2c\bus_scanに入っています。最初に、このソースを利用して、i2cscann
Picoのスペックにクロックは最大133MHzと書かれています。RP2040 Datasheetの「2.15. Clocks」には、分周器を使って、マイコンの周辺モジュール用のクロックが作られている図
マイコンは、たくさんの機能や周辺モジュールを内蔵しているので、一つのピンに複数の機能を割り当てています。利用者が、自分でどの機能を使うかを最初に定義します。Arduinoでは、限定していますが、Pic
第2回でUARTでラズパイとPicoを接続しました。printf文を使って出力します。 ●ソースとCMakeLists.txt Hello, World!のプログラムに必要なのは、ソース・プログラムと
Lチカから始めます。すでにソースはpico/pico-examples/blinkにあります。入っているのは、 blink.c CMakeLists.txt の二つです。blink.cは普通のLEDを
前回、開発システムをインストールし、実行ファイルをPicoに書き込んで動作を確かめました。実機を目の前にして利用する使いかたでは、今回の説明はスキップしてください。 ここでは、リモートで開発する手順を
Picoのプログラミングをするうえで、とても有用なのが、ドキュメントです。Cortex-M0+というマイコン自体の解説、周辺機器をつなぐときのサンプル回路やサンプル・プログラム、C/C++やMicro
●標準入出力 プログラムでprintfやscanfは標準入出力が使われます。ここでは、UART0ポートを通して利用します。 Pico UART0名称 Pico 物理的ピン番号 Pico GPIOピン番
C/C++言語でPicoのプログラムを作ります。開発環境はラズパイ4です。 使用環境 Raspberry Pi Raspberry Pi 4 Model B 2MB OS Raspberry Pi O