Vjezba 2 sa komentarima bez 4. zadatka
Dependencies: mbed
Fork of KTM_vjezba2 by
mjerenje_trajanja_DA_pretvorbe.cpp@1:af669fa89346, 2016-11-05 (annotated)
- Committer:
- JosipLupinski
- Date:
- Sat Nov 05 19:40:36 2016 +0000
- Revision:
- 1:af669fa89346
- Parent:
- 0:2cc3c591f993
KTM vjezba 2 sa komentarima bez 4. i dodatnih zadataka. WIP
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
JosipLupinski | 0:2cc3c591f993 | 1 | #include "mbed.h" |
JosipLupinski | 0:2cc3c591f993 | 2 | |
JosipLupinski | 0:2cc3c591f993 | 3 | /* |
JosipLupinski | 0:2cc3c591f993 | 4 | vrijeme DA pretvorbe iznosi 1.75us |
JosipLupinski | 0:2cc3c591f993 | 5 | DA pretvorba LPC 1768 ima 10 bitnu rezoluciju i max frekvencija osvježenja je 1MHz |
JosipLupinski | 0:2cc3c591f993 | 6 | |
JosipLupinski | 0:2cc3c591f993 | 7 | */ |
JosipLupinski | 0:2cc3c591f993 | 8 | |
JosipLupinski | 0:2cc3c591f993 | 9 | AnalogOut Aout(p18); //definira analogni izlaz na pinu 18 |
JosipLupinski | 0:2cc3c591f993 | 10 | DigitalOut led(LED1); //signalizacijska ledica |
JosipLupinski | 0:2cc3c591f993 | 11 | |
JosipLupinski | 0:2cc3c591f993 | 12 | Timer t; |
JosipLupinski | 0:2cc3c591f993 | 13 | Serial pc(USBTX, USBRX); // serijska komunikacija prema racunalu |
JosipLupinski | 0:2cc3c591f993 | 14 | |
JosipLupinski | 0:2cc3c591f993 | 15 | const float ADCdata = 0.5; |
JosipLupinski | 0:2cc3c591f993 | 16 | const int broj_pretvorbi = 100000; |
JosipLupinski | 0:2cc3c591f993 | 17 | |
JosipLupinski | 0:2cc3c591f993 | 18 | int main() { |
JosipLupinski | 0:2cc3c591f993 | 19 | |
JosipLupinski | 0:2cc3c591f993 | 20 | led = 1; |
JosipLupinski | 0:2cc3c591f993 | 21 | wait(0.2); |
JosipLupinski | 0:2cc3c591f993 | 22 | led = 0; |
JosipLupinski | 0:2cc3c591f993 | 23 | wait(0.5); |
JosipLupinski | 0:2cc3c591f993 | 24 | led = 1; |
JosipLupinski | 0:2cc3c591f993 | 25 | wait(0.5); |
JosipLupinski | 0:2cc3c591f993 | 26 | led = 0; |
JosipLupinski | 0:2cc3c591f993 | 27 | wait(2); |
JosipLupinski | 0:2cc3c591f993 | 28 | |
JosipLupinski | 0:2cc3c591f993 | 29 | while(true) { |
JosipLupinski | 1:af669fa89346 | 30 | |
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 | Aout = ADCdata; //pokreni DA pretvorbu, postavi vrijeme napona na analogni izlaz |
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 | } |