Программа работает отлично при подключённом отладчике.
Как только компилится релиз и программа запускается без подключённого отладчика (при чём акцент именно на этом), схема работает нестабильно.
Точнее просто через некоторое время зависает."
http://forum.easyelectronics.ru/viewtop ... 35&t=40790
Мое Объяснение проблемы: Отладчик и в самом деле влияет на стабильность работы. Для того чтобы понять, как это происходит, нужно иметь ввиду, что отладчик напрягает шину процессора работающую по спецификации AMBA2 (Амба - жаргонизм: конец, конец всему, логическое завершение начатого, шутка) про нее и читайте. Физически подключенный отладчик (даже если он не выполняет команды) изменяет логику арбитража шины AHB и APB. Сигнал SWCLK заставляет приоритеты "вращаться". Так,что это помогает против лени программиста и, одновременно ставит его в тупик... Следовательно есть очень важное свойство SWCLK изменяя его частоту вы можете "вращать" приоритеты как Вам удобно будет. Попробуйте изменять частоту SWCLK и, заметьте его частоту, когда вновь начнутся сбои, период SWCLK даст Вам дополнительную информацию о критическом времени захвата шины для Вашей блок схемы. Иными словами есть возможность измерить Ваш код в смысле арбитража шины AMBA2....
Решение: Спасибо Вам за этот уникальный вопрос. Вы, невольно, подсказали всем путь, как можно позволить себе лениться, или спасти безнадежный код (особенно если он чужой и работает в готовом устройстве). Для этого нужно выбрать частоту SWCLK при которой становиться лучше и, подать ее на постоянной основе. Я проверил на своем "дефектном коде" и, это работает отлично!!!
P.S. Как говориться, Вы любите DMA?, тогда мы идем к Вам...
"A textbook can be defined as a book unsuitable for reading" (B. Shaw)
Tautology is humor in "this" place (Vigo Carpathian)


