/*main*/ void main(void) { /*Preliminary parts not important*/ LCD_Char_1_Start(); ADC_DelSig_1_Start(); ADC_DelSig_1_StartConvert(); Configure_DMA(); isr_1_StartEx(Buffer_complete); isr_2_StartEx(LPF_buffer_complete); ADC_DelSig_1_SetCoherency(ADC_DelSig_1_COHER_MID); Filter_SetDalign(Filter_STAGEA_DALIGN,Filter_ENABLED); Filter_SetDalign(Filter_HOLDA_DALIGN,Filter_ENABLED); Filter_SetCoherency(Filter_STAGEA_COHER,Filter_KEY_MID); Filter_SetCoherency(Filter_HOLDA_COHER,Filter_KEY_MID); Filter_SetCoherency(Filter_CHANNEL_A,Filter_KEY_MID); Filter_SetDalign(Filter_STAGEB_DALIGN,Filter_ENABLED); Filter_SetDalign(Filter_HOLDB_DALIGN,Filter_ENABLED); Filter_SetCoherency(Filter_STAGEB_COHER,Filter_KEY_MID); Filter_SetCoherency(Filter_HOLDB_COHER,Filter_KEY_MID); Filter_SetCoherency(Filter_CHANNEL_B,Filter_KEY_MID); CyGlobalIntEnable; Filter_Start(); /*Writes ADC values to ADC_samples array*/ while(1){ if (isr_BC_flag==1){ arm_cfft_q15(&arm_cfft_sR_q15_len256, Buffer_samples, 0, 1); arm_cmplx_mag_q15(Buffer_samples, magoutput, fftlength); CyDmaChEnable(DMA_2_Chan, 1); isr_BC_flag=0; isr_1_ClearPending(); } } }
/******************************************************************************* * Function Name: main ******************************************************************************** * * Summary: * Main function performs following functions: * 1: Enables global interrupts * 2: Start all components on the schematic * 3: Calls a function to configure DMA * Parameters: * None. * * Return: * None. * *******************************************************************************/ int main() { /* Start all components used on schematic */ ADC_DelSig_IRQ_Start(); //isr_StartEx(filterVDAC); ADC_DelSig_Start(); ADC_DelSig_StartConvert(); VDAC8_Start(); //Opamp_Start(); Filter_Start(); /* User-implemented function to set-up DMA */ DMA_Config(); /* Enable Global Interrupts */ CYGlobalIntEnable; for(;;) { } } /* End of main */
int main() { /* Start all components used on schematic */ VDAC8_1_Start(); VDAC8_2_Start(); Opamp_1_Start(); Opamp_2_Start(); Filter_Start(); Timer_Start(); ISR_Timer_StartEx(Timer_interrupt_handler); /* Enable the interrupt register bit to poll Value 1 for Channel A, Value 2 for Channel B */ Filter_INT_CTRL_REG |= (1 << Filter_CHANNEL_A); CyGlobalIntEnable; for(;;) { //CyDelay(10); } } /* End of main */