Dependencies: LCD_DISCO_F429ZI mbed BSP_DISCO_F429ZI
Diff: Tick/Tick.cpp
- Revision:
- 39:b069cf6be013
- Parent:
- 35:bda112796505
- Child:
- 42:53780e5a6acb
--- a/Tick/Tick.cpp Mon May 20 11:34:16 2019 +0000 +++ b/Tick/Tick.cpp Thu May 23 09:03:30 2019 +0000 @@ -1,7 +1,11 @@ #include "Tick.h" -int GLOBAL_VALEUR_TICK; //Valeur facile d'accès à incrémanter grâce au ticker +int GLOBAL_VALEUR_TICK=0; //Valeur facile d'accès à incrémanter grâce au ticker Ticker timer; // +AnalogOut pinHP(PA_5); //Pin pour le reveil +Ticker son; //son utile pour l'alarme +int GLOBAL_BOOL_ALARME=0; +extern Serial pc; void T_incermment(){ GLOBAL_VALEUR_TICK++; @@ -16,11 +20,9 @@ } } -int* T_initialise(int tempsS){ - int* ret=&GLOBAL_VALEUR_TICK; - *ret=0; +void T_initialise(int tempsS){ timer.attach(&T_incermment,tempsS); - return ret; + son.attach(&T_sendSon,0.5); } void T_test(){ @@ -30,4 +32,23 @@ BS_displayChiffre100Clean(35,25,GLOBAL_VALEUR_TICK,5,LCD_COLOR_RED,LCD_COLOR_WHITE); wait(0.1); } -} \ No newline at end of file +} + +void T_sendSon(){ + if(GLOBAL_BOOL_ALARME){ + const double pi = 3.141592653589793238462; + const double amplitude = 5.5f; + const double offset = 65535/2; + double rads = 0.0; + uint16_t sample = 0; + pc.printf("entree dans la boucle\n"); + for (int i = 0; i < 12000; i++) { + rads = (pi * i) / 180.0f; + sample = (uint16_t)(amplitude * (offset * (cos(rads + pi))) + offset); + pinHP.write_u16(sample); + + } + pc.printf("sortie de la boucle\n"); + } +} +