#include "DriverJeuLaser.h" #include "Affichage_Valise.h" extern int DFTReel(short int *Signal, int k); extern int DFTImage(short int *Signal, int k); extern int DFTTotale(short int *Signal, int k); extern void CallbackSon(void); extern short int LeSignal[]; int tab_Score[4] = {0,0,0,0}; //Tableau des scores avec une case/joueur int tabDFT[64]; int i; int tabFlag[4]; short int buffer_dma[64]; void * Systick_callback(){ Start_DMA1(64); Wait_On_End_Of_DMA1(); Stop_DMA1; for(i=0;i<4;i++){ tabFlag[i] = 1; } for(i = 0;i<64;i++){ tabDFT[i] = DFTTotale(&(buffer_dma[0]), i); } /*if(tabDFT[17] >= ){ tab_Score[0] ++; }*/ //pour joueur 1 // peu faire plus efficace } void Callback_Affich(){ } int main(void) { // =========================================================================== // ============= INIT PERIPH (faites qu'une seule fois) ===================== // =========================================================================== // Apr?s ex?cution : le coeur CPU est clock? ? 72MHz ainsi que tous les timers CLOCK_Configure(); //Config Timer Son Timer_1234_Init_ff(TIM4,6552); Active_IT_Debordement_Timer(TIM4,2,CallbackSon); GPIO_Configure(GPIOB, 0, OUTPUT, ALT_PPULL); //Config Timer Affichage Timer_1234_Init_ff(TIM1,6552); Active_IT_Debordement_Timer(TIM1,8,Callback_Affich); GPIO_Configure(GPIOB, 1, OUTPUT, ALT_PPULL); //Config SysTick/DMA Systick_Period_ff(360000); Systick_Prio_IT( 0, Systick_callback); SysTick_On ; SysTick_Enable_IT ; //Config TIM2/ADC Init_TimingADC_ActiveADC_ff( ADC1, 72 ); Single_Channel_ADC( ADC1, 2 ); Init_Conversion_On_Trig_Timer_ff( ADC1, TIM2_CC2, 225 ); Init_ADC1_DMA1( 0, buffer_dma ); //============================================================================ while (1) { /*for(i = 0;i<64;i++){ //tabDFT[0] = DFTReel(&(LeSignal[0]), 0); tabDFT[i] = DFTTotale(&(buffer_dma[0]), i); //tabDFT[2] = DFTReel(&(LeSignal[0]), 2); }*/ } }