Hi marcschuman,
After analyzing your post adc picture again, we think it may caused by your code about the adc result saving, not the adc performance, DNL shouldn't like that.
Because you don't want to give me your adc test code, now, to work in accordance, please use my test project and test on your side with your precision ramp wave.
My code is modified based on the lpcopen_2_12_lpcxpresso_nxp_lpcxpresso_11u68, and test on the LPCXpresso LPC11U68 board, convert ADC channel 0, PIO1_9.
The code will trigger the adc convert in 20us, and save the convert result to the buffer, after the result reach 1000 points, then stop adc converting and printf the data out.
If you want to change the trigger time to 1ms, you can modify adc.c file, line 204 configuration to:
SysTick_Config(48000);//1ms trigger
Please use my attached project, and test it on your side.
After testing, just like me sharing my test result.
Give me your precision ramp wave oscilloscope wave, zoom up to check whether it have the stage up.
And give me your test 1000 points data, and the according excel wave or the excel with test result directly.
You can find the 1000 points data from the uart0, PIO0_19(tx). PIO0_18(rx).
Waiting for your test result.
Have a great day,
Kerry
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------