2024年3月号 特集 [UART/I2C/SPIをPicoで]ゼロから作るシリアル通信 サポート・ページ

特集 [UART/I2C/SPIをPicoで]ゼロから作るシリアル通信 サポート・ページ

第2部第1章 UARTをゼロから作る

● ダウンロード・データ

https://www.cqpub.co.jp/interface/download/2024/3/IF2403T2B1S.zip

● 参考文献URL

(1)MicroPython downloads.
https://MicroPython.org/download/
(2)Thonny Python IDE.
https://thonny.org/
(4)RP2040 Datasheet

https://datasheets.raspberrypi.com/rp2040/rp2040-datasheet.pdf


第2部第2章 I2C&SPIをゼロから作る①…全体像と制御プログラム

● BME280制御プログラム

https://github.com/teddokano/BME280_MicroPython

● ダウンロード・データ(GitHubと同じ物です)

https://www.cqpub.co.jp/interface/download/2024/3/IF2403T2B2S.zip

● 参考文献URL

(1)秋月電子 BME280使用 温湿度・気圧センサモジュールキット:AE-BME280.
https://akizukidenshi.com/catalog/g/gK-09421/
(2)Bosch BME280 データシート.
https://www.bosch-sensortec.com/media/boschsensortec/downloads/datasheets/bst-bme280-ds002.pdf
(3)Raspberry-Pi Pico公式.
https://www.raspberrypi.com/products/raspberry-pi-pico/
(4)MicroPython公式.
https://micropython.org/
(5)初めの一歩!ラズパイPicoマイコン×PythonでLチカ入門.
https://www.marutsu.co.jp/pc/static/large_order/zep/m-z-picoled-da1


第2部第4章 I2C&SPIをゼロから作る③…I2C送受信機能の実装

● I2Cビット・バンギングのプログラム

https://github.com/teddokano/bitbang_I2C_controller_MicroPython

● ダウンロード・データ(GitHubと同じ物です)

https://www.cqpub.co.jp/interface/download/2024/3/IF2403T2B4S.zip

● 参考文献URL

(1)I2C バス仕様およびユーザーマニュアル (Rev5.0 日本語版)
https://www.nxp.com/docs/ja/user-guide/UM10204.pdf
(2)I2C バス仕様およびユーザーマニュアル (Rev7.0 英語版)
https://www.nxp.com/docs/en/user-guide/UM10204.pdf
(3)Bosch BME280 データシート.
https://www.bosch-sensortec.com/media/boschsensortec/downloads/datasheets/bst-bme280-ds002.pdf
(4)MicroPython ライブラリ machine — ハードウェア関連の関数 クラス I2C — 2線式シリアルプロトコル
https://micropython-docs-ja.readthedocs.io/ja/latest/library/machine.I2C.html


第2部第6章 I2C&SPIをゼロから作る⑤…SPI送受信機能の実装

● SPIビット・バンギングのプログラム

https://github.com/teddokano/bitbang_SPI_controller_MicroPython

● ダウンロード・データ(GitHubと同じ物です)

https://www.cqpub.co.jp/interface/download/2024/3/IF2403T2B6S.zip

● 参考文献URL

(1)Bosch BME280 データシート.
https://www.bosch-sensortec.com/media/boschsensortec/downloads/datasheets/bst-bme280-ds002.pdf
(2)MicroPython ライブラリ machine — ハードウェア関連の関数 クラス SPI — シリアルペリフェラル インターフェース バスプロトコル(コントローラ側).
https://micropython-docs-ja.readthedocs.io/ja/latest/library/machine.SPI.html
(3)A Resolutionto Redefine SPI Signal Names,Open Source Hardware Association.
https://www.oshwa.org/a-resolution-to-redefine-spi-signal-names/
(4)信号名やメイン/サブ・ノードのような名称は英語版Wikipediaの記述に倣った.
https://en.wikipedia.org/wiki/Serial_Peripheral_Interface
(5)Using the Serial Peripheral Interface to Communicate Between Multiple Microcomputers,AN991/D,Rev.1, 1/2002.
https://www.nxp.com/docs/en/application-note/AN991.pdf


第3部第1章 読者に提供するプロトコル・アナライザの機能とGUI

● ダウンロード・データ

https://www.cqpub.co.jp/interface/download/2024/3/IF2403T3B1S.zip

● 記事中のコマンドライン

▲pySerialのインストール
pip install pyserial

▲macOS版のpySerialインストール
/bin/bash -c “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)”
brew install python3 python-tk
pip3 install pyserial

▲プロトコル・アナライザの実行
python main.py
python3 main.py

● 補足事項(2024/1/25追加)

画面の小さなノートPCで使う場合,以下の修正でウィンドウの縦方向を縮小できます.
 修正箇所:draw_frame.pyの11行目
 修正内容:1つのグラフの高さパラメータであるCANVAS_HEIGHT = 120を減らして,最小90程度にする

第3部第3章 UART通信プログラミングとアナライザによる解析

● ダウンロード・データ

https://www.cqpub.co.jp/interface/download/2024/3/IF2403T3B3S.zip

● 参考文献URL

(1)Arduinoボードマネージャ.
https://github.com/earlephilhower/arduino-pico/releases/download/global/package_rp2040_index.json
(2)MicroPython Reference.
https://docs.micropython.org/en/latest/rp2/quickref.html