Library for NUCLEO-F072RB Made as a project
Dependents: Konstrukcijski_LAMPICE Konstrukcijski_LAMPICE
Revision 0:4c714cae8da3, committed 2021-05-06
- Comitter:
- kurton_ing
- Date:
- Thu May 06 19:23:26 2021 +0000
- Commit message:
- a
Changed in this revision
LAMPICE.cpp | Show annotated file Show diff for this revision Revisions of this file |
LAMPICE.h | Show annotated file Show diff for this revision Revisions of this file |
diff -r 000000000000 -r 4c714cae8da3 LAMPICE.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/LAMPICE.cpp Thu May 06 19:23:26 2021 +0000 @@ -0,0 +1,178 @@ +#include "LAMPICE.h" +#include "mbed.h" +LAMPICE::LAMPICE(PinName LED1, PinName LED2, PinName trimer, PinName TIPKALO1, PinName LED3, PinName pwmpin2) : _LED1(LED1), _LED2(LED2), _trimer(trimer), _TIPKALO1(TIPKALO1), _LED3(LED3), _LED4(pwmpin2) +{ + _LED1 = 0; + _LED2 = 0; + _trimer; + _TIPKALO1.rise(callback(this, &LAMPICE::button)); + _LED3.period(0.01); + _LED4.period(0.01); + _count; + _blinker; +} + +void LAMPICE::svjetla1(){ + float time; + time=_trimer; + + for(float i=0; i<=100; i++){ + _LED3=i/100; + wait(0.05*time); + } + + for(float i=100; i>=0; i--){ + _LED3=i/100; + wait(0.05*time); + } +} + +void LAMPICE::svjetla2(){ + float time; + time=_trimer; + + for(float i=0; i<=100; i++){ + _LED4=i/100; + wait(0.05*time); + } + + for(float i=100; i>=0; i--){ + _LED4=i/100; + wait(0.05*time); + } +} + +void LAMPICE::svjetla3(){ + float time; + time=_trimer; + + for(float i=0; i<=100; i++){ + _LED3=i/100; + wait(0.05*time); + } + + for(float i=0; i<=100; i++){ + _LED4=i/100; + wait(0.05*time); + } + + for(float i=100; i>=0; i--){ + _LED3=i/100; + _LED4=i/100; + wait(0.05*time); + } +} + +void LAMPICE::svjetla4(){ + _LED1=!_LED1; + wait(1); + _LED1=!_LED1; + _LED2=!_LED2; + wait(1); + _LED2=!_LED2; +} + +void LAMPICE::svjetla5(){ + float time; + time=_trimer; + + _LED1=!_LED1; + for(float i=0; i<=100; i++){ + _LED4=i/100; + wait(0.025*time); + } + + _LED1=!_LED1; + _LED2=!_LED2; + + for(float i=100; i>=0; i--){ + _LED4=i/100; + wait(0.025*time); + } + _LED2=!_LED2; +} + +void LAMPICE::svjetla6(){ + float time; + time=_trimer; + + _blinker.attach(callback(this, &LAMPICE::blink), 1); + + for(float i=0; i<=33; i++){ + _LED3=i/100; + _LED4=i/100; + wait(0.06*time); + } + for(float i=34; i<=66; i++){ + _LED3=i/100; + _LED4=i/100; + wait(0.02*time); + } + for(float i=67; i<=100; i++){ + _LED3=i/100; + _LED4=i/100; + wait(0.01*time); + } + + for(float i=100; i>=50; i--){ + _LED3=i/100; + _LED4=i/100; + wait(0.015*time); + } + for(float i=49; i>=0; i--){ + _LED3=i/100; + _LED4=i/100; + wait(0.06*time); + } + _blinker.detach(); + _LED1=0; +} + +int LAMPICE::flash(int n) +{ + _TIPKALO1.mode(PullDown); + + switch(_count){ + case 0: + svjetla1(); + n=0; + break; + case 1: + svjetla2(); + n=1; + break; + case 2: + svjetla3(); + n=2; + break; + case 3: + svjetla4(); + n=3; + break; + case 4: + svjetla5(); + n=4; + break; + case 5: + svjetla6(); + n=5; + break; + + } + + if(_count>5){ + _count=0; + } + return n; +} + +void LAMPICE::button(){ + + _count++; +} + +void LAMPICE::blink(){ + _LED1=!_LED1; +} + + \ No newline at end of file
diff -r 000000000000 -r 4c714cae8da3 LAMPICE.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/LAMPICE.h Thu May 06 19:23:26 2021 +0000 @@ -0,0 +1,28 @@ +#ifndef MBED_LAMPICE_H +#define MBED_LAMPICE_H +#include "mbed.h" +class LAMPICE +{ +public: + LAMPICE(PinName LED1, PinName LED2, PinName trimer, PinName TIPKALO1, PinName LED3, PinName LED4); + int flash(int n); + void svjetla1(); + void svjetla2(); + void svjetla3(); + void svjetla4(); + void svjetla5(); + void svjetla6(); + void button(void); + void blink(); +private: + DigitalOut _LED1; + DigitalOut _LED2; + AnalogIn _trimer; + InterruptIn _TIPKALO1; + PwmOut _LED3; + PwmOut _LED4; + Ticker _blinker; + volatile int _count; +}; + +#endif \ No newline at end of file