1. В сообществе нашего форума Вконтакте создан раздел по продаже электронных компонентов.
    Каждый может продать в нем свои залежавшиеся детали. Подробности здесь.

Не работает отладка через SWV в Atollic TrueStudio

Тема в разделе "STM8/STM32", создана пользователем radioengineer, 16 янв 2019.

  1. radioengineer

    radioengineer Администратор Команда форума

    Сообщения:
    3.577
    Симпатии:
    355
    Адрес:
    Алматы
    Начну с того, что я сперва все сделал по мануалу с сайта производителя. Но ничего не завелось и не у меня одного такая проблема, на многих форумах ссылаются на эту статью и жалуются, что не заработало и все тут, причем решения на этих форумах нет и поэтому в гугл лезть просто бесполезно на моем этапе.

    У меня используется микроконтроллер STM32F407VGT6 в проекте, программатор стандартный STLINK/V2. Проект в целом рабочий и мне просто захотелось прикрутить вывод отладочных сообщений.

    Функция ITM_SendChar ( int ch ); работает вполне себе корректно и я могу в консоли SWV получить char, который отправляю. Проблема начинается с использованием printf. Функция эта, судя по описанию, использует потоковый вывод куда угодно с помощью системного вызова int _write ( int file, char *ptr, int len ), т.е. достаточно переопределить вызов и все должно заработать, что я и сделал в файле syscalls.c

    PHP:
    int _write int filechar *ptrint len )
    {
        
    int i 0;

        for ( 
    0leni++ )
            
    ITM_SendChar ( (*ptr++) );

        return 
    len;
    }
    Безрезультатно. Я еще по всякому извращался с определением этой функции, но тоже ничего не получил.

    Вот настройки отладчика

    DeepinScreenshot_выберите-область_20190116151820.png

    и SWV

    DeepinScreenshot_Atollic TrueSTUDIO for STM32_20190116151842.png
    Последнее редактирование: 23 янв 2019
     
  2. radioengineer

    radioengineer Администратор Команда форума

    Сообщения:
    3.577
    Симпатии:
    355
    Адрес:
    Алматы
    Вчера сижу думаю ну его нафиг эту отладку по SWV, решил дальше основную программу отлаживать. Сегодня прихожу включаю отладку по SWV, а она работаетo_O Ничего не менял, даже не касался, делаю вывод, что была какая то проблема в программе, не связанная напрямую с SWV, но никаких корреляций я провести не смог.

    DeepinScreenshot_выберите-область_20190118085400.png
  3. radioengineer

    radioengineer Администратор Команда форума

    Сообщения:
    3.577
    Симпатии:
    355
    Адрес:
    Алматы
    Разобрался, помоги другим. По такому принципу написал небольшой туториал в блог, не благодарите.

Поделиться этой страницей