implemented: ADC setups and channels are dumped to the logfile
This commit is contained in:
BIN
BF_companion
BIN
BF_companion
Binary file not shown.
71
main.c
71
main.c
@ -153,8 +153,38 @@ const int FFT_length = 1000;
|
|||||||
static uint32_t f_channels[ADC_LCH_CNT] = {0, 0, 1, 0};
|
static uint32_t f_channels[ADC_LCH_CNT] = {0, 0, 1, 0};
|
||||||
// режимы измерения для каналов //
|
// режимы измерения для каналов //
|
||||||
static uint32_t f_ch_modes[ADC_LCH_CNT] = {X502_LCH_MODE_COMM, X502_LCH_MODE_COMM,X502_LCH_MODE_COMM,X502_LCH_MODE_COMM};
|
static uint32_t f_ch_modes[ADC_LCH_CNT] = {X502_LCH_MODE_COMM, X502_LCH_MODE_COMM,X502_LCH_MODE_COMM,X502_LCH_MODE_COMM};
|
||||||
|
//static uint32_t f_ch_modes[ADC_LCH_CNT] = {X502_LCH_MODE_COMM};
|
||||||
|
//static uint32_t f_ch_modes[ADC_LCH_CNT] = {X502_LCH_MODE_COMM, X502_LCH_MODE_COMM,X502_LCH_MODE_COMM,X502_LCH_MODE_COMM,X502_LCH_MODE_COMM,X502_LCH_MODE_COMM,X502_LCH_MODE_COMM,X502_LCH_MODE_COMM,X502_LCH_MODE_COMM,X502_LCH_MODE_COMM};
|
||||||
|
//static uint32_t f_ch_modes[ADC_LCH_CNT] = {X502_LCH_MODE_COMM, X502_LCH_MODE_ZERO,X502_LCH_MODE_ZERO,X502_LCH_MODE_ZERO,X502_LCH_MODE_ZERO,X502_LCH_MODE_ZERO,X502_LCH_MODE_ZERO,X502_LCH_MODE_ZERO,X502_LCH_MODE_ZERO,X502_LCH_MODE_ZERO};
|
||||||
|
//X502_LCH_MODE_COMM0
|
||||||
|
//X502_LCH_MODE_DIFF
|
||||||
|
//X502_LCH_MODE_ZERO
|
||||||
|
|
||||||
// диапазоны измерения для каналов //
|
// диапазоны измерения для каналов //
|
||||||
static uint32_t f_ch_ranges[ADC_LCH_CNT] = {X502_ADC_RANGE_5, X502_ADC_RANGE_5,X502_ADC_RANGE_5,X502_ADC_RANGE_5};
|
static uint32_t f_ch_ranges[ADC_LCH_CNT] = {X502_ADC_RANGE_5, X502_ADC_RANGE_5,X502_ADC_RANGE_5,X502_ADC_RANGE_5};
|
||||||
|
//static uint32_t f_ch_ranges[ADC_LCH_CNT] = {X502_ADC_RANGE_1};
|
||||||
|
//static uint32_t f_ch_ranges[ADC_LCH_CNT] = {X502_ADC_RANGE_1, X502_ADC_RANGE_1,X502_ADC_RANGE_1,X502_ADC_RANGE_1,X502_ADC_RANGE_1,X502_ADC_RANGE_1, X502_ADC_RANGE_1,X502_ADC_RANGE_1,X502_ADC_RANGE_1,X502_ADC_RANGE_1};
|
||||||
|
//static uint32_t f_ch_ranges[ADC_LCH_CNT] = {X502_ADC_RANGE_5, X502_ADC_RANGE_5,X502_ADC_RANGE_5,X502_ADC_RANGE_5,X502_ADC_RANGE_5,X502_ADC_RANGE_5, X502_ADC_RANGE_5,X502_ADC_RANGE_5,X502_ADC_RANGE_5,X502_ADC_RANGE_5};
|
||||||
|
//X502_ADC_RANGE_10 Диапазон +/-10V
|
||||||
|
//X502_ADC_RANGE_5 Диапазон +/-5V
|
||||||
|
//X502_ADC_RANGE_2 Диапазон +/-2V
|
||||||
|
//X502_ADC_RANGE_1 Диапазон +/-1V
|
||||||
|
//X502_ADC_RANGE_05 Диапазон +/-0.5V
|
||||||
|
//X502_ADC_RANGE_02 Диапазон +/-0.2V
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#define SYNC_FREC_SOURCE X502_SYNC_DI_SYN1_FALL
|
||||||
|
#define SYNC_START_SOURCE X502_SYNC_DI_SYN2_RISE
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//X502_SYNC_INTERNAL
|
||||||
|
//X502_SYNC_EXTERNAL_MASTER1
|
||||||
|
//X502_SYNC_DI_SYN1_RISE
|
||||||
|
//X502_SYNC_DI_SYN1_FALL
|
||||||
|
//X502_SYNC_DI_SYN2_RISE
|
||||||
|
//X502_SYNC_DI_SYN2_FALL
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -390,11 +420,35 @@ int32_t f_setup_params(t_x502_hnd hnd) {
|
|||||||
|
|
||||||
//=======================================================//
|
//=======================================================//
|
||||||
//for debug purposes:
|
//for debug purposes:
|
||||||
X502_SetRefFreq(hnd, X502_REF_FREQ_2000KHZ);
|
// X502_SetRefFreq(hnd, X502_REF_FREQ_2000KHZ);
|
||||||
X502_SetSyncMode(hnd, X502_SYNC_DI_SYN1_FALL);
|
// X502_SetSyncMode(hnd, X502_SYNC_DI_SYN1_FALL);
|
||||||
//X502_SetSyncMode(hnd, X502_SYNC_INTERNAL);
|
//X502_SetSyncMode(hnd, X502_SYNC_INTERNAL);
|
||||||
//X502_SetSyncStartMode(hnd, X502_SYNC_INTERNAL); //start ADC samping after executing X502_StreamsStart()
|
//X502_SetSyncStartMode(hnd, X502_SYNC_INTERNAL); //start ADC samping after executing X502_StreamsStart()
|
||||||
X502_SetSyncStartMode(hnd, X502_SYNC_DI_SYN2_RISE); //start ADC sampling by external trigger
|
// X502_SetSyncStartMode(hnd, X502_SYNC_DI_SYN2_RISE); //start ADC sampling by external trigger
|
||||||
|
|
||||||
|
X502_SetSyncMode(hnd, SYNC_FREC_SOURCE);
|
||||||
|
//X502_SetSyncMode(hnd, X502_SYNC_INTERNAL);
|
||||||
|
X502_SetSyncStartMode(hnd, SYNC_START_SOURCE);
|
||||||
|
|
||||||
|
//X502_SYNC_INTERNAL
|
||||||
|
//X502_SYNC_EXTERNAL_MASTER1
|
||||||
|
//X502_SYNC_DI_SYN1_RISE
|
||||||
|
//X502_SYNC_DI_SYN1_FALL
|
||||||
|
//X502_SYNC_DI_SYN2_RISE
|
||||||
|
//X502_SYNC_DI_SYN2_FALL
|
||||||
|
|
||||||
|
//set ADC sample frequency from internal generator with frequency 2 MHz
|
||||||
|
//X502_SetRefFreq(hnd, X502_REF_FREQ_1500KHZ);
|
||||||
|
//X502_REF_FREQ_1500KHZ
|
||||||
|
//X502_REF_FREQ_2000KHZ
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -1088,6 +1142,17 @@ int main(int argc, char** argv) {
|
|||||||
char logfilename[] = " ";
|
char logfilename[] = " ";
|
||||||
sprintf(&logfilename, "received_data_%ld.csv", seconds);
|
sprintf(&logfilename, "received_data_%ld.csv", seconds);
|
||||||
//logfile_ptr = fopen(logfilename, "w");
|
//logfile_ptr = fopen(logfilename, "w");
|
||||||
|
FILE *logfile_ptr;
|
||||||
|
logfile_ptr = fopen(logfilename, "a");
|
||||||
|
|
||||||
|
fprintf(logfile_ptr, "sync_frec_source: %d \nsync_start_source: %d \n", SYNC_FREC_SOURCE, SYNC_START_SOURCE);
|
||||||
|
|
||||||
|
for (int chan_I = 0; chan_I < ADC_LCH_CNT; chan_I++){
|
||||||
|
fprintf(logfile_ptr, "chan: %d, mode: %d, range: %d \n", chan_I, f_ch_modes[chan_I], f_ch_ranges[chan_I]);
|
||||||
|
}
|
||||||
|
fclose(logfile_ptr);
|
||||||
|
|
||||||
|
|
||||||
printf("dumping to file: %s\n", logfilename);
|
printf("dumping to file: %s\n", logfilename);
|
||||||
|
|
||||||
printf("\n");
|
printf("\n");
|
||||||
|
|||||||
Reference in New Issue
Block a user