Данная статья написана не для бывалых и бородатых, а для маленьких и зеленых, которые не могут попасть в рот ложкой с первого раза, в целом как и автор :-)

что имеем для работы:

  1. оригинальный STlink-v3minie

  2. отладочная плата от WeAct с камнем stm32g474

  3. жмень проводов

Что хотим получить: вывод осмысленных сообщений себе в консоль на устройство, где пишется код

Начнем по порядку: сначала подключим STlink к отладочной плате. Есть две необходимые схемы подключения.

Первой схемой будет схема ''эхо'' — она используется для проверки работоспособности самого STlink и верности конфига терминала.

схема "эхо"

Второй схемой будет "боевая" схема - схема которой мы уже будем отлаживать плату.

"боевая" схема

windows

Cтавим драйвера на свою печку. Получить драйвера можно с офф сайта ST, но только с таблэткой в виде VPN и правильного региона ST аккаунта.

https://www.st.com/en/development-tools/stsw-link009.html

После чего, как ни странно устанавливаем драйвера. Не вижу смысла подробно описывать, куда жать, но скриншотики пусть будут.

next
finish

Отлично, с драйверами мы разделались, теперь установим то, чем будем слушать тот бред, что будет нам выдавать контроллер. Как самый распространенный, пожалуй, вариант, будем юзать PuTTY. Соответственно скачиваем, устанавливаем:

https://www.putty.org/ кнопка download putty
https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html у меня разрядность системы 64 бит, поэтому выбираю 64-bit x86
next
install, дополнительно, лично я, не жал

Установили, отлично. Теперь можно слушать COM Port нашего STLink. Что для этого нужно? Для начала удостоверимся в работоспособности самого STLink. Подключим все по схеме "эхо" и запустим PUTTY

если в device manager-е нет COM девайсов - первым делом ребут компьютера

После откроется терминал, в котором будет печататься то, что вы набираете на клавиатуре, это «эхо», ваш STlink живой, ура. Если символы не печатаются — проверьте качество контакта между RX и TX пинами отладчика.

linux

Я сижу на Arch linux, поэтому установку показываю именно для этого дистрибутива.
Устанавливаем драйвера и утилиты:

pacman -S stsw-link007
pacman -S screen

Выводить данные будем через утилиту screen. Почему? Потому-что.
Подключаем все по схеме "эхо".
Чтобы узнать какой порт занимает наш STlink используем утилиту ls:

ls /dev/tty*

serial device в linux имеют названия вида ttyACMх, нам выпало ttyACM0.

теперь воспользуемся утилитой screen, установленной ранее:

sudo screen /dev/ttyACM0 9600 # 9600 - это скорость в бодах, выставляется
# в соответсвии с выбранной вами скоростью в настройках uart, для проверки работы
# ставим любое значение. 

После ввода команды в терминале можно будет печатать символы в терминале. Это наше "эхо". Если символы не печатаются, то проверьте качество контакта между пинами RX и TX на вашем STlink

иногда может подвисать, как я понял - это норма

Пример конфига для stm32

PS

PS. конфиг не эталонный, так делать возможно даже нельзя, но у нас задача какая? Правильно чтобы работало, поэтому делаем так что-бы работало! Поэтому приступим.

открываем CubeMX и начинаем конфигурировать:

тут спрятаны скрины конфига, чтобы не засорять

Пин LED - это не обязательная штука, автору просто нравится мигающие диодики).
Теперь наш камень сконфигурирован, ура! Осталось написать код, чтобы g474 начал отдавать байтики:

int main(void)

{
	uint8_t message[] = "message from MCU\r\n"; // сообщение которое мы хотим вывести
	uint8_t messageSize = sizeof(message) - 1; //размер сообщения которое мы хотим вывести
	
	//этот блок кода нам генерирует CubeMX, так что не обращаем на него внимание
	HAL_Init();
	SystemClock_Config();
	MX_GPIO_Init();
	MX_USART2_UART_Init();
    // тут уже пишем наши магические буковы
		while (1)
		{
		HAL_UART_Transmit(&huart2, message, messageSize, 1000); //отправка сообщений в 
		HAL_Delay(2000);
		HAL_GPIO_TogglePin(LED_GPIO_Port, LED_Pin);
		}
}
это терминал который пердоставляет cubeide, там тоже можно, если надо пояснить, то вопросы в комменты

собираем, заливаем, проверяем иии...

Неожиданно, но и такое тоже может быть, что произошло? Я подключал свою g474 c помощью китайского ЛБП в хруще, а тут, так получилось, нет нормальной земли и бывают соседи, что любят заземляться на батареи, отсюда и шумная земля. Что делать? Я решил эту проблему через запитку отладочной платы от ноута... Всё, проблема решена))
Подключаем правильно, перезапускаем утилиту ииииии... вжух:

congratulations

Наш контролер умеет писать сообщение вам в терминал, вот теперь ура!
На этом всё. Пока.

Под редакцией @midlifecriz