Try two things put the pause 8 right before you adc read and second put the pause 8 at the end of your adc read just before return. you could be trying to read the adc too fast.
Look up the adc chip and check the speed of reading or see if there is a way to do multiple reads and if its different than single reads. also check the state that you are leaving the adc in just before the return command you may need a low there and a high to low just before the shiftin command.
Bookmarks