この間作った3.3V版内蔵8MHz発振のネイキッドArduino
を使って、ちょっとだけOLED表示の続き。
一つはコントラストの調整。この間、短時間の表示
だけで焼きつきができたのが気になっていたので、
コントラストはもうちょっと落としておいた方が
いいのかも知れないと思って、SSD1306のデータ
シートにしたがって、コントラストをできるだけ
小さな値に設定してみる。
aitendoでダウンロードしたpdfファイルに載ってた
推奨初期化コードだと、コントラストは0xCFだった
けど、普通は0x7Fくらいらしい。一気に小さい値
で暗くしたらどうなるだろう?と思って、ドンドン
小さい値にしてみる。
…思いのほか暗くならない。変わってねんじゃね?
と思って、0xCFに戻してみると、あぁ、やっぱり
明るくなる。ってことは、多少は暗くなってるん
だなぁ。
とりあえず、0x1Fくらいにしておく。
次。白黒反転モード。
反転に設定して表示してみると、当たり前だけど、
白黒が逆になった絵が表示された。
数分ほど放置して、コードを色々弄りなおす。
line関数を使って、ループで画面を線で埋めて
いくデモコードを追加。
んで、実行してみる。
当たり前だけど、組んだとおりに線が画面を
埋めていく表示が見れる。
んで、ふと気付く。焼きついていた線や文字の
部分が判らなくなるくらいに、ドット間の輝度差
が無くなってる。
反転表示のまま、しばらく表示してたからなの
かなぁ?
あれかな。
初期状態だと、まだ本調子じゃなくて、しばらく
表示すると本調子状態の表示になってきて、輝度
も各ドットの差が均されて、当面は焼きつきが
判らないレベルになるとか。
いわゆる、慣らし運転が必要なディスプレーなの
かな?OLEDって。
まぁ、表示のムラが無くなって、綺麗になって
なにより。
エレクトレットコンデンサマイクへのリプルを
抑えるのに、電源周りをどんな回路構成にしたら
いいのか、また改めて検索してみたんだけど、
なんともしっくり来る情報が見当たらなかったな。
3.3Vのシリーズレギュレータでも使って、リプル
を無理やり剥ぎ取るってのがいいのかな。
3.3Vでも動くなら、それが一番簡単な気がする。
http://eetimes.jp/ee/articles/1010/29/news118.html
後でまた読み直そう。
|
|
|
|
|
|