
今、再びはまり始めた「ホンダモンキー」それにデジタルモニターをつけようとお遊びをはじめました。
「
モンキーにデジタルモニターをつけてみた(試作)」
「
シリンダ温度」がそれらしい値も出て満足しているんだけど、表示が「
キャラクタLCD」ってのがなんとも面白くない…。
「
自作デジタルモニターを作ってみた Ver.2」でも使った、「
グラフィックLCD」で表示を豊かにしようと思ったけど、結局LCDだとバイクの日光にさらされた環境だと見えにくいのは想像できる。
OLEDモジュール液晶で何かいいものないかな?って探していたら、丁度、みん友さんとその方のみん友さんのブログにいい情報があった!
使えそう。ってことで早速WEBを徘徊しました。
WEB徘徊をすると、OLEDのモジュールって接続方法は大きく「
I2C」と「
SPI」に分かれてる。
「
I2C」ってのは今までに「気圧」「温度」「時計」と色々なモジュールを使ってきたので、すぐ使えそう。
「
SPI」の方は、「
自作 時計 & 外気温をルームミラーに映してみた」でその速い転送速度にあやかってデータを転送するときに使用したぐらいでモジュールの操作したことがない…。ってことで今回は勉強も兼ねて「
SPI」でやってみました。
で、購入したのが写真の
「128X32 OLED SPI」です。ものすごく小さいです。でもくっきりして見えやすいです。モンキーサイズにぴったり。とても良い!
一昨日このモジュールが届いて、昨日英語のデータシートとにらめっこして、さくっとライブラリを作成してあっさり表示できました。今まで使ってきたグラフィックLCDと表示方法は大差ないですが、このモジュールのコントローラの「SSD1306」って表示範囲の指定ができたり、「縦方向に描画」「横方向に描画」「ページ毎に描画」など設定が自由にできて使い勝手は良さそう♪
使用してみた「
SPI」通信は「
I2C」通信よりも単純に通信が行えます。
I2C通信は、送信毎に信号のやり取りをする必要がありちょっと複雑。SPI通信は特に決まった手順もなく単純にデータ転送が行えます。単純ってことはコード次第で速度があげれるってこと。
だけど、通信線を減らしたいときには「
I2C」は有効なんですがね…。
「
SPI」は、CPUのクロックに乗せてデータを転送するので性能の良いPICを使うと結構なスピードが出ると思います(「
自作 時計 & 外気温をルームミラーに映してみた」で実証済)。
今回使ったPICは、これまた家にある余りもので「
PIC16F1938」を使用しました。こいつはPLL回路を内蔵し最大32MHzまでスピードが出ます。それと、今回もグラフィックを扱うので文字データが大きくなりますが、こいつはメモリ領域が広くて、ちょっとの大きなデータではへこたれませんw。
8ビットで速度がほしくて、メモリもほしいって時に良く使います。
お見せするほどではありませんが、回路は以下です。今回は右側のスイッチは実装してません。
新しく、モジュールを使うときはデータシートからプログラムするのにかなり時間を要します…。
今回は、もう画面の表示までできたので後は表示する内容をちまちまとコーディングするだけですw
お正月遊びのネタができましたw
それと、「
モンキーにデジタルモニターをつけてみた(試作)」で、「武川の温度センサー」を使って色々実験しました。モンキーにはこのセンサーを取付けて測定するパーツがいっぱい出てて、今後のためにセンサーの素性を知っておいたほうが良い。
実験の数値を見るとこのセンサーは「NTCサーミスタ」なのは間違いないと思うけど、このたび真剣に計算をして、一般的言われるサーミスタの特性式に乗っけて式を作ってみた。
R:抵抗[Ω] T:温度[絶対温度K] として…

「3435.6」って数字は「サーミスタ定数」って言うらしいだけどほかのサーミスタを見ても悪い数字じゃなさそう。これを、プログラムに乗っけて試走してみたが、自然な数値で温度表示をしてくれる(自己満足)。
忘れないように書いておく、これで合ってる…多分。
ブログ一覧 |
電子回路 | 趣味
Posted at
2013/12/22 11:25:10