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.

TMS320F28379D: F28379

Part Number: TMS320F28379D

Tool/software:

Hi everyone,

I am working on a radiation detection project. I need to sample the output of amplifier circuit (Cremat) with ADC in C2000 Launchpad. I am sure that the code and connections are ok. When I measure the output of the amplfier by oscilloscope, I can see the gamma peak which is shown in picture below. However, when I conenct the output of the amplifier to the ADC input of C2000,  I see strange data on the graph. could you please help me if I miss somethnig like impedance matching etc.?

  • Hi,

    Please see our app note on ADC input circuit design: https://www.ti.com/lit/spract6

    I don't think the content covered in that app note will be the cause your error, since that would normally cause your output to be lower than expected.

    Are you sure that you set the graph up correctly? If you store ADC results in a buffer, are you seeing most of the samples be close to 4096? 

    Are you using on of our examples? If so, which one?

    Best Regards,

    Ben Collier

  • Hi,

    Yes I am using buffer and most of the samples 4095 as you said. The graph should be ok. The code is attached below. I use TI example for buffer and the left is my work. 

    Fullscreen
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    //###########################################################################
    // Author: Halit Durukan
    //###########################################################################
    #include "F28x_Project.h" // Device Headerfile and Examples Include File
    #define ADC_BUF_LEN 1000
    //###########################################################################
    // Global variables used in the project before main function. Declare other // variables in this section of the code.
    //###########################################################################
    Uint16 Result = 0;
    Uint16 AdcBuf[ADC_BUF_LEN];
    //###########################################################################
    // Declare the service routines and functions
    //###########################################################################
    interrupt void xint1_isr(void);
    interrupt void cpu_timer(void);
    interrupt void adcint1_isr(void);
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

  • Dear Benjamin, 

    I solved my problem but would like to inform you about the problem I faced because the solution and the problem itself are very funny :D The last time I got correct result was yesterday. Since then, I have searched every single documentations from datasheets to forums. I was changing my sampling window (ACQPS) and sampling freq, however it din't work at all. After numerous same trivial, I started to feel like an idiot because it suddenly worked! Can you guess what changed? Just PC was unplugged :D For some reason I needed to fix my computer in the past, now it is clear that a few cable or screws are out :D when I plug PC and employ the C2000, it reads periodic noise for some reason.