Всем здрасьте.
Я и вправду не могу озаглавить понятнее, поскольку наблюдаемый эффект больше похож на поведение капризной фифы, а не микроконтроллера.
Имеем:
- STM32F103RC
- Flash-FS от KEIL
- micro-SD-Карточку на SPI
- текстовый файл на ней
- самописная поддержка терминала (команды и печать), на PC используется TeraTerm.
Шаги:
- компилим программу (KEIL 5.x)
- грузим по JTAG (J-LINK V8)
- запускаем кнопкой RESET на плате.
ПО многоплановое, все вроде работает, но именно при "распечатке" текстового файла с карты на терминале пропадают части строк. В терминальной коммуникационной линии я уверен совершенно (проверено другими средствами, да и дальше будет ясно, что все с этим в порядке).
Ага, запускаем тут же отладчик. При этом НЕ происходит перезаливки ПО, т.к. в данной сессии KEIL считает только что залитую программу еще актуальной, что есть правда. Запускаем под отладчиком... ошибка проглатывания символов ушла! Ладно, известно, что отладчик может чего-то перенастроить, например DWT, который я в ПО использую, и быть микроскопом Гейзенберга. Тогда завершаем сессию отладки, ПЕРЕДЕРГИВАЕМ питание микроконтроллерной платы и... все начинает работать безошибочно!
Идеи?