you could always use something like the mbed or arduino , and have the ability to change chips ,but if you want to access the full capabilities of chips ,you'll cant have portability ,because you lose something when abstracting.
Should you? Oh, sure, if you want a very expensive piece of hardware in your product.