ZI6 lib
Dependencies: C12832
Diff: SinusGen.cpp
- Revision:
- 0:3dddb6a52298
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/SinusGen.cpp Thu Jun 23 13:45:33 2016 +0000 @@ -0,0 +1,44 @@ +#include "mbed.h" +#include "C12832.h" +#include "SinusGen.h" + +SinusGen::SinusGen(PinName pot1Pin, PinName pot2Pin, PinName tipkaloPin) : pot1(pot1Pin), pot2(pot2Pin), tipkalo(tipkaloPin), lcd(p5, p7, p6, p8, p11), led1(LED1), led2(LED2), led3(LED3), led4(LED4) { + ticker.attach(this, &SinusGen::generirajPrikazi, 0.05); + tipkalo.rise(this, &SinusGen::izborLedice); + lcd.cls(); + izbor = 0; + t = 0; + led1 = led2 = led3 = led4 = 0; + debounce.start(); +} + +void SinusGen::generirajPrikazi() { + U = pot1.read(); + A = pot2.read(); + t += 0.05; + y = U + A*sin(3.14f*t); + lcd.locate(0,3); + lcd.printf("y(t) = %.2f + %.2fsin(3.14t)", U, A); + led1 = led2 = led3 = led4 = 0; + switch(izbor) { + case 0: + led1 = y; + break; + case 1: + led2 = y; + break; + case 2: + led3 = y; + break; + case 3: + led4 = y; + break; + } +} + +void SinusGen::izborLedice() { + if (debounce.read_ms() > 20) { + izbor = ++izbor % 4; + debounce.reset(); + } +} \ No newline at end of file