Hola, esos caracteres raros tienen la pinta de ser una diferencia en la velocidad en la transmisión del puerto serie,
es decir, si en tu codigo tienes esto:
USART_InitStruct.USART_BaudRate = 9600;
tienes que poner en el terminal del PC la misma velocidad (9600 bauds).
