-

Dependencies:   mbed

Committer:
dkakarigi
Date:
Thu Feb 04 21:16:43 2021 +0000
Revision:
0:b85fc380ef49
-

Who changed what in which revision?

UserRevisionLine numberNew contents of line
dkakarigi 0:b85fc380ef49 1 #include "mbed.h"
dkakarigi 0:b85fc380ef49 2
dkakarigi 0:b85fc380ef49 3
dkakarigi 0:b85fc380ef49 4 InterruptIn prekid (USER_BUTTON);
dkakarigi 0:b85fc380ef49 5 AnalogIn senzor(PA_0);
dkakarigi 0:b85fc380ef49 6 Serial pc(USBTX, USBRX);
dkakarigi 0:b85fc380ef49 7 float ispis;
dkakarigi 0:b85fc380ef49 8 Ticker blink;
dkakarigi 0:b85fc380ef49 9 PwmOut zvuk(D2);
dkakarigi 0:b85fc380ef49 10 DigitalOut led(D3);
dkakarigi 0:b85fc380ef49 11 int restart;
dkakarigi 0:b85fc380ef49 12
dkakarigi 0:b85fc380ef49 13
dkakarigi 0:b85fc380ef49 14
dkakarigi 0:b85fc380ef49 15 void flip()
dkakarigi 0:b85fc380ef49 16 {
dkakarigi 0:b85fc380ef49 17
dkakarigi 0:b85fc380ef49 18 led=!led;
dkakarigi 0:b85fc380ef49 19 }
dkakarigi 0:b85fc380ef49 20
dkakarigi 0:b85fc380ef49 21 void pwm()
dkakarigi 0:b85fc380ef49 22 {
dkakarigi 0:b85fc380ef49 23 zvuk.period(0.001031);
dkakarigi 0:b85fc380ef49 24 zvuk=0.5;
dkakarigi 0:b85fc380ef49 25 wait(0.5);
dkakarigi 0:b85fc380ef49 26
dkakarigi 0:b85fc380ef49 27
dkakarigi 0:b85fc380ef49 28 }
dkakarigi 0:b85fc380ef49 29 void pwm_off()
dkakarigi 0:b85fc380ef49 30 {
dkakarigi 0:b85fc380ef49 31 zvuk=0.0;
dkakarigi 0:b85fc380ef49 32 wait(0.5);
dkakarigi 0:b85fc380ef49 33
dkakarigi 0:b85fc380ef49 34
dkakarigi 0:b85fc380ef49 35 }
dkakarigi 0:b85fc380ef49 36
dkakarigi 0:b85fc380ef49 37
dkakarigi 0:b85fc380ef49 38 void zaustavi()
dkakarigi 0:b85fc380ef49 39 {
dkakarigi 0:b85fc380ef49 40 blink.detach();
dkakarigi 0:b85fc380ef49 41 led=0;
dkakarigi 0:b85fc380ef49 42 zvuk =0.0;
dkakarigi 0:b85fc380ef49 43 restart=1;
dkakarigi 0:b85fc380ef49 44
dkakarigi 0:b85fc380ef49 45 }
dkakarigi 0:b85fc380ef49 46
dkakarigi 0:b85fc380ef49 47 void alarm()
dkakarigi 0:b85fc380ef49 48 {
dkakarigi 0:b85fc380ef49 49 prekid.rise(&zaustavi);
dkakarigi 0:b85fc380ef49 50 blink.attach(&flip,0.5);
dkakarigi 0:b85fc380ef49 51 pwm();
dkakarigi 0:b85fc380ef49 52 pwm_off();
dkakarigi 0:b85fc380ef49 53
dkakarigi 0:b85fc380ef49 54
dkakarigi 0:b85fc380ef49 55 }
dkakarigi 0:b85fc380ef49 56
dkakarigi 0:b85fc380ef49 57 int main()
dkakarigi 0:b85fc380ef49 58 {
dkakarigi 0:b85fc380ef49 59
dkakarigi 0:b85fc380ef49 60 restart=0;
dkakarigi 0:b85fc380ef49 61
dkakarigi 0:b85fc380ef49 62 while (1)
dkakarigi 0:b85fc380ef49 63
dkakarigi 0:b85fc380ef49 64 {
dkakarigi 0:b85fc380ef49 65 ispis=senzor;
dkakarigi 0:b85fc380ef49 66 pc.printf("%f \n\r",ispis);
dkakarigi 0:b85fc380ef49 67
dkakarigi 0:b85fc380ef49 68 if(ispis>=0.6&&restart==0) {
dkakarigi 0:b85fc380ef49 69
dkakarigi 0:b85fc380ef49 70
dkakarigi 0:b85fc380ef49 71 alarm();
dkakarigi 0:b85fc380ef49 72
dkakarigi 0:b85fc380ef49 73 }
dkakarigi 0:b85fc380ef49 74
dkakarigi 0:b85fc380ef49 75 if(ispis>=0.6) {
dkakarigi 0:b85fc380ef49 76 blink.detach();
dkakarigi 0:b85fc380ef49 77 led=0;
dkakarigi 0:b85fc380ef49 78
dkakarigi 0:b85fc380ef49 79 }
dkakarigi 0:b85fc380ef49 80 }
dkakarigi 0:b85fc380ef49 81
dkakarigi 0:b85fc380ef49 82
dkakarigi 0:b85fc380ef49 83
dkakarigi 0:b85fc380ef49 84 }