2015年4月18日土曜日

矩形波だけのファンクションジェネレータ やったとこまでで結合

クロックは16MHzの外部クリスタル、5V駆動したATMega328Pと
3.3V駆動のSPLC792-I2C LCDを使って9V電池を電源として結合してみた

ブレッドボード配線図



I2Cの信号波形をオシロで観測


赤色がSDA、黄色がSCL

SCL、SDAともHが3.2V程度になっている

5V駆動だとAVRの入力がHのとき0.7×VCC=3.5V以下だと仕様外だが
唯一LCD→AVRの信号の流れになるACK/NACKがLのACKなのでうまくいっているのだろうか?

わからないが、前回やったようにレベル変換モジュールのPCA9306を使うとうまく動かないので今回はこのままいくことにする

Nch MOS-FETを使う方法も基板のスペース的にきついので別の機会に
Nch MOS FETで3.3V<->5V双方向レベルシフト
http://dad8893.blogspot.jp/2015/03/nch-mos-fet33v-5v.html
そのかわり、この構成だとLCDにRST信号を入れないとI2Cの通信自体はうまくいっているのに
LCDの表示がされないことがあるので、Rの分圧で5V→3.3Vシフトさせてつなぐことにした

1.2kΩと2.2kΩで分圧しているので
5V * 2.2 / (1.2 * 2.2) = だいたい3.3V弱
実際はAVRのI/Oから5V出るわけではないので可変安定化電源を使って計ってみた
VCC 4.95V
3.3V 3.31V
RST 4.10V
RST(分圧後) 2.82V
消費電流 27.7mA (LCDのバックライトなし)
LCDのHの入力値の最小値は0.7VDDなので
3.3V * 0.7 = 2.31V
RST信号は仕様内で収まった

3.3Vリニアレギュレーターのデカップリング用のC

TLV1117-33の出力に0.1uFの積セラを入れただけだとI2Cの信号波形が安定しないので100uFの電解コンデンサーも入れた

オシロの波形を取り忘れたが、入れないとノコギリ波みたいな波形が重畳するようだ