C12880MAの動作確認(1)

はじめに

さて、11月中に完了しているはずだった案件。1ヶ月遅れでの実施、ブレッドボード上に組んだ回路の動作確認である。

シャッターの動作

モータードライバの動作確認。シャッター機構の代わりにLEDを接続した。早くてわからないけど5回点滅しているはず。

I²Cレベルコンバーターの動作確認

FXMA2102で動作できることは判っている。これをFXMA108の余剰ピンに割り当てたことが失敗だったのだ。

で、今回もここでミス。左がブレッドボードで使いやすく変換基板に載ったFXMA2102、右が回路図上の記号。確認せずに8ピンの配置と勘違いして、GNDにOE信号の3.3Vを入れてしまった。壊れた。しかも2度同じミス、1個200円、計400円を無駄にした。

最終的には3.3Vの信号が5.0Vになることを確認した。

デジタルポテンショメータの動作確認

MAX5477 デジタルポテンショメータをI²Cで接続。

from machine import Pin, SoftI2C

SDA = 29
SCL = 6

i2c = SoftI2C(scl=Pin(SCL), sda=Pin(SDA), freq=100_000)
a = i2c.scan()

for addr in a:
    print(hex(addr))

上記のコードを実行。以下の結果が帰ってきた。
MAX5477のアドレス設定ピンはすべてGND接続なので、アドレスは0x28であるので通信できている。

MicroPython v1.21.0 on 2023-10-06; Raspberry Pi Pico with RP2040
Type "help()" for more information.
>>> %Run -c $EDITOR_CONTENT
0x28

オペアンプの動作確認

オペアンプに0-5Vの100KHZの矩形波を入力(黄色)した。その出力(水色)が3.3Vに収まるように増幅率とオフセットを調整した。MAX5477の設定は以下の通り。

if __name__ == '__main__':
    
    # Test assuming op amp operation
    
    register = MAX5477(0x28)
    
    # writing data to non-volatile memory.
    # offset
    register.command("write_NVREG", "R0",99)   
    # amplification
    register.command("write_NVREG", "R1", 90)
    
    # copy non-volatile memory to volatile memory.
    # offset  
    register.command("copy_NVtoV", "R0", 0)
    # amplification
    register.command("copy_NVtoV", "R1", 0)

使用しているオペアンプはNJU77701Fスルー・レートは35V/μs。入力の立ち上がりが40 nsecに対して、オペアンプ出力の波形は450 nsecで10倍ほど大きくなっている。

入力信号を500kHzにすると信号が鈍るが、立上りの時間は変化ないのな。ちょっとオペアンプの理解に勘違いがあった。

FXMA108の動作確認(C12880MA制御信号)

これはテスタで5V出力を確認した。特に問題なし。

最終テスト

年末の実家への帰省中で、実家に持ち込んでテストしてたりする。C12880MAを持ってきていないので、最終テストは来年に実施する。ちょっと、手持ちのオシロスコープ類を総動員してみた。据え置きの従来型のオシロスコープはこのところ活躍する場がないな。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA