![](/media/cache/group/default_image.jpg.50x50_q85.jpg)
fini (je crois)
Dependencies: BSP_DISCO_L476VG LCD_DISCO_L476VG
Helo
Diff: main.cpp
- Revision:
- 6:41d6f5a24ff0
- Parent:
- 5:ff9848a77dac
- Child:
- 7:01c904fd8ae3
--- a/main.cpp Fri Jun 05 13:50:16 2020 +0000 +++ b/main.cpp Fri Jun 05 18:42:14 2020 +0000 @@ -3,37 +3,51 @@ #include "LCD_DISCO_L476VG.h" #define PI 3.14159265358979323846 -#define PER 1//0.0025 -#define res 100 +#define PER 1 +#define cadence 0.01 LCD_DISCO_L476VG lcd; Serial pc(SERIAL_TX, SERIAL_RX); Ticker tick_cadence; -bool flag_envoi = 0; +Ticker tick_moy; +bool flag_data = 0, flag_moy = 0; -void interrupt(void){ - flag_envoi = 1; +void interrupt_data(void){ + flag_data = 1; +} +void interrupt_moy(void){ + flag_moy = 1; } int main(void){ pc.baud(115200); - unsigned char i = 0; unsigned char display[7] = {0}; - int y1; - unsigned char t; + float t, y1, y2, moy; - tick_cadence.attach(&interrupt, 0.01); + tick_cadence.attach(&interrupt_data, 0.01); + tick_moy.attach(&interrupt_moy, 1); + //------------------------------------------------------------------------- while(1){ - if(flag_envoi){// envoi des données - pc.printf("$%d %d;",t, y1) - flag_envoi=0; + if(flag_data){// envoi des données + pc.printf("$%f %f;", y1, y2); + flag_data=0; } - y1 = 255*sin(2.0*PI*t/255.0); - t++; - wait(0.01); + if(flag_moy){// moyennage + moy = moy/256; + pc.printf("$%f %f %f;", y1, y2, moy); + moy = 0; + flag_moy = 0; + } + else + moy += y2; + + y1 = 2.0*sin(2.0*PI*(1.0/PER)*(t*cadence)); + y2= 2* fabs(y1) ; + t++;; + wait(cadence); } } \ No newline at end of file