This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM2634: DMA interrupt occurs only once with ADC0_INT1 as trigger even though when Cache Invalidation is performed

Part Number: AM2634

Dear TI experts,

We are using the example adc_soc_continuous_dma from SDK.

In this example the DMA is configured have a interrupt only once but we are trying to get subsequent interrupt from ADC which is a trigger for DMA.

We need ADC interrupt ---> DMA interrupt that occurs indefinately after every ADC conversion.

So the below changes we have done:

1) Commented the disable trigger from PWM as this is needed for ADC functioning.

2) Commented the function which stops the ADC as shown below in DMA ISR:

3) Performed the Cache Invalidation after DMA completes the transfer and again Validation in the next iteration.

Please find the entrie code below:

Fullscreen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
/*
* Copyright (C) 2022 Texas Instruments Incorporated
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the
* distribution.
*
* Neither the name of Texas Instruments Incorporated nor the names of
* its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Is there any SDK functions which we need to call to get the next DMA interrupt or Clearing after 1st DMA interrupt ?