Цитата(AlexandrY @ Jun 16 2016, 14:13)

Странно.
Куча разработчиков, но только единицы заботит быстродействие отладочного канала.
Хотя от этого напрямую зависит производительность программиста встраиваемых систем.
Короче так:
Скорость вывода по SWO вот в таком цикле :
Код
#define TESTBUF_SZ 1024
char testbuf[TESTBUF_SZ];
for (i=0;i<1000;i++)
{
fwrite(testbuf, 1 , TESTBUF_SZ, stdout);
}
будет:
J-Link Ultra+ - 2.7 Мбайт/с
J-Link - 480 Кбайт/с
ST-Link/V2 - 160 Кбайт/с
Понятно, что не для каждой задачи нужна максимальная скорость обмена.
Даже 160 кбайт/с неплохой результат, а значит вывод отладочной информации через ST-Link/V2 тоже имеет право на жизнь.
За вывод отладочной информации отвечает модуль ITM. Вот только не пойму -начиная с адреса 0xE0000000 расположены 32 32-х разрядных регистра (Stimulus port). Т.е. в любой из них кладем данные для передачи. И есть в регистре "ITM trace control" 23 бит - Busy. Как я понял - бит сигнализирует о занятости передатчика. Один на всех что ли? Тогда получается все как в UART - буфер передатчика и флаг занятости.
В общем, надо как-то это дело попробовать.
esaulenka, верно в 99% случаев достаточно одностороннего обмена.