Aida Pločo Tarik Demirović

Dependencies:   N5110 mbed

Files at this revision

API Documentation at this revision

Comitter:
tim003
Date:
Mon May 05 06:50:11 2014 +0000
Commit message:
LV7-PAI-Grupa1-Tim003-Zadatak1

Changed in this revision

N5110.lib Show annotated file Show diff for this revision Revisions of this file
main.cpp Show annotated file Show diff for this revision Revisions of this file
mbed.bld Show annotated file Show diff for this revision Revisions of this file
diff -r 000000000000 -r 7537b7c6e82c N5110.lib
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/N5110.lib	Mon May 05 06:50:11 2014 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/eencae/code/N5110/#adb79338d40f
diff -r 000000000000 -r 7537b7c6e82c main.cpp
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Mon May 05 06:50:11 2014 +0000
@@ -0,0 +1,188 @@
+#include "mbed.h"
+#include "N5110.h"
+
+AnalogIn VRx(dp11);
+AnalogIn VRy(dp10);
+
+N5110 display(dp4, dp24, dp23, dp25, dp2, dp6, dp18);
+
+Timer timer1;
+Timer timer2;
+
+InterruptIn taster1(dp1);
+DigitalOut enable(dp14);
+
+bool klik = true;
+
+int x = 42;
+int y = 24;
+
+int t1[2];
+int t2[2];
+int t3[2];
+int t4[2];
+
+bool temp1 = false;
+bool temp2 = false;
+bool temp3 = false;
+bool temp4 = false;
+
+void ocitajXY()
+{
+    if (VRx < 1.0/3.0)
+    {
+        x--;
+        if(x < 0) x = 0;
+    }
+    
+    if (VRx > 2.0/3.0)
+    {
+        x++;
+        if(x > 83) x = 83;
+    }
+    
+    if (VRy < 1.0/3.0)
+    {
+        y--;
+        if(y < 0) y = 0;
+    }
+    
+    if (VRy > 2.0/3.0)
+    {
+        y++;
+        if(y > 47) y = 47;
+    }
+    
+    t1[0] = x - 1;
+    t1[1] = y;
+    
+    t2[0] = x;
+    t2[1] = y + 1;
+    
+    t3[0] = x + 1;
+    t3[1] = y;
+    
+    t4[0] = x;
+    t4[1] = y - 1;
+}
+
+void crtajTacku()
+{
+    /*
+    if(timer1.read_ms() > 200 && timer1.read_ms() < 500)
+    {
+        timer1.reset();
+        display.clear();
+        x = 42;
+        y = 24;
+    }
+    
+    if(timer1.read_ms() > 200)
+    {
+        timer1.reset();
+        display.setPixel(x, y);
+        display.refresh();
+    }
+    */
+
+    
+    if(klik)
+    {   
+        if(timer1.read_ms() > 200)
+        {
+            klik = !klik;
+            timer1.reset();
+            display.setPixel(x, y);
+            display.refresh();
+        }
+    }
+    else
+    {
+        if(timer1.read_ms() > 200 && timer1.read_ms() < 1300)
+        {
+            timer1.reset();
+            display.clear();
+            x = 42;
+            y = 24;
+        }
+        if(timer1.read_ms() > 1300)
+        {
+            timer1.reset();
+            display.setPixel(x, y);
+            display.refresh();
+        }
+        
+        klik = !klik;
+    }
+}
+
+void crtajCrosshair()
+{
+    if(x > 0)
+    {
+        if(display.getPixel(t1[0], t1[1]) != 0)
+            temp1 = true;
+        display.setPixel(t1[0], t1[1]);
+    }
+    
+    if(x < 83)
+    {
+        if(display.getPixel(t3[0], t3[1]) != 0)
+            temp3 = true;
+        display.setPixel(t3[0], t3[1]);
+    }
+    
+    if(y > 0)
+    {
+        if(display.getPixel(t2[0], t2[1]) != 0)
+            temp2 = true;
+        display.setPixel(t2[0], t2[1]);
+    }
+    
+    if(y < 47)
+    {
+        if(display.getPixel(t4[0], t4[1]) != 0)
+            temp4 = true;
+        display.setPixel(t4[0], t4[1]);
+    }
+    
+    display.refresh();
+}
+
+void brisiCrosshair()
+{
+    if(!temp1)
+        display.clearPixel(t1[0], t1[1]);
+    if(!temp2)
+        display.clearPixel(t2[0], t2[1]);
+    if(!temp3)
+        display.clearPixel(t3[0], t3[1]);
+    if(!temp4)
+        display.clearPixel(t4[0], t4[1]);
+    
+    display.refresh();
+    
+    temp1 = false;
+    temp2 = false;
+    temp3 = false;
+    temp4 = false;
+}
+
+void osvjezi()
+{
+    brisiCrosshair();
+    ocitajXY();
+    crtajCrosshair();
+}
+
+int main() {
+    enable = 1;
+    display.init();
+    display.setXYAddress(0, 0);
+    timer1.start();
+    taster1.rise(&crtajTacku);
+    while(1){
+        wait(0.25);
+        osvjezi();
+    }
+}
diff -r 000000000000 -r 7537b7c6e82c mbed.bld
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mbed.bld	Mon May 05 06:50:11 2014 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/mbed_official/code/mbed/builds/8a40adfe8776
\ No newline at end of file