tim004 tim004
/
LV4-GRUPA2-Tim004-Zadatak2
Babić Mirhat Hasanic Nadin
Fork of LV4-GRUPA2-Tim004 by
Diff: main.cpp
- Revision:
- 0:ec52fc690f15
- Child:
- 1:b81cedb4e2c9
diff -r 000000000000 -r ec52fc690f15 main.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/main.cpp Mon Mar 24 10:48:12 2014 +0000 @@ -0,0 +1,69 @@ +#include "mbed.h" +#define Vmax 2.2 +#define Vmin 0.8 +#define y1 100 +#define y2 0 +#define x2 2.1 +#define x1 0.7 + +AnalogIn ain (dp9); //analogni ulaz +BusOut digitPin (dp23, dp24, dp25); //pinovi cifri -> dp23 prva s desne strane itd... +BusOut ledSegment (dp26, dp27, dp5, dp6, dp28, dp1, dp2); //segmenti za displej G,F,E... +int arrayNumbers [10] = {0x40, 0x79, 0x24, 0x30, 0x19, 0x12, 0x02, 0x78, 0x00, 0x10};//cifre za aktiv. displeja = 0,1,... +BusOut point (dp4);//tacka + +void PrikaziVrijednost (int vrijednost) +{ + //npr 2.34 + int prva = vrijednost % 10; + int druga = (vrijednost / 10) % 10; + int treca = vrijednost / 100; + int pojedineCifre[3] = {(int)(vrijednost / 10.) % 10, (int)(vrijednost) % 10, (int)(vrijednost * 10.) % 10}; + + ledSegment = arrayNumbers[prva]; + digitPin = 3; + wait_ms(1.2); + + + + ledSegment = arrayNumbers[druga]; + digitPin = 5; + wait_ms(1.2); + + + + point = 1; + ledSegment = arrayNumbers[treca]; + digitPin = 6; + wait_ms(1.2); + + point = 1; + +} + + +int main() +{ + float vr = ain; + int counter = 0; + + + float jednacina(0); + float vrijednost = 0; + while(1) + { + jednacina=((y2-y1)/(x2-x1))*((ain*3.3)-x1)+y1; + + if(counter==100){ + if(ain * 3.3 >= 0.8 && ain * 3.3 <= 2.2) + vrijednost = jednacina; + else + vrijednost = 100; + + vr =vrijednost; + counter=0; + } + PrikaziVrijednost (vr); + counter++; + } +} \ No newline at end of file