AVRスプライトのカラービデオ表示の続き。
6ビットを確保するとなると、USARTを
諦めてDポートを空け、SPI接続にすると
いうのがが一番いいかなぁという気が
しています。
そういえば、I2C(TWI)は、フラッシュ
メモリーやリアルタイムクロックなどで遊んだ
記憶がありますが、SPI接続はまだ使った
ことが無かったなぁ。I2Cよりはずっと
解り易いので、使うだけならなんてことは
無いんだろうけど、問題は転送速度。
山根さんの本を引っ張り出して来て、SPIの
所を読み直す…。
最も遅い速度に設定した場合、ビットレートは
CPUクロックの1/128となるとのこと。
マスター側CPUを20MHzで動かした場合、
19531バイト/秒?
UARTを使っていたときには、115200bps。
startとstopを合わせて1バイト10ビットなので、
11520バイト/秒。
まだ速いなぁ…。というのは…
水平同期1本につき1バイトを入力するロジックに
なっているんですが、そうすると、1秒では
60フィールド×252本=15120バイト。
これより速くアクセスすると取りこぼして
しまうので、送信側でタイミングを計って
送信する必要が出てしまうはず。
そういう不便なのはイヤなんですよね…
高級言語からも、何も考えずにデータを
垂れ流しできるようにしたい…
あと、SPIを使っちゃうと、ISPで書き込み
する時にちょっと不便なんですよね。まぁ、それは
本質的な問題ではないですけど。
うーん。もうちょっと考えてみよう。
|