「PIC AVR 工作室」サイトの日記的なブログです。
サイトに挙げなかった他愛ないことを日記的に書き残してます。
PIC AVR 工作室 ブログ



引き続き、aitendoで買っておいたNOKIA5110液晶を
使って、グラフィック処理をちょっと機能アップ。

まぁ、このグラフィック機能を使って目論んでいる
対象物に近いものは、

https://www.youtube.com/watch?v=Qgxl1HcTfV4
http://www.electronhacks.com/2012/01/diy-arduino-oscilloscope-with-the-nokia-3310-glcd-screen/
http://hackedgadgets.com/2013/06/10/arduino-lcd-oscilloscope/

こんな感じで、探すといくつか出てくるんだけど、
まぁ、後で色々使いまわしできそうな気がするし、
オシロ自体の機能も、メモリの許す範囲で色々と
詰め込みたいので、それなりに気が済むところまで
やってみたいところ。



とりあえず、ドット描画だけじゃなく、line描画でも
pset、preset、xorで描画出来るように機能を追加
してみた。

んで、とりあえず色んな機能を追加してきたので、
コードが長くなっちゃって、描画処理部分と、
それを使うアプリ部分がごちゃごちゃな感じがある
のと、後々使いまわしするのに、ファイル分割したい
なと。んで、やり始めたところ、嵌ってしまうことに。



単に、描画部分だけを別ファイルにしておいて、
ダブルコーテーションで#includeしようと思ったん
だけど、Arduinoの場合、元々のソースファイルと
同じディレクトリに読み込むファイルを置いて
おいても、
    「見つからないよ」
とエラーになっちゃう。

どうやら、gccに掛ける前のArduino固有のプリ
プロセッサが一時作成するディレクトリの方を
探しに行っちゃうみたいで、読み込めないみたい。



じゃぁ、と、Arduino-IDEのマルチタブ編集画面
で拡張子.incってファイルでも作って、同一の
プロジェクトとして処理できるようにすればいいの
かなぁとやってみると、拡張子.incは駄目よと怒ら
れちゃう。


あまり大掛かりにしたかったわけじゃなかったん
だけど、しかたなく、.hと.cの2ファイルに分ける。

んで、コンパイル。…エラーが出る。


.hや.c側で参照している外部ファイルとの関連が
うまく繋がって無いみたい。それ以外のエラーも
ちょろちょろ。



うーーーーん。Arduinoに限った話じゃないけど、
普段やらないことをちょこっとやろうとして、
環境周りでつっかえると、色々手を焼くんだよな。
面倒だな。


どうしたものかなぁと悩みどころなんだけど、
まぁ、あとでちゃんと公開したいのもあるし、
ファイル分割くらいちゃんとできないとなぁ。

もうちょっと格闘してみよう。




http://clicccar.com/2014/04/20/253260/
トヨタがレビン?うーーーーん。感心しない。

まず、4ドアって点で、カローラ系ならレビン
じゃなくてセレスだろうと。

イメージ戦略先行で、実体と合わないものを
ぽんぽん出しちゃぁいけないなぁ。ちなみに、
きっとFFなんだろうな、これ。



そうそう。昨日の単3電池2本でUSBの5V出力が
出来るバッテリーケース。あれの続きはまた
今度。先にArduinoのファイル分割関係。

ちなみに、100mA程度くらいならmそれなりに
使えるレベルであることを記しておきます。

ちなみに、パッケージには



こんな風に書いてあったり。大きさ的に、5V
500mAは到底無理だよなぁ。まぁ、判ってて
買ってきたんで、別にいいんだけど。

aitendoで買ってきた3.3V昇圧回路、
http://www.aitendo.com/product/6851
これに使う100uHのインダクタに目星を付けた。

鈴商で以前買っておいた、
http://picavr.uunyan.com/experiment_njm2360.html
このページの写真に出てくる「A3」をチョイスしよう。
これなら、直流抵抗も小さいだろうし、物理サイズ
から考えて、だいたい100mAくらいは出せるんじゃない
かなぁと。

あとは、付属のコンデンサもちっちゃいので、これも
もう少し大き目のにしたいかな。

付属のダイオードは、IN5819
http://pdf1.alldatasheet.jp/datasheet-pdf/view/209733/FCI/IN5819.html

で、とりあえずショットキらしいんだけど、少し
Vfが大きいなぁ。まぁ、このくらいならいいか。
反転時間が大きいダイオードじゃなければ。



コメント ( 0 )




ドットを描く処理をインプリメントしたので、これを
元にして、line文も作ってみた。




以前、MADさんのサイト経由で、
http://brown.ap.teacup.com/nekosan0/1940.html
DDAによるline描画処理について知ったんだけど、
昔PC-8801用に組んだline描画処理と同じ、傾きを
計算して積み上げるという処理にしてみた。

PC-8801では、640×200ドットを処理するのに、
小数桁は1バイト(8ビット)では足りなくて、
2バイト持った記憶があるんだけど、NOKIA5110液晶
は84×48と画面が小さいので、1バイトで足りる
と判断。



いざ、ロジックを組んで動かしてみても、どうやら
誤差で描画がズレるようなことはなかった。
ヨシヨシ。

問題は、ArduinoのdigitalWrite処理の遅さかな。
座標を乱数にして、300本の線を描画してみると、
およそ8秒。1本あたり、約27ミリ秒。

長さはマチマチだけど、縁取りの枠をlineで描くと、
描き終わるまでに一瞬の間があるのがわかるレベル。

うーーーーん、もうちっと速く描いてくれないかなぁ。



http://blog.galileo-7.com/?eid=86932
どうやら、digitalWriteの処理は44クロック掛かる
らしいので、これを直接ポート制御することで
高速化がはかれるだろうと思うんだけどな。

http://playground.arduino.cc/Code/PCD8544

LCDへのデータ送信処理は、参考にしたArduinoサイト
のplaygroundのスケッチで記述されているLcdWrite
関数をそのまま使っているんだけど、各信号の
上げ下げには当然digitalWriteを使ってる。

さらに、この関数で使ってるshiftOut関数も、SPI
モジュールじゃなく、ソフトウェアインプリメントで、
内部コードを見ると、データ線、クロック線ともに
digitalWriteで上げ下げしてる。

ってことは、このあたりをすべて改造したら、
結構な削減に繋がるのかな?概算はできそうだな。

まぁ、機能としてはそれなりにできてるから、速度
についてはまた後で考えようかな。先に、オシロっぽい
動きが出来ることを優先しよう。




急ぎ働き。
5110液晶がまだ在庫あるうちに補充しようと思って、
aitendoに。
http://www.aitendo.com/product/1164

在庫が結構あるっぽかったから、と思ってたん
だけど、店員さんに聞いてみたら、このキットは
どうやら店頭在庫なかたみたい。

しかたなく、
http://www.aitendo.com/product/1165
http://www.aitendo.com/product/1156
液晶モジュールとキャリー基板別々のをセットにして
買ってきた。100円高い。

100円はいいとして、基板との配線に使うゴム
みたいなやつの使い方とかが良くわかんない
から、予め取り付けてあるやつがよかったんだ
けどな。

んで、調べてみた。

http://crystal-radio.blogzine.jp/blog/2012/06/5110lcd5110av-3.html

どうやら、導体と絶縁体(ゴム?)が層状になって
いるようで、適当にそれっぽい位置にあてがえば、
それなりに配線されるっぽいなぁ。


それと、350円で3.3Vや5Vへの昇圧基板(小さくて
細い基板)のキットが売ってたので、3.3Vのを
買ってきた。



昇圧用のIC、3本足なんだけど、型番が読めない。
多分HT7733Aかなんかだろうと想像。帰って来て
から開いてみてみると、正解。

http://www.aitendo.com/product/6851
これか。

コイルがアキシャルタイプのちっちゃいヤツだから、
これだと電流は殆ど取れないだろうと思うので、
インダクタだけはもうちょっと大型のに変えておいた
方がいいかな。



ふと、あきばおーに行ったら、USB電源が売ってる
んじゃないかなぁと思って、立ち寄ってみる。



ビンゴ!

売ってたよ。売ってた。狙い通りの品が。

単3電池2本で、昇圧かけて、スイッチでオン/オフ
出来るパッケージ。まさに狙い通り。シメタ!


んで、買って帰って来て、電池を入れて動かしてみる。

…とりあえず、期待通りの5Vがでてきた。

でも、大きさとか考えると、どう見ても表示されて
いる「5V500mA出力」は無理っぽい。
っつーか、無理ゲーだろ。

んで、例によって、色々な抵抗負荷掛けて、実験を
してみた。

実験の結果はまた明日にでも。

それにしても、LED付いてるっていうのは、いざと
言うときに向けて、意外と便利かもしれないな。



コメント ( 0 )