使用するPROGMEMの量を決定するには、ここでリアリティチェックが必要です。以下のスニペットでは、8x8バイトの配列を格納しています。これはPROGMEMの64バイトしか使用しないと想定できますか(大まかに言って、いくらかのオーバーヘッドがありますか?)
(これは「グラントの墓に埋葬されたのは誰か」という種類の質問だと思いますが、私はPROGMEMをあまり使用しておらず、16kバイトのメモリ(ATMEGA 168チップ)があるとは思いません。実際のプロジェクトデータを生成すると、適合しません。)
prog_uint8_t datastore[] PROGMEM = {
0 , 0 , 0 , 255 , 0 , 0 , 0 , 0 ,
0 , 0 , 0 , 0 , 255 , 0 , 0 , 0 ,
0 , 0 , 0 , 0 , 0 , 255 , 0 , 0 ,
0 , 0 , 0 , 0 , 0 , 0 , 255 , 0 ,
0 , 0 , 0 , 0 , 0 , 0 , 0 , 255 ,
255 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ,
0 , 255 , 0 , 0 , 0 , 0 , 0 , 0 ,
0 , 0 , 255 , 0 , 0 , 0 , 0 , 0
};