Can you please post your complete project or a shortened version that shows the error so that we all can have a look at all of your settings. To do so, use
Creator->File->Create Workspace Bundle (minimal)
and attach the resulting file.
I noticed that I get reasonable readings when the ADC input is not close to zero volts. I also noticed that when I turn off averaging, it sometimes correctly reads 0x0000 for 0 volts. When it is zero, however, I still get the 0xFFFF returned from ADC_GetResult16().
Have you tried to use the ADC_IsEndConversion() API before calling ADC_GetResult16().
There is a chance that you might be reading the results while the conversion is in process.