AndyDev 0 18 июня, 2015 Опубликовано 18 июня, 2015 (изменено) · Жалоба Можно ли использовать данные приходящие от микроконтроллера через интерфейс SWO (например, используя ST-Link), в своей собственной программе на PC, а не в стандартных консолях и отладчиках? Если у кого есть исходники с подобными примерами, поделитесь, плиз. Изменено 18 июня, 2015 пользователем AndyDev Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexandrY 2 19 июня, 2015 Опубликовано 19 июня, 2015 · Жалоба Можно ли использовать данные приходящие от микроконтроллера через интерфейс SWO (например, используя ST-Link), в своей собственной программе на PC, а не в стандартных консолях и отладчиках? Если у кого есть исходники с подобными примерами, поделитесь, плиз. Можно, для этого не нужен даже SWO. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
demiurg_spb 0 19 июня, 2015 Опубликовано 19 июня, 2015 · Жалоба Можете посмотреть исходники openocd - там реализована SWO-консоль для ST-LINK. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AndyDev 0 20 июня, 2015 Опубликовано 20 июня, 2015 (изменено) · Жалоба Можно, для этого не нужен даже SWO. Очень интересно, спасибо. Хотя для RTT нужен именно J-LINK, а у меня ST-Link (встроенный в отладочную плату), а так же не совсем из описания понятно, как использовать отладочные данные в своей собственной программе на PC, а не в прилагаемой утилите от Segger. Можно было бы так же воспользоваться передачей через semihosting (мне скорость передачи вообще не важна), но, опять же нет информации - как это использовать в своей собственной программе на PC, а не в отладчике. Изменено 20 июня, 2015 пользователем AndyDev Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexandrY 2 21 июня, 2015 Опубликовано 21 июня, 2015 · Жалоба Очень интересно, спасибо. Хотя для RTT нужен именно J-LINK, а у меня ST-Link (встроенный в отладочную плату), а так же не совсем из описания понятно, как использовать отладочные данные в своей собственной программе на PC, а не в прилагаемой утилите от Segger. Можно было бы так же воспользоваться передачей через semihosting (мне скорость передачи вообще не важна), но, опять же нет информации - как это использовать в своей собственной программе на PC, а не в отладчике. Чтобы работать через RTT нужно: 1. Подключить JLink отладчик к плате. 2. Запустить JLinkRTTViewer.exe И все! На вашем компьютере появляется Telnet server с адресом: localhost:19021 Подключайтесь к нему из любой программы. В RAD Studio например есть набор компонентов AsyncPro который умеет кроме COM портов подключаться и к TCP портам, там же есть и эмулятор терминала и под Telnet и проч. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AndyDev 0 21 июня, 2015 Опубликовано 21 июня, 2015 · Жалоба Чтобы работать через RTT нужно: 1. Подключить JLink отладчик к плате. 2. Запустить JLinkRTTViewer.exe И все! Замечательный способ, это все здорово. Но одно главное НО (о чем я писал выше дважды) - у меня нет отладчика JLink у меня STLink, встроенный в отладочную плату. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
arhiv6 14 22 июня, 2015 Опубликовано 22 июня, 2015 · Жалоба Есть набор программок для работы с stlink под Linux. Среди них есть st-term (ST-Linky proof-of-concept terminal). Автор st-term вроде водится тут, можете с ним списаться. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AndyDev 0 22 июня, 2015 Опубликовано 22 июня, 2015 · Жалоба Есть набор программок для работы с stlink под Linux. Среди них есть st-term (ST-Linky proof-of-concept terminal). Автор st-term вроде водится тут, можете с ним списаться. Замечательно, похоже - это именно то, что мне нужно. Надеюсь, разберусь с исходниками STLink и смогу задействовать в своей программе. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AndyDev 0 30 июля, 2015 Опубликовано 30 июля, 2015 · Жалоба Есть набор программок для работы с stlink под Linux. Среди них есть st-term (ST-Linky proof-of-concept terminal). Автор st-term вроде водится тут, можете с ним списаться. Еще раз спасибо за наводку - все получилось! Разобрал исходник ST-Link под Linux, и сделал на основе него набор процедур для доступа к памяти микроконтроллера в реальном времени. Скорость доступа к памяти оказалась примерно 1200 байт/сек (300 32-битных слов). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
brag 0 1 августа, 2015 Опубликовано 1 августа, 2015 · Жалоба Я использовавл jlinkarm.dll и сделал свою софтину для работы с SWO, работаю только с JLink. Раскуривал сам давно, вот функции. U32 JLINKARM_SWO_Control(U32 arg0,U32 *arg4); U32 JLINKARM_SWO_Read(U8 *dst,U32 offset,U32 *arg8); // arg8 - number of bytes to read U32 JLINKARM_HasError(void); U32 JLINKARM_TIF_Select(U32 iface); void JLINKARM_Close(void); U32 JLINKARM_SetSpeed(U32 khz); void JLINKARM_Halt(void); U32 JLINKARM_IsHalted(void); U32 JLINKARM_IsConnected(void); void JLINKARM_Go(void); void JLINKARM_Reset(void); void JLINKARM_ClrError(void); Jlink::Jlink(){ JLINKARM_TIF_Select(1); // select SWD JLINKARM_SetSpeed(500); } Jlink::~Jlink(){ JLINKARM_SWO_Control(1,0); JLINKARM_Close(); } int Jlink::SwoRead(){ n=sizeof(rxbuf); JLINKARM_SWO_Read(rxbuf,0,&n); if(!n)return 0; JLINKARM_SWO_Control(2,&n); if(JLINKARM_HasError()){ JLINKARM_ClrError(); return -1; } //n- number of bytes read Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться