Vjezba 2 sa komentarima bez 4. zadatka

Dependencies:   mbed

Fork of KTM_vjezba2 by Emma Watson

Committer:
JosipLupinski
Date:
Sat Nov 05 19:16:56 2016 +0000
Revision:
0:2cc3c591f993
Child:
1:af669fa89346
Vjezba 2 sa komentarima bez 4. zadatka

Who changed what in which revision?

UserRevisionLine numberNew contents of line
JosipLupinski 0:2cc3c591f993 1 #include "mbed.h"
JosipLupinski 0:2cc3c591f993 2
JosipLupinski 0:2cc3c591f993 3 /*
JosipLupinski 0:2cc3c591f993 4 vrijeme AD pretvorbe iznosi 20.85us
JosipLupinski 0:2cc3c591f993 5 AD pretvorba LPC 1768 ima 12 bitnu rezoluciju i max frekvencija osvježenja je 200Hz
JosipLupinski 0:2cc3c591f993 6
JosipLupinski 0:2cc3c591f993 7 vrijeme AD pretvorbe bi trebala iznositi 5us, ali zbog funkcije read() radi tri puta uzorkovanje
JosipLupinski 0:2cc3c591f993 8 pa vraća srednju vrijednost, to uzima barem 15us, ostatak je nesavršenost i ostatak operacija
JosipLupinski 0:2cc3c591f993 9
JosipLupinski 0:2cc3c591f993 10 */
JosipLupinski 0:2cc3c591f993 11
JosipLupinski 0:2cc3c591f993 12 AnalogIn Ain(p20); //definira analogni ulaz na pinu 20
JosipLupinski 0:2cc3c591f993 13 DigitalOut led(LED1); //signalizacijska ledica
JosipLupinski 0:2cc3c591f993 14 Timer t;
JosipLupinski 0:2cc3c591f993 15 Serial pc(USBTX, USBRX); // serijska komunikacija prema racunalu
JosipLupinski 0:2cc3c591f993 16
JosipLupinski 0:2cc3c591f993 17 float ADCdata;
JosipLupinski 0:2cc3c591f993 18 const int broj_pretvorbi = 100000;
JosipLupinski 0:2cc3c591f993 19
JosipLupinski 0:2cc3c591f993 20 int main() {
JosipLupinski 0:2cc3c591f993 21 led = 1;
JosipLupinski 0:2cc3c591f993 22 wait(0.2);
JosipLupinski 0:2cc3c591f993 23 led = 0;
JosipLupinski 0:2cc3c591f993 24 wait(0.5);
JosipLupinski 0:2cc3c591f993 25 led = 1;
JosipLupinski 0:2cc3c591f993 26 wait(0.2);
JosipLupinski 0:2cc3c591f993 27 led = 0;
JosipLupinski 0:2cc3c591f993 28 wait(2);
JosipLupinski 0:2cc3c591f993 29
JosipLupinski 0:2cc3c591f993 30 while(true) {
JosipLupinski 0:2cc3c591f993 31 led = 1;
JosipLupinski 0:2cc3c591f993 32 t.start(); //pokreni timer
JosipLupinski 0:2cc3c591f993 33
JosipLupinski 0:2cc3c591f993 34 //zapocni pretvorbu i ponavljaj broj_pretvorbi puta
JosipLupinski 0:2cc3c591f993 35 for( int i= 0; i<broj_pretvorbi; i++) {
JosipLupinski 0:2cc3c591f993 36
JosipLupinski 0:2cc3c591f993 37 ADCdata = Ain; //pokreni AD pretvorbu i pohrani uzorkovanu vrijednost napona u varijablu ADCdata
JosipLupinski 0:2cc3c591f993 38
JosipLupinski 0:2cc3c591f993 39 }
JosipLupinski 0:2cc3c591f993 40
JosipLupinski 0:2cc3c591f993 41 t.stop(); //zaustavi timer
JosipLupinski 0:2cc3c591f993 42 led = 0;
JosipLupinski 0:2cc3c591f993 43
JosipLupinski 0:2cc3c591f993 44 pc.printf("Vrijeme jedne pretvorbe: %.2f us \n",(float)t.read_us()/broj_pretvorbi);
JosipLupinski 0:2cc3c591f993 45 t.reset(); //resetiraj timer na nulu
JosipLupinski 0:2cc3c591f993 46
JosipLupinski 0:2cc3c591f993 47 //signalizacijske ledice
JosipLupinski 0:2cc3c591f993 48 wait(2);
JosipLupinski 0:2cc3c591f993 49 led = 1;
JosipLupinski 0:2cc3c591f993 50 wait(0.2);
JosipLupinski 0:2cc3c591f993 51 led = 0;
JosipLupinski 0:2cc3c591f993 52 wait(0.5);
JosipLupinski 0:2cc3c591f993 53 led = 1;
JosipLupinski 0:2cc3c591f993 54 wait(0.2);
JosipLupinski 0:2cc3c591f993 55 led = 0;
JosipLupinski 0:2cc3c591f993 56 wait(2);
JosipLupinski 0:2cc3c591f993 57 }
JosipLupinski 0:2cc3c591f993 58 }