Jebeni energy iz interšpara.
Dependencies: mbed
5cetvrti_slave.cpp@0:da2489b55d16, 2016-11-18 (annotated)
- Committer:
- JosipLupinski
- Date:
- Fri Nov 18 04:50:14 2016 +0000
- Revision:
- 0:da2489b55d16
Beta.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
JosipLupinski | 0:da2489b55d16 | 1 | #include "mbed.h" |
JosipLupinski | 0:da2489b55d16 | 2 | |
JosipLupinski | 0:da2489b55d16 | 3 | BusOut ledice(LED4,LED3,LED2,LED1); |
JosipLupinski | 0:da2489b55d16 | 4 | DigitalIn strobe(p16); |
JosipLupinski | 0:da2489b55d16 | 5 | DigitalOut busy(p15); |
JosipLupinski | 0:da2489b55d16 | 6 | BusIn datain(p20,p19,p18,p17); |
JosipLupinski | 0:da2489b55d16 | 7 | |
JosipLupinski | 0:da2489b55d16 | 8 | int main() { |
JosipLupinski | 0:da2489b55d16 | 9 | |
JosipLupinski | 0:da2489b55d16 | 10 | int strobe_prev = 0; |
JosipLupinski | 0:da2489b55d16 | 11 | |
JosipLupinski | 0:da2489b55d16 | 12 | //inicijalizacija |
JosipLupinski | 0:da2489b55d16 | 13 | busy = 1; //zauzet za prihvat podataka radi inicijalizacije, nije u mogućnosti prihvatiti podatke i onda mu pošalje 1 |
JosipLupinski | 0:da2489b55d16 | 14 | strobe_prev = strobe; |
JosipLupinski | 0:da2489b55d16 | 15 | wait(1); |
JosipLupinski | 0:da2489b55d16 | 16 | busy = 0; |
JosipLupinski | 0:da2489b55d16 | 17 | //inicijalizacija gotova |
JosipLupinski | 0:da2489b55d16 | 18 | |
JosipLupinski | 0:da2489b55d16 | 19 | while(1) { |
JosipLupinski | 0:da2489b55d16 | 20 | |
JosipLupinski | 0:da2489b55d16 | 21 | if (strobe_prev == 1 && strobe == 0){ |
JosipLupinski | 0:da2489b55d16 | 22 | busy = 1; |
JosipLupinski | 0:da2489b55d16 | 23 | ledice = datain; |
JosipLupinski | 0:da2489b55d16 | 24 | wait(1); //vrijeme obrade |
JosipLupinski | 0:da2489b55d16 | 25 | busy = 0; |
JosipLupinski | 0:da2489b55d16 | 26 | } |
JosipLupinski | 0:da2489b55d16 | 27 | strobe_prev = strobe; |
JosipLupinski | 0:da2489b55d16 | 28 | wait(0.05); |
JosipLupinski | 0:da2489b55d16 | 29 | } |
JosipLupinski | 0:da2489b55d16 | 30 | } |
JosipLupinski | 0:da2489b55d16 | 31 | |
JosipLupinski | 0:da2489b55d16 | 32 | //slave redefinirani kod |
JosipLupinski | 0:da2489b55d16 | 33 | #include "mbed.h" |
JosipLupinski | 0:da2489b55d16 | 34 | |
JosipLupinski | 0:da2489b55d16 | 35 | BusOut ledice(LED4,LED3,LED2,LED1); |
JosipLupinski | 0:da2489b55d16 | 36 | DigitalIn strobe(p16); |
JosipLupinski | 0:da2489b55d16 | 37 | DigitalOut busy(p15); |
JosipLupinski | 0:da2489b55d16 | 38 | BusIn datain(p20,p19,p18,p17); |
JosipLupinski | 0:da2489b55d16 | 39 | int main() { |
JosipLupinski | 0:da2489b55d16 | 40 | int strobe_prev = 0; |
JosipLupinski | 0:da2489b55d16 | 41 | |
JosipLupinski | 0:da2489b55d16 | 42 | //inicijalizacija |
JosipLupinski | 0:da2489b55d16 | 43 | busy = 1; //zauzet za prihvat podataka radi inicijalizacije, nije u mogućnosti prihvatiti podatke i onda mu pošalje 1 |
JosipLupinski | 0:da2489b55d16 | 44 | strobe_prev = strobe; |
JosipLupinski | 0:da2489b55d16 | 45 | wait_ms(100); |
JosipLupinski | 0:da2489b55d16 | 46 | busy = 0; |
JosipLupinski | 0:da2489b55d16 | 47 | //inicijalizacija gotova |
JosipLupinski | 0:da2489b55d16 | 48 | |
JosipLupinski | 0:da2489b55d16 | 49 | while(1) { |
JosipLupinski | 0:da2489b55d16 | 50 | if (strobe_prev == 1 && strobe == 0){ //if(true) onda slave čita što je master poslao |
JosipLupinski | 0:da2489b55d16 | 51 | busy = 1; //nije u mogucnosti vec prihvatiti podatke |
JosipLupinski | 0:da2489b55d16 | 52 | ledice = datain; //čitanje poslane informacije, komunikacija između 2 mbed-a |
JosipLupinski | 0:da2489b55d16 | 53 | wait_ms(100); //vrijeme obrade |
JosipLupinski | 0:da2489b55d16 | 54 | busy = 0; //ponovna mogućnost primanja podataka |
JosipLupinski | 0:da2489b55d16 | 55 | } |
JosipLupinski | 0:da2489b55d16 | 56 | strobe_prev = strobe; //služi kao "reset" za if funkciju, ako je if(true) |
JosipLupinski | 0:da2489b55d16 | 57 | wait_ms(50); //cekanje |
JosipLupinski | 0:da2489b55d16 | 58 | |
JosipLupinski | 0:da2489b55d16 | 59 | } |
JosipLupinski | 0:da2489b55d16 | 60 | } |