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.