My point is not to start a flame war, or have an opinion based fight. I really just need advice based off of my experience.
I am pretty experienced with using an arduino, I understand C, & C++ fluently. What is a 8 bit microcontroller I could start with that would give me a solid foundation and understanding? I understand the programming and theory, but I am lacking practical experience. Besides the chip, do I need an IDE? or an IDE & a compiler?
All of the software is available from the Microchip website for free, and there is a lot of help documentation out there. The library references built into the compiler/MPLab are also very thorough.
The same can be said of just about every other mainstream MCU family, there's usually cheap development boards available for virtually all of them, though without so much of the community & hobbyist-level hardware add-ons that surrounds the Arduino. Each will have a toolchain of their own.
I would recommend sticking with 8-bit MCUs for a while - get to know how to really drive them without the Arduino training wheels, because this will hold you in good stead to deal with the substantially greater complexity you'll encounter in 32bit MCUs.
The IDE is just a pretty GUI layer on top of the underlying toolchain, and is optional, but ideal for beginners - setting up a toolchain & make system is not easy unless you're already familiar with it from other programming work. Opinions vary greatly on which IDEs are 'best' (from those available within a given brand/family of MCU), but reality is that few if any are 'best'. Although if you start using a JTAG debugger device (as distinct from a simpler in-circuit device programmer) to step through you code & set break-points & inspect registers & memory etc, then an IDE really helps here.
Read More :
[url=http://www.theengineeringprojects.com/2014/10/getting-started-with-microcontrollers.html]GETTING STARTED WITH MICROCONTROLLERS