I'm using an ATmega328P to provide a software-selectable 2, 4 or 8 MHz clock to my home made SBC. This works just fine. However, I am adding a programmable sound generator (PSG) to the board and it requires a 1-2MHz clock.
I want to keep the board simple and avoid flip-flop clock dividers and output selects due to the variable system clock speed, so I was hoping I could configure the ATmega328P to provide a second (non-variable) 2 MHz clock for the PSG.
Problem is, I'm not experienced with AVRs and their timer fuses and don't even know if this is possible with the ATmega328P? If it is, how can I set up another pin to and its timer to provide the 2 MHz clock signal?
Bonus (almost unrelated) question: Can a 20 MHz AVR provide an 8 MHz clock pulse, as it's not a factor of 20?
EDIT: Just to clarify a couple of points:
1) The ATmega328 is running at 16 MHz. I'm using one clock/timer output to produce the required 8 MHz clock I need for the main board.
2) I need a separate (but ideally in-step with the 8 MHz clock) 2 MHz clock for the PSG. I was hoping to be able to set up another clock output from the ATmega328?