電子負荷ユニットの制御に使おうと製作したADC/DAC基板のDAC(MCP4726)の出力波形を確認したところ、周期的なノイズが・・・。(不思議なことに0V出力ではノイズは無い。)
何かなと思ったら、同じバス上で200mSの割り込みでADCを読んでいるI2Cバスの信号。
VCC-GND間、VREF-GND間のAC分はきれいなのでどうもデータバスから回り込んでいる様子。どうしたものかと考えて、DACの出力にCRのフィルタを入れたらきれいに取れました。
DAC出力をそのままで外へ出すのもねえ、ということで出力にオペアンプのバッファを1段追加。
結果、この基板も改版することに。ならばと、ADC(MCP3428)の入力もシングルエンド4チャンネルを圧力センサなどもつなげることができるように差動入力に変更し、ついでにキャラクタLCD用のコネクタも追加。
ATmega x8用で、ここまで多機能なシングルボードは珍しいはず。Arduinoは外部拡張しないと何もできないに等しいのでちょっと不便だし、空き端子は処理しないとならないしで組み込み用途として考えると、結局あまり小型化できない。やはり専用ボードとした方が(当たり前だけれども)使い勝手が上。
20日くらいには電子負荷の基板と共にできあがるのではないかと思います。