Decode/Analyse the following UART signals

Let's annotate your first scope shot. When we do this take note that the lowest order bit of the binary value is transmitted first. Conventional notation in this field is to order the bits in a byte like this:

[Bit 7][Bit 6][Bit 5][Bit 4][Bit 3][Bit 2][Bit 1][Bit 0]

So when I annotate and then evaluate the bit positions are flipped from the positions shown on the annotated scope shots.

enter image description here

The bit pattern represented there is 0b00111001.

That is the same as 0x39.

0x39 is the ASCII code for a '9' character.

Let's do the same for your second scope shot.

enter image description here

Here the bit pattern is represented as 0b00110010.

That is same as 0x32.

0x32 is the ASCII code for the '2' character.


You probably sent an ASCII 9, not a binary 9. ASCII 9 is 0x39. Bits are sent LSbit first.

0011 1001 reversed is 1001 1100

enter image description here


UARTs usually send the least-significant bit first hence you get this for 9 and lower down for 2: -

enter image description here

UART character frame: -

enter image description here