-
- RTT хоть и Segger-овское детище, но вполне работает с любым
программатором через OpenOCD + Telnet. На старых версиях
требовалась собирать его с патчем, но с версии 0.11.0 уже всё есть
в основной ветке. arhiv6(31 знак., 22.07.2022 10:40, ссылка, ссылка)
- Спасибо, OpenOCD это хорошо - Chum_A(22.07.2022 12:06)
- а как RTT явит себя сос тороны микроконтроллера и его кода? куда
что писать нужно чтоб отладчик это забрал и на верх пропихнуд? - klen(21.07.2022 11:50)
- Вызываешь функцию из этих хедеров, текст будет помещен во
внутренний буффер и дале автоматом вычитано отладчиком. - POV(21.07.2022 11:56)
- это понял. теперь глядя на код BMP пытаюсь понять что в коде
прошивки нужно написать (как эти буфера обозвать и как разместить).
примерчик нужен. По Сеггеровскому примеру понял принцип. - klen(21.07.2022 12:42)
- Если нет background memory access, то отладчик будет останавливать
проц на время вычитывания буфера. В некоторых чипах надо
принудительно выбирать точку доступа AHB (вместо APB по-умолчанию)
из-за того, что фоновый доступ памяти реализован через AHB
(например, RM4x). При ARM7 и некоторых Cortex по-умолчанию
вычитывание буфера приводит к останову МК. - VVB(21.07.2022 20:39)
- списался с автором коммита, который в код bmp добавил поддерку rtt.
он мне все расписал как включать в самом отладчике... но я просил
что в прошивке таргета делать. жду ответа с примером или тыкалкой
носом в урл. по исходникам не не понятно как отладчик находит в
памяти адрес структуры rtt и ваще как она описана .... ждемс. нужно
дожать этот вопрос. идея этого финта с вводом выводом отладки
изящна - klen(22.07.2022 00:03)
- JLink знает адресный диапазон ОЗУ конкретного МК и тупо вычитывает ОЗУ и ищет сигнатуру. VVB(287 знак., 22.07.2022 08:09, ссылка, ссылка)
- Ценное замечание, спасибо. - Costic(21.07.2022 21:39)
- списался с автором коммита, который в код bmp добавил поддерку rtt.
он мне все расписал как включать в самом отладчике... но я просил
что в прошивке таргета делать. жду ответа с примером или тыкалкой
носом в урл. по исходникам не не понятно как отладчик находит в
памяти адрес структуры rtt и ваще как она описана .... ждемс. нужно
дожать этот вопрос. идея этого финта с вводом выводом отладки
изящна - klen(22.07.2022 00:03)
- Если нет background memory access, то отладчик будет останавливать
проц на время вычитывания буфера. В некоторых чипах надо
принудительно выбирать точку доступа AHB (вместо APB по-умолчанию)
из-за того, что фоновый доступ памяти реализован через AHB
(например, RM4x). При ARM7 и некоторых Cortex по-умолчанию
вычитывание буфера приводит к останову МК. - VVB(21.07.2022 20:39)
- это понял. теперь глядя на код BMP пытаюсь понять что в коде
прошивки нужно написать (как эти буфера обозвать и как разместить).
примерчик нужен. По Сеггеровскому примеру понял принцип. - klen(21.07.2022 12:42)
- Вызываешь функцию из этих хедеров, текст будет помещен во
внутренний буффер и дале автоматом вычитано отладчиком. - POV(21.07.2022 11:56)
- Тут Chum_A(1 знак., 19.07.2022 09:15, ссылка)
- да, хорошая тема, несколько лет уже использую - 0men(19.07.2022 14:02)
- Подскажите, пожалуйста, ("лыжи не едут или я...") что-то не вижу
вывода? Всё ли норм? В main() { while(1) SEGGER_RTT_WriteString(0,
"Hello "); } Costic(1 знак., 19.07.2022 23:01, картинка)
- Надо делать SEGGER_RTT_ConfigUpBuffer() RxTx(275 знак., 20.07.2022 19:25)
- и я еще использую принтф 0men(56 знак., 20.07.2022 14:46)
- в окне терминала посмотрите ) не лога - 0men(20.07.2022 14:45)
- Смотрел, конечно. Не получает он данные. Уже и с правами админа всё
запускал и в одну папку слил - бестолку. В обратную сторону тоже не
работает key = SEGGER_RTT_WaitKey(); Если что, то я ST-Link
использую, перепрошитый в J-Link. - Costic(20.07.2022 17:46)
- вот так пробовали? 0men(77 знак., 20.07.2022 20:02)
- Пробовал. Вывод в буфер попадает, а проблема в передаче в RTT
Viewer. Контроллер Миландр Cortex-M1. - Costic(20.07.2022 20:36)
- Зы, на ВЕ1 при тактировании на частоте более 25МГц RTT не работает.
Подробности были на форуме которого уже увы.. - Chum_A(21.07.2022 13:35)
- Копия форума нашлась, сделали добрые люди. Тут => И просто
полезный сайт СтартМиландр Тут => Costic(2 знак., 22.07.2022 21:49, ссылка, ссылка)
- Спасибо за ссылки. Я ковырнул свой архив, с RTT баловался давно, году в 17-м, из-за ограничения 25МГц забросил и сделал вывод через UART. По памяти, вроде RTT работал, но следов, увы не осталось :(. Всякие варианты ВЕ1QI и прочие - это один кристалл, тут важна его ревизия, а их было штук 6 (см. errata). - Chum_A(24.07.2022 11:37)
- Спасибо, но пока не помогло. Курю дальше. - Costic(21.07.2022 21:40)
- Хм, в ВЕ1 две области ОЗУ, возможно, что RTT может работать только
с одной из таковых. - Chum_A(22.07.2022 11:54)
- Всё ещё не добился я результата с ВЕ1Т (точнее BE1QI). Проверил
работу RTT на своих платах с EFM32GG11 и STM32F103. Costic(513 знак., 22.07.2022 22:02, картинка, картинка)
- МК прописан в JLinkDevices.xml ? RxTx(1 знак., 25.07.2022 23:29, ссылка)
- P.S. Вместо Cortex-M1 выбрал при подключении STM32F103 - и частично получил вывод RTT на BE1QI. - Costic(22.07.2022 22:20)
- Всё ещё не добился я результата с ВЕ1Т (точнее BE1QI). Проверил
работу RTT на своих платах с EFM32GG11 и STM32F103. Costic(513 знак., 22.07.2022 22:02, картинка, картинка)
- Хм, в ВЕ1 две области ОЗУ, возможно, что RTT может работать только
с одной из таковых. - Chum_A(22.07.2022 11:54)
- Тоже что-то такое помню. - LightElf(21.07.2022 14:36)
- Копия форума нашлась, сделали добрые люди. Тут => И просто
полезный сайт СтартМиландр Тут => Costic(2 знак., 22.07.2022 21:49, ссылка, ссылка)
- Зы, на ВЕ1 при тактировании на частоте более 25МГц RTT не работает.
Подробности были на форуме которого уже увы.. - Chum_A(21.07.2022 13:35)
- Пробовал. Вывод в буфер попадает, а проблема в передаче в RTT
Viewer. Контроллер Миландр Cortex-M1. - Costic(20.07.2022 20:36)
- вот так пробовали? 0men(77 знак., 20.07.2022 20:02)
- Смотрел, конечно. Не получает он данные. Уже и с правами админа всё
запускал и в одну папку слил - бестолку. В обратную сторону тоже не
работает key = SEGGER_RTT_WaitKey(); Если что, то я ST-Link
использую, перепрошитый в J-Link. - Costic(20.07.2022 17:46)
- Зачем этот мощный цикл "while (1)"? Чтобы забить буфер как можно скорее? - SciFi(20.07.2022 07:28)
- Подскажите, пожалуйста, ("лыжи не едут или я...") что-то не вижу
вывода? Всё ли норм? В main() { while(1) SEGGER_RTT_WriteString(0,
"Hello "); } Costic(1 знак., 19.07.2022 23:01, картинка)
- Крутяк. Спасибо. - SciFi(19.07.2022 09:27)
- да, хорошая тема, несколько лет уже использую - 0men(19.07.2022 14:02)
- RTT хоть и Segger-овское детище, но вполне работает с любым
программатором через OpenOCD + Telnet. На старых версиях
требовалась собирать его с патчем, но с версии 0.11.0 уже всё есть
в основной ветке. arhiv6(31 знак., 22.07.2022 10:40, ссылка, ссылка)