I applaud your efforts, but it sounds like you're starting a little bit over your head. You're definitely on the right track by asking questions, though, and I'd suggest doing lots of reading too. There are some good references you can find online to teach you more of the basics, then you can come back and ask questions about the details. There are many very knowledgeable and patient people on here, but you'll find it tough going to try and ask enough questions to learn everything this way. I think you'll find it much easier and you'll learn a lot more if you can learn a lot of the basics on your own, then you can narrow down your questions do some of the specific details. I think you'll also find that a lot of questions have been asked already, and a little time spent using the search functions will help you mine some very informative threads. I feel like I should warn you that only a relative handful of the most knowledgeable members on here have successfully built their own controllers from scratch, but don't let that keep you from trying!
First off, you don't provide any details about your controller design. What sort of specifications are you trying to achieve? Battery voltage, peak current, max power, type of motor, etc. What MOSFETs are you trying to use? Sensored or sensorless? Any and all details will help us understand what you want to accomplish.
It sounds like you've been using logic-level MOSFETs driven directly from the Atmega processor. There are many things wrong with this approach.
But, your ignorance is understandable because this is a VERY complicated topic. You probably destroyed your FETs because they were switching far too slowly. A MOSFET gate looks like a capacitor, which must be charged to a certain voltage (the threshold voltage) to turn the FET on. FET driver circuits are designed to deliver short pulses of fairly high current (up to several amps) to rapidly charge this capacitor and switch the FET on and off. Your Atmel can probably only deliver 10 or 20 mA, which would probably require upwards of 7 us to switch on the gate of a typical high-power FET (IRF4110). For reference, the relatively crappy gate drive circuits of the cheap Chinese controllers manage 1-2 us. The problem with high switching times is that the FET is generating a LOT of heat while its switching, so long switching times will dramatically increase the amount of heat generated. The logic-level FETs also have another problem, which is called dv/dt-induced turn-on. That's a pretty complicated issue, but the logic-level FETs are more vulnerable than other types. This could also cause blown FETs. In general, unless you really know what you're doing, logic-level FETs are only really useful for low-power circuits.
I suggest you do a lot of reading on gate drive circuit design. Here is a really good reference:
http://focus.ti.com/lit/ml/slup169/slup169.pdf
You can also find a lot of good info in the application notes from IRF and other companies that make gate drive ICs (National Semi, Linear, TI, among others). Most of these references are pretty technical, but you'll find Wikipedia and other resources useful to understand them if necessary. Do some reading and then come back with questions.