LM2940, 7808 and Multichannel PWM chip
LEDs are generally driven by current, not by voltage. Otherwise you will not have constant brightness as the led's current consumption will change significantly with rising temperature and an unstable supply voltage. You should google for an led driver IC (meaning constant current source) that fits your needs. They often have a control pin which can be directly supplied with a mc's pwm signal at logic level or even an analog signal for "real" dimming. The datasheet will give you a "typical application" which you simply have to adapt. It's not more to do than in your way, bit at least it's the clean way to drive an led!