Tehničko veleučilište u Zagrebu Elektrotehnički odjel Mikroupravaljači, 2013. Laboratorijski zadatak br. 8

Dependencies:   mbed TextLCD

Zadatak

Sklopovsko okruženje mikroupravljača dano je prema shemi u prilogu. Pokazivač je LCD displej 16x1.

Procesna trasa je prozirna cijev na čijim krajevima su postavljeni ventilatori koji tjeraju zrak u suprotnim smjerovima. Na trasi se nalazi celuloidna loptica koja se pokreče tjerana tlakom zraka. Na podnožju trase, simetrično oko sredine smješteni su infracrveni senzori koji odsjajem detektiraju prisutnost predmeta. Loptica se pokreče po trasi naizmjeničnim pokretanje ventilatora. Dvije LEDice na izlaznim priključcima MBEDa služe za indikaciju aktivacije pojedinog senzora.

Na displeju se treba prikazati smjer kretanja loptice, te njezina linearna brzina u smjeru kretanja.

Osciloskopom treba snimiti signale uključenja ventilatora kao i signale sa infracrvenih senzora. Pokušati programski regulirati da se loptica zadržava točno na sredini trase između dva senzora.

Demonstrirati rad prototipa te objasniti napisanu programsku podršku.

Shema

/media/uploads/mdraganic/zadatak8_1.png

Dokumentacija

Files at this revision

API Documentation at this revision

Comitter:
iistuk
Date:
Tue Feb 04 17:21:06 2014 +0000
Parent:
0:f30920c6bb40
Child:
2:661d11a933ba
Commit message:
!

Changed in this revision

main.cpp Show annotated file Show diff for this revision Revisions of this file
--- a/main.cpp	Tue Dec 17 15:18:14 2013 +0000
+++ b/main.cpp	Tue Feb 04 17:21:06 2014 +0000
@@ -1,12 +1,29 @@
 #include "mbed.h"
 
+DigitalIn SenzorL(p15);
+DigitalIn SenzorD(p16);
+/*AnalogOut VentL(p11);
+AnalogOut VentD(p10);*/
+DigitalOut led1(p5);
+DigitalOut led2(p7);
 DigitalOut myled(LED1);
 
+
 int main() {
-    while(1) {
-        myled = 1;
-        wait(0.2);
-        myled = 0;
-        wait(0.2);
+    enum poz {lijevo, sredina, desno};
+    /*poz pozicija;
+    VentL=1;
+    wait(5);
+    VentL=0;
+    pozicija=desno;*/
+    while(1) {              
+       if(SenzorL==1) {
+           led1=1;
+           }
+        if(SenzorD==1) {
+            led2=2;
+            }
+       
+       
     }
 }