forked from acco/chti23
94 lines
1.9 KiB
C
94 lines
1.9 KiB
C
#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);
|
|
}*/
|
|
}
|
|
}
|
|
|