色々考えたみた。夜も寝ないで(これはウソ)でも、目が覚めてしまい朝早くからパソコンに向かっている。
CRT上の波形は人間の目の残像現象で見えている。残像が有る状態で次のスウィープが始まり管面が光る必要がある。
昨日の実験ではセパレータしか見えないが実際はちゃんと時刻が表示されているのではないだろうか。
ただ、スウィープ間隔が長いため残像が見えずにウンともスンとも動いていないように見えるだけのような気がする。
これを検証するためには(大袈裟、、)
1.暗視カメラで撮影する。 持っていないのでNG。
2.storage scopeで見る。 これも持っていないのでNG。
3.ロジックアナライザで見る。 これが一番実現性あり、mega88の波形と比較もできる。
4.デジタルオシロで見る。 デジタルオシロは一旦メモリに記憶してそれをLCDに表示していると思うのだが、これも持っていないのでNG。
5.輝度を上げて見る。 250MHzのオシロがあるので見えるかどうかは不明だがやることは出来そう。
今日は3の方法でトライしてみよう。
セパレータは階段上に2段階で表示している。その一つ一つに10usのdelayで波形を出しているのでたまたま見えることになる。
つまり10usの間はずっと輝線がそのまま出ている。
ちなみにtiny2313のSRAMは128byteしかない。所がこの時計プログラムは1文字(1デジット)あたり3個のSRAMを使用している。6文字表示するのに3x6x8=144BYTEが必要である。
メモリをお皿にたとえれば、料理をお皿に盛りつけてテーブルに並べるにはお皿が足りない状態である。
次の料理を盛りつけるには空いたお皿を洗いそれを使わなければ間に合わない状況である。
お皿を洗う時間が発生しているようだ。
つまりガーベージコレクション?が起きていると言うことではないだろうか。
と、勝手に推測してみた。
その昔、PC6001やFMV?の時代にはメモリを使い切ってしまいガーベージコレクションが発生しプログラムが一次中断してしまう現象があったとか。
今はメモリは1G、2Gは当たり前でよほどのことが無い限りメモリが無くなってしまう事はないだろう。
CRT上の波形は人間の目の残像現象で見えている。残像が有る状態で次のスウィープが始まり管面が光る必要がある。
昨日の実験ではセパレータしか見えないが実際はちゃんと時刻が表示されているのではないだろうか。
ただ、スウィープ間隔が長いため残像が見えずにウンともスンとも動いていないように見えるだけのような気がする。
これを検証するためには(大袈裟、、)
1.暗視カメラで撮影する。 持っていないのでNG。
2.storage scopeで見る。 これも持っていないのでNG。
3.ロジックアナライザで見る。 これが一番実現性あり、mega88の波形と比較もできる。
4.デジタルオシロで見る。 デジタルオシロは一旦メモリに記憶してそれをLCDに表示していると思うのだが、これも持っていないのでNG。
5.輝度を上げて見る。 250MHzのオシロがあるので見えるかどうかは不明だがやることは出来そう。
今日は3の方法でトライしてみよう。
セパレータは階段上に2段階で表示している。その一つ一つに10usのdelayで波形を出しているのでたまたま見えることになる。
つまり10usの間はずっと輝線がそのまま出ている。
ちなみにtiny2313のSRAMは128byteしかない。所がこの時計プログラムは1文字(1デジット)あたり3個のSRAMを使用している。6文字表示するのに3x6x8=144BYTEが必要である。
メモリをお皿にたとえれば、料理をお皿に盛りつけてテーブルに並べるにはお皿が足りない状態である。
次の料理を盛りつけるには空いたお皿を洗いそれを使わなければ間に合わない状況である。
お皿を洗う時間が発生しているようだ。
つまりガーベージコレクション?が起きていると言うことではないだろうか。
と、勝手に推測してみた。
その昔、PC6001やFMV?の時代にはメモリを使い切ってしまいガーベージコレクションが発生しプログラムが一次中断してしまう現象があったとか。
今はメモリは1G、2Gは当たり前でよほどのことが無い限りメモリが無くなってしまう事はないだろう。
原因が追求出来るのではと思います。
がんばって下さい。
私も、年のせいか、はやく目が覚めてしまいます。