ADC calibration values

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

ADC calibration values

2,209 Views
billnd
Contributor IV

Hi all,

I'm using a K10 ADC in single ended mode, and trying to understand the calibration process. I have two main questions...

1. ADCx_CLPD, should this value be taken into account when generating ADCx_PG? The value seems to be generated during a self cal, but the documentation doesn't mention it.The K10 RM only says in 33.4.7..."2. Add the plus-side calibration results CLP0, CLP1, CLP2, CLP3, CLP4, and CLPS to the variable." So should CLPD also be added?

2. If storing calibration values in eeprom, so that calibration doesn't have to be re-done every boot, which registers need to be remembered? The documentation talks about 20 register stores, that makes me think its CLP0, 1, 2, 3, 4, CLPS, CLPD, OFFS, PG and MG for each ADC?

Thanks in advance,

Bill

Labels (1)
0 Kudos
6 Replies

1,106 Views
bryancole-b4682
NXP Employee
NXP Employee

All,

Just to clarify, the procedure desribed in the reference manual for calculating the gain register values ADCx_PG (and ADCx_MG) correctly omits CLPD (and CLMD). The gain register values are meant to subtract out any extra capacitance added during the sample phase in order to correct for capacitor mismatch. Only the capacitance that was sampled on needs to be removed. The registers CLPD and CLMD compensate for the differential bias capacitor which is not connected during the sample. Therefore, these registers should not be added to the gain register calculation.

Regards,

Bryan

0 Kudos

1,106 Views
jeremyzhou
NXP Employee
NXP Employee

Hi Bilnd,

Thank you very much for your focus on Freescale Kinetis product. I'm glad to provide service for you.

1. ADCx_CLPD, should this value be taken into account when generating ADCx_PG? The value seems to be generated during a self cal, but the documentation doesn't mention it.The K10 RM only says in 33.4.7..."2. Add the plus-side calibration results CLP0, CLP1, CLP2, CLP3, CLP4, and CLPS to the variable." So should CLPD also be added?

To be honest, I've also felt a little weird about it. I'll to discuss this questions with my co-wokers later and update you if work it out.

2. If storing calibration values in eeprom, so that calibration doesn't have to be re-done every boot, which registers need to be remembered? The documentation talks about 20 register stores, that makes me think its CLP0, 1, 2, 3, 4, CLPS, CLPD, OFFS, PG and MG for each ADC?

I'd like to suggest  that you should store all calibration results which contain two seven calibration values of side gereral calibration value regsiter.

If you have any further questions, please feel free to conatct with me.

Have a nice day!

Ping

0 Kudos

1,106 Views
billnd
Contributor IV

Jeremyzhou,

Thanks for your reply.

Did you get any further info regarding point 1?

Could you please clarify your response to point 2? I don't follow exactly what your are saying.

Thanks,

BillND

0 Kudos

1,106 Views
jeremyzhou
NXP Employee
NXP Employee

Hi Billnd,

They've also not focused this issue before, however we all think the CPLD is added just like RM state.

The two seven calibration valuses meanCLP0[5:0], CLP1[6:0], CLP2[7:0], CLP3[8:0], CLP4[9:0], CLPS[5:0], CLPD[5:0] and CLM0[5:0], CLM1[6:0], CLM2[7:0], CLM3[8:0],CLM4[9:0], CLMS[5:0],CLMD[5:0].

You should restore all these calibration valuses.

Have a nice day!

Ping

0 Kudos

1,106 Views
billnd
Contributor IV

JZ,

Thanks for the quick reply.

1. The reference manual I have...

K10P100M100SF2V2RM

Rev. 2 Jun 2012

...states that when generating PG/MG, only CLP0, CLP1, CLP2, CLP3, CLP4 and CLPS should be added. No mention of the CLPD register. Is this what you mean?

2. I now understand the two seven calibration values, that has cleared that up at least.

Cheers

BillND

0 Kudos

1,106 Views
jeremyzhou
NXP Employee
NXP Employee

Hi Bilind,

Yes, no mention of the CLPD register in all RM which I've reviewed.

I made a mistake. You also need to store ADC offset correction register (OFS) besides store the two seven calibration values.
Have a great day,
Ping

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos