- 書き換えをしないデータは容量の少ないSRAMに置くより、AVRのプログラムエリアであるフラッシュメモリに置いたほうが良い
- フラッシュメモリへの書き込みには PROGMEM と専用の型を変数名の前に書く
- 配列変数(二次元配列)も可能だが、添字とアクセスされる場所に注意
- 読み込みには pgm_read_byte を使う ( pgm_read_byte と pgm_read_byte_near は同じで、pgmspace.h(\hardware\tools\avr\avr\include\avrにある)によればnearは64KB以下のメモリアクセス用)
- サンプルを用意した。結論から言うとフラッシュメモリは変数名でアクセスして良い。pgm_read_byteを使いたければ変数名の前に&をつけること
PASTEBINで色付けしたソースを見ることが出来ます http://pastebin.com/W27Tt5EF |