I have an issue regarding the MPC5744P ADC self test. I am reading the bandgap voltage from the channel 10 of all the ADCs( i.e ADC0, ADC1, ADC2, ADC3 ) and I have followed the steps given in the ADC self test application note. ( Link given below ): https://www.nxp.com/docs/en/application-note/AN5015.pdf
initially I have tested only step 0 ( ALG 0 ), i.e to measure the band gap voltage which is obtained in the STDR1[TC_DATA] and valid bit STDR1[VALID] should be set, when the MCR[NSTART] is done.
But in my case, the STDR1[TC_DATA] is updated correctly as 1.19V, but the valid bit is set initially and getting cleared when I am waiting for end of conversion ( EOC ) flag to get updated. But STDR1[TC_DATA] is still present even after the valid bit is cleared. I have attached the screenshots of the register values obtained during the test.
- Screenshot showing the value of STDR1 register value after MCR[NSTART].( right side in yellow colour ).
- Screenshot showing the STDR1 register value in the next step after the while loop is executed. That is to wait till end of coversion flag is updated. In this case the valid bit is cleared and only the TC_DATA which is the band gap voltage is present.
Code part is followed same as given in the application note mentioned above. Can anyone please let me know, if any other changes in the initialization or configuration is required to solve this issue.
Thank you in advance.