[an error occurred while processing this directive]
я почти неделю на подобном "спотыкаче" маялся. Потом все снес, и по новой все последние версии програмного переустановил. (+)
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено O.L. 19 сентября 2003 г. 11:10
В ответ на: Действительно, у меня стоял 8 уровень оптимизации, поставил 7-ой и всё заработало, что то они там с этой оптимизацией замутили ... отправлено Vlad77 19 сентября 2003 г. 10:07

А было примерно следующее, если в цыкле читать через временные переменные, ну напрмер,внешнюю eeprom, то Keil просто плевал на них и генерил свой непобедимский код. Вроде как ты программер сам по себе, а я умнее.
В итоге при попытке сразу после выхода из цикла чтения/записи, прочитать/записать байт, компайлер подставлят процедуры с переменными от последней итерации цыкла. Что то типа такого:
wr_prt++ последнее значение в цыкле 0х0461, после постинкремента должно быть 0х0462, что и показывалось в окне Wach. Но при выходе из цыкла, при попытке чтения или записи адресовалась ячейка 0х0461.
Вот такая вот зараза была :).

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru