พบจุดที่ผิดแล้วครับ มันเป็นความเข้าใจผิดของผมเอง ที่ต้องการให้บิทไหนเป็น "0" แล้วทำแบบนี้
// Interrupt ADC
ISR (ADC_vect)
{
ADCSRA &= (0<<ADIF); // clear interupt flag
}
ถ้าทำแบบนี้แล้ว หมายถึงทั้ง register ถูก and ด้วย "0" ทั้งหมด ที่จริงต้องกลับเฉพาะบิทนั้นเป็น "0" ส่วนบิทอื่นเป็น "1" แล้วค่อย and อย่างนี้
// Interrupt ADC
ISR (ADC_vect)
{
ADCSRA &= ~(1<<ADIF); // clear interupt flag
}
ถึงจะกระทบเพียงบิทเดียว อย่างนี้ถูกต้องใหมครับ

คราวนี้ก็ได้แล้ว ADC Noise Reduction Mode ลดสัญญานรบกวนขณะทำการแปลง adc พอเข้า sleep mode แล้วปิด clock ที่ไม่จำเป็น แล้วทำการแปลง adc เมื่อเสร็จแล้ว ก็ ADC interrupt complete แล้ว wake up เข้า code ส่วนแสดงผล
http://www.mediafire.com/file/5a745ea1zc8t6n5/adc_usart2%282%29.rar