私はPROGMEMに複数の2D配列を持っています。2D PROGMEMアレイのPROGMEMアレイの作成方法
私はそれらを別の配列に格納したいので、2次元PROGMEM配列のPROGMEM配列が必要です。
次に、データを読みたいと思います。私はこれを行うことになっていますどのように
error: cannot convert 'const byte (*)[2] {aka const
unsigned char (*)[2]}' to 'const byte* const {aka const
unsigned char* const}' in initialization
:ここ
は私が
void myFunc()
{
const static byte DATA1[3][2] PROGMEM =
{
-1, 6,
-3, 6,
-5, 5
};
const static byte DATA2[3][2] PROGMEM =
{
1, 0,
1, 0,
1, 0
};
const static byte DATA3[6][2] PROGMEM =
{
0, 1,
1, 3,
2, 4,
4, 4,
6, 3,
7, 1
};
//PROGMEM array of 2d arrays in PROGMEM
const static byte* const MY_DATA[] PROGMEM = {DATA1, DATA2, DATA3};
//read out the data now:
byte myData = pgm_read_byte(&((MY_DATA[arrayNum])[x][y]));
//use the data here, etc, etc...
}
私のエラーをされて持っているものは?私は周りを読んでいて、一時間以上これを理解しようとしています。私は何が間違っているのか分からない。
参考文献ページ:
- http://www.nongnu.org/avr-libc/user-manual/pgmspace.html
- http://www.nongnu.org/avr-libc/user-manual/group__avr__pgmspace.html#ga963f816fc88a5d8479c285ed4c630229
- https://www.arduino.cc/en/Reference/PROGMEM
なぜdownvote? –
正しいタイプを先に試してみてください。 'const static byte(* const MY_DATA [])[2] PROGMEM = {DATA1、DATA2、DATA3};' – MikeCAT
それでした。ありがとう!申し訳ありませんが、私はそれを正確に理解していないと言わなければなりません。答えを出して詳細に説明できますか? –