Цитата(KnightIgor @ May 22 2015, 11:49)

...Идеи?
Инициализация периферии МК. В частности скорость инициализации. Это чиссо на вскидку. Думаю можно найти ышо кучку причин такого поведения.
Вторая идея - разные кванты исполнения в мультинитеевой среде, если юзаете.
думаю основным тут является то, что у Вас происходит успех только под отладкой. При этом в штатном режиме некие действия тупо игнорятся.
я бы пошёл по дороге обламывания всего, что можно и вывод прочитанных строк в дебажный порт. Добился бы устойчивой работы, а потом
(если причина не нашлась) опять бы включал частями и смотрел взаимосвязи.
у меня к кеил есть притензии. под 51 серию встречал когда компилятор тупо выкидывал код. причём это был тупой глюк. после правки программы
(чуть ли не нопами) - само прошло. Но это не Ваш случай...