久しぶりに動かしてみたシリーズ。STM32F103C8 + ChibiOS の環境でやってみた。

基本的に ST7735 を使った液晶 などとプロトコルそのものは一緒なので、コードは流用できる。が、ハマってしまった。

  • SCL: SCK
  • SDA: MOSI
  • RES: RESET
  • DC: Data/Command
  • BLK: Backlight control (float で良い)

ハマったところ: CS (チップセレクト) がない

写真を見たらわかるが CS 信号がピンヘッダに出ていない。どうやら GND に接続されているらしい。この状態だと CPOL (極性) を 1、CPHA を 1 (いわゆる SPIMODE=3) にしないとダメなようだった。

そして CS の制御ができないと何が困るか、というとクロック信号を不要に発生させるとグリッチが発生してしまう。

今回はSPIデバイスのオン/オフを都度都度行っていた関係でどうしてもクロックに余計な信号が入っていたので、それをなくしたら動いた。

参考文献

  1. トップ
  2. tech
  3. 1.3inch ST7789 240x240 SPI TFT 液晶

ZeroPlus LAP-C と sigrok pulseview の組合せについては書いたことがあるけど、ビルドする必要があったり、UI 的にいまいち使い勝手がよくなかった。

けどそれは2014年の話で、それから6年が経ち、改めて PulseView を使ってみたら大変進化していて、普通に使えた。各プラットフォームでビルド済みのものがダウンロードできる し苦労する点はない。

試しに STM32 の SWD を解析してみたがうまく動いている。トリガのかけかたも簡単 (A1 の右側についてるアイコンがトリガのマーク)

プロトコルアナライザも豊富にみえる。設定も簡単で何も悩むところはなかった。

  1. トップ
  2. tech
  3. ロジックアナライザ sigrok PulseView + ZeroPlus LAP-C



バッテリーが付属していなかったので、別途買った保護回路付き 1000mAh のバッテリーをインストールした。XH コネクタで、極性は見ての通り基板に印刷されているのでよい。

S-A-A-2 はバッテリーの状況は画面に表示されない。基板裏の赤い4つLED(裏返してコネクタを下にしたとき右端にある)が充電管理ICと直結しており、残量や充電状況を示すようになっている。充電中は点滅する。

  1. トップ
  2. tech
  3. S-A-A-2 (NanoVNA V2) にバッテリーをインストール