Conversion

You can't cast a non-constant variable to a constant, for -starts-.

Chars are signed 8 bit, you want to go from unsigned to signed.

You can't cast a 32 bit value into being a 16 bit pointer.

--- uint32_t converted to ascii text may be 10 characters long.

Serial.print does the conversion with no leading zeros if that's what you want.