コンバーターは基準電圧4.096Vを内蔵しているが、電源電圧を基準にして動作するモードもある。CH1はほぼ5Vまで振れており、異常値が多発するとはいえ比例関係はかなり明確。デジタル値がときどき化けてモードが切り替わってしまっている可能性が高い。出力の直前に毎回モード設定を行なってみた。出力の回数が倍になるため、それだけ変化が遅くなる。CH1の触れ幅はCH2と一致した。CH1だけビット化けしている。コンバーターは「デジタル値の書き込み」と「書き込んだ値の反映」は別物である。両者を同時に行なうことは可能で、通常はそれを行なっている。それを、「デジタル値の書き込み」だけを行なうようにしてみた。書き込んだ値は反映されないため、CH2は延々と0Vのままである。設定値は書き込まれ続けている。CH1は、突発的に値が変化している。これは、ビット化けで「書き込んだ値を反映せよ」と解釈されているためと思われる。毎秒数回以上の頻度で、CH1はビット化けしていることが分かる。CH1は素の基板で運用しているのにCH2はフォオカプラを介している。当初は、わざわざフォトカプラを介したCH2の正常動作の方を心配していたのに、実際はCH1が不安定になるとは。ビット化けするということは、電圧レベルにマージンが無いと思われる。そこで、クロック出力をオシロで確認してみた。20ピンのコネクターにプローブを取り付けるのは困難であり、CH1とCH2を逆接続してしまったが取り付け直す手間は掛けられない。実際は青い波形がCH1である。予想外で、CH1のクロックは5Vまでしっかり振れている。Lも0.3V前後なので、ビット化けするようなギリギリの波形ではない。フォトカプラに電流を取られて、Hの電圧が下がりまくっていると想像していたのだ。負論理のCH2だが、1.7Vほど下がっているのがフォトカプラ内蔵LEDの順方向電圧だろう。L部分の差がほぼ3V。GNDと測定点の間には200Ωの抵抗が挟まっているので、フォトカプラ内蔵LEDには約15ミリアンペアが流れている。こっちは想定内の値であり、CH2が正常に安定動作しているのは自然。2倍の30ミリアンペアになるとPICのスペックをオーバーするため、CH1もフォトカプラ化することは出来ない。2系統同時駆動可能との予備実験結果により、I/Oピン節約してしまったのが響いて来た。予備実験では動作したものが、なぜか本番では動作しない。オシロで見ると、クロックのDUTYがかなり偏っているのが気になる。クロックを発生させているPICプログラムは以前から使っているものだ。念のためNOPを4個挿入し、Hの台地を0.8μ秒長くしてみた。結果は電圧変化が相応にゆっくりになっただけで、CH1の乱れに改善は見られない。フォトカプラの駆動は重いが、PICのスペック内に収まっている。フォトカプラの負荷により波形が悪化しているとの予想も外れた。CH2へのハンダ付けを外し、PICにCH1だけ接続されている状態にしてみた。コンバーターを直結しているのと同じである。これでも症状に変化がない。コンバーター直接駆動しているのに、乱れるのはおかしい。これまでは正常に動いていたはずだ。いえ、マージンが少なかった可能性はある。CH2では、フォトカプラがバッファも兼ねているようなものだ。CH1にも、バッファICを挟めば改善するかもしれない。クロック波形は想定内なので、改善しないかもしれない。やってみなければ、分からない。