Наткнулся на очень нелепую проблемку: Каким-то образом изменение одних переменных меняют другие переменные. Не понимаю, как такое возможно!?
Код
unsigned char Block_Files[512];
unsigned char File[32];
int main (void) { // Main Program
unsigned int clock;
unsigned long Peremennaja[512]; // Создадим ненужную переменную
Config_GPIO ();
TFT_LCD_Init();
TFT_LCD_BGcolor(0xFF0000);
TFT_LCD_ConSetColor(0x000000, 0xFFFFFF);
TFT_LCD_ConSetPos(0,0);
SDcard_init();
Show_Folder(Block_Files, File);
for (clock=0; clock<512; clock++) Peremennaja[clock] = 0x00; // Передаем ненужной переменной, например, нули
for (clock=0; clock<512; clock++){
Delay(50);
TFT_LCD_Char (Block_Files[clock]); // Выведенные символы из-за "Peremennaja" Стали черными квадратиками
}
while(1){};
}
Функции: "TFT_LCD_ConSetColor(0x000000, 0xFFFFFF); и TFT_LCD_ConSetPos(0,0);" просто записывают цвет, строку и столбец в переменные "unsigned int".
Без записи в переменную "Peremennaja[512]" все работает. А когда в нее записываем значения, то эти значения вносятся в переменные указателя цвета и курсора...
Подскажите, плиз, в чем секрет??
Прикрепленные файлы
Beda.rar ( 530.59 килобайт )
Кол-во скачиваний: 10