stm32 uart Issue serie monitor vs analizador lógico

0

Estoy escribiendo el monitor serie de datos a través de hal_uart_transmit y funciona bien, pero cuando controlo el mismo patrón de bits en serie en el analizador lógico, veo que dos bits adicionales tienen el estado lógico alto, ¿por qué?

por ejemplo en el monitor serial, obtengo 5 en decimal, en un analizador lógico, obtengo 00 11 0101, debería ser 00000101, ¿no es así? No solo para los números, sino que también tengo este problema para cualquier cadena.

    
pregunta iopertyki

1 respuesta

1

Estás viendo el valor numérico 5 codificado como el carácter ASCII '5' que tiene el valor hexadecimal 0x35

00000101 binary es 5, un valor

00110101 binary es 0x35 (48 + 5 decimal), que es el código de carácter para un '5' imprimible

También vale la pena recordar que si intenta descodificar el analizador lógico o la forma de onda del alcance a ojo, se enviará primero el LSB y habrá un encuadre adicional.

    
respondido por el Chris Stratton

Lea otras preguntas en las etiquetas