ZI6 lib

Dependencies:   C12832

Dependents:   PURS_ZI_006

Committer:
tbjazic
Date:
Thu Jun 23 13:45:33 2016 +0000
Revision:
0:3dddb6a52298
initial

Who changed what in which revision?

UserRevisionLine numberNew contents of line
tbjazic 0:3dddb6a52298 1 #include "mbed.h"
tbjazic 0:3dddb6a52298 2 #include "C12832.h"
tbjazic 0:3dddb6a52298 3 #include "SinusGen.h"
tbjazic 0:3dddb6a52298 4
tbjazic 0:3dddb6a52298 5 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) {
tbjazic 0:3dddb6a52298 6 ticker.attach(this, &SinusGen::generirajPrikazi, 0.05);
tbjazic 0:3dddb6a52298 7 tipkalo.rise(this, &SinusGen::izborLedice);
tbjazic 0:3dddb6a52298 8 lcd.cls();
tbjazic 0:3dddb6a52298 9 izbor = 0;
tbjazic 0:3dddb6a52298 10 t = 0;
tbjazic 0:3dddb6a52298 11 led1 = led2 = led3 = led4 = 0;
tbjazic 0:3dddb6a52298 12 debounce.start();
tbjazic 0:3dddb6a52298 13 }
tbjazic 0:3dddb6a52298 14
tbjazic 0:3dddb6a52298 15 void SinusGen::generirajPrikazi() {
tbjazic 0:3dddb6a52298 16 U = pot1.read();
tbjazic 0:3dddb6a52298 17 A = pot2.read();
tbjazic 0:3dddb6a52298 18 t += 0.05;
tbjazic 0:3dddb6a52298 19 y = U + A*sin(3.14f*t);
tbjazic 0:3dddb6a52298 20 lcd.locate(0,3);
tbjazic 0:3dddb6a52298 21 lcd.printf("y(t) = %.2f + %.2fsin(3.14t)", U, A);
tbjazic 0:3dddb6a52298 22 led1 = led2 = led3 = led4 = 0;
tbjazic 0:3dddb6a52298 23 switch(izbor) {
tbjazic 0:3dddb6a52298 24 case 0:
tbjazic 0:3dddb6a52298 25 led1 = y;
tbjazic 0:3dddb6a52298 26 break;
tbjazic 0:3dddb6a52298 27 case 1:
tbjazic 0:3dddb6a52298 28 led2 = y;
tbjazic 0:3dddb6a52298 29 break;
tbjazic 0:3dddb6a52298 30 case 2:
tbjazic 0:3dddb6a52298 31 led3 = y;
tbjazic 0:3dddb6a52298 32 break;
tbjazic 0:3dddb6a52298 33 case 3:
tbjazic 0:3dddb6a52298 34 led4 = y;
tbjazic 0:3dddb6a52298 35 break;
tbjazic 0:3dddb6a52298 36 }
tbjazic 0:3dddb6a52298 37 }
tbjazic 0:3dddb6a52298 38
tbjazic 0:3dddb6a52298 39 void SinusGen::izborLedice() {
tbjazic 0:3dddb6a52298 40 if (debounce.read_ms() > 20) {
tbjazic 0:3dddb6a52298 41 izbor = ++izbor % 4;
tbjazic 0:3dddb6a52298 42 debounce.reset();
tbjazic 0:3dddb6a52298 43 }
tbjazic 0:3dddb6a52298 44 }