2014年12月14日(日) 19:26
シリアルフラッシュとして、AT45DB641Eを選定。
ページ256バイトだが、ページ264バイトというモードもある。64Mビットに8Mビット分のオマケ付き。まあ将来的な互換性を考えると、256バイトのまま64Mビットとして使うのが良いだろう。
1回のログで256バイト使うと、ページ番号を毎回インクリメントしながら書き込めば良い。棚に荷物を順番に置いていくようなイメージで、非常に単純だ。64Mビットだと32768ページあるから、9分余りの記録ができる。1回を128バイトにして、2回ごとに書き込むようにすれば18分だ。
生データーの類だけなら128バイトで十分だが、計算の途中結果まで残しておきたくなるかもしれない。そうすると、256バイトは欲しい。

SPIは通常10Mビットまでだが、これは最大85Mビットまで対応している。
一気に256バイトをSPI転送すると、内蔵SRAMに蓄積される。それから書き込みが行われるが、書き込みを待つ間にSTM32は別の仕事が可能。シリアルフラッシュに放り投げれば、後は良きに計らえ!で済む。ページ書き込みの時間は平均1.5ミリ秒で、最大3ミリ秒。これは理論値であって保証値ではないが、さすがに10ミリ秒も待てば大丈夫と期待して良かろう。
丸ごと消去には、典型80秒・最大208秒という時間が掛かる。フラッシュメモリーのこの遅さは、どれも似たりよったりだ。
written by higashino [マルチローター] [この記事のURL] [コメントを書く] [コメント(0)] [TB(0)]
Generated by MySketch GE 1.4.1
Remodelling origin is MySketch 2.7.4