Unable to interface AD7705 (SPI) with Arduino
I think the main problem is the values you are passing to spiTransfer().  By the way they are written I think you think you are passing binary values, you aren't you are passing decimal values.  So 

data = spiTransfer(00111000);  // select ch1 and setup read 16bit data   


should be 

data = spiTransfer(B00111000);  // select ch1 and setup read 16bit data  


The number needs prefixing with a B

Also passing a volatile parameter to this function looks wrong to me, especially when you only pass in constants.