Cual es el error que tienes, como se comporta?, no alcanzo a ver bien tu diagrama, lo podrías poner mas grande. aunque te recomiendo que uses alguno de los integrados de puente H, como el L293 o el L298
lo que veo en tu código es que tienes algunas intrucciones repetidas, pero eso no debería afectar, otra cosa que veo es que lees el puerto ADC constantemente dentro de tu while, te recomiendo ponerle un retardo entre cada actualización.
Saludos