When working with microcontrollers, an intimate knowledge of the hardware is absolutely essential (know the entire data sheet and/or user/reference manuals like the back of your hand) to get the most out of it. If you have that, then you can work with just about any microcontroller (and development system) to get the most effective solution to the project at hand. Without it, however, no software development system will help (no matter how good or how easy it is to use) as you have found out.