DNS are centralized , IPs are not. When USA decides to block or take down you domain name, because they can, all you have left is your IP, they can't take your IP.
In an embedded system where memory is at a premium and you may have serious constraints on how long things take (e.g. for timing purposes), the ability to hard-code an address or have it entered in some way saves you from having to support an entire DNS layer in that system.