XMC4200 ADC sampling rate per frame (Distance2GO)

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
User15867
Level 1
Level 1
5 questions asked First reply posted First question asked
In Distance2GO, minimum frame interval is 50 ms and FMCW sampling rate Fs = DATA_SIZE*1000*1000/chirp_time_us, IFmax = Fs/2. I'm wondering how is it sampled, is ADC sampling continuously or it samples only parts of IF signal, dictated by triggers? In what file can I find more information about this?
0 Likes
5 Replies
User15583
Level 3
Level 3
First solution authored 10 replies posted 5 replies posted
You can set the minimum frame interval to the value that is calculated by the formulas you find in DAVE or you read the value in MATLAB.
E.g. for FMCW mode with 1 chirp per frame and 1500 us chirp time the min frame interval is 18608 us. Setting it lower causes errors.
0 Likes
User15867
Level 1
Level 1
5 questions asked First reply posted First question asked
radaruser wrote:
You can set the minimum frame interval to the value that is calculated by the formulas you find in DAVE or you read the value in MATLAB.
E.g. for FMCW mode with 1 chirp per frame and 1500 us chirp time the min frame interval is 18608 us. Setting it lower causes errors.


Is it set by min_frame_interval or frame_interval_usec variables? In what file?
0 Likes
User15583
Level 3
Level 3
First solution authored 10 replies posted 5 replies posted
As far as I know it is set by min_frame_interval_us. This value is calculated in Distance2Go\src\firmware_api.c, function is called 'int32_t radar_get_min_frame_interval(Radar_Handle_t device, uint32_t* min_frame_interval_us)'. See lines 300-338.
0 Likes
murshadi
Employee
Employee
First like given Welcome! 5 replies posted
In Distance2Go, a frame is used as a boundary within which data is acquired (via ADC Sampling), algorithm processes this data (produce target results) and results sent back to the GUI via USB interface. So, if we configure for single FMCW chirp of 1.5msec and 250 samples per chirp, then sampling frequency is Fs = 250 / 1.5msec = 166.667 kHz, which means ADCs are only active during 1.5msec where chirp signal is generated to sample time domain data for further processing. XMC ADC can go up till 1.6MHz. We Ave put a minimum frame period limit of 50msec, to keep in mind that if this Radar GUI is running on a slow Laptop, then time to receive a frame and plot the respective time domain and freq domain plots should be enough to not show a lag.
If one is not interested in Radar GUI visualization then, one can set this frame period to a minimum frame interval given by radar_get_min_frame_interval() method. One can simply change the FRAME_PERIOD_ms macro in config.h file or call radar_set_automatic_frame_trigger() in firmware_api.c file.
0 Likes
User15583
Level 3
Level 3
First solution authored 10 replies posted 5 replies posted
Hello murshadi,

you said that the sampling frequency for FMCW chirps is SamplesPerChirp/ChirpDuration. But why is it DataSize/ChirpDuration in config.h (Doppler_FMCW project, config.h line 72)??? Isn't that a contradiction?
0 Likes