Other Parts Discussed in Thread: SYSCONFIG
Tool/software:
Dear TI Support Team,
I am writing to inquire about the behavior of the ADC module on the LP-MSPM0G3519 using TI's AUTOSAR 4.3.1-based source code package, version 1.1.0. I have configured the ADC for single-channel, one-shot mode with software triggering and no group priorities. DMA is used to transfer the converted ADC values. I have attached the relevant XDM EB Tresos configuration file for your review.
Expected Behavior:
After software initialization and starting the conversion for a specific group ID, I expect Adc_StartGroupConversion() to trigger an ADC conversion each time it is called.
Current Behavior:
The ADC conversion only occurs once after software initialization. Subsequent calls to Adc_StartGroupConversion() do not trigger new conversions.
Investigation Findings:
My investigation suggests that Adc_StartGroupConversion() only sets the SC bit in the CTL1 register. It does not enable conversions (ENC bit in CTL0), which appears to be handled exclusively by ADC12_enableConversions() within the Adc_Init() function.
Currently, the only workaround I have found is to initialize the ADC, start the conversion, and then deinitialize and reinitialize the ADC after retrieving the data. This is necessary because no public interface is provided to enable conversions (set ENC in CTL0) besides ADC12_enableConversions(), which is called internally only by Adc_Init().
Questions:
- Given my configuration (single-channel, one-shot, software trigger, DMA), what is the expected behavior of Adc_StartGroupConversion()? Should it trigger a conversion on each call, or only after reinitialization?
- What modifications are needed to achieve the desired behavior of triggering a new conversion every time Adc_StartGroupConversion() is called?
- Does this require an update to the TI source code package, or can the issue be resolved with a different technique on the application side?
Thank you for your time and assistance.