![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
Ilvana Brankovic Muris Nuhodzic
main.cpp@0:6576c19bdaf8, 2014-04-24 (annotated)
- Committer:
- tim008
- Date:
- Thu Apr 24 14:03:12 2014 +0000
- Revision:
- 0:6576c19bdaf8
LV7_Grupa5_Tim008_Zad1
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
tim008 | 0:6576c19bdaf8 | 1 | #include "mbed.h" |
tim008 | 0:6576c19bdaf8 | 2 | #include "N5110.h" |
tim008 | 0:6576c19bdaf8 | 3 | |
tim008 | 0:6576c19bdaf8 | 4 | |
tim008 | 0:6576c19bdaf8 | 5 | //GLOBALNE VARIJABLE-TACKE 4 KOJE POMJERAN CROSSHAIR |
tim008 | 0:6576c19bdaf8 | 6 | int x1=0; |
tim008 | 0:6576c19bdaf8 | 7 | int x2=1; |
tim008 | 0:6576c19bdaf8 | 8 | int x3=2; |
tim008 | 0:6576c19bdaf8 | 9 | int x4=1; |
tim008 | 0:6576c19bdaf8 | 10 | |
tim008 | 0:6576c19bdaf8 | 11 | int y1=1; |
tim008 | 0:6576c19bdaf8 | 12 | int y2=0; |
tim008 | 0:6576c19bdaf8 | 13 | int y3=1; |
tim008 | 0:6576c19bdaf8 | 14 | int y4=2; |
tim008 | 0:6576c19bdaf8 | 15 | |
tim008 | 0:6576c19bdaf8 | 16 | int kliknuta=0; |
tim008 | 0:6576c19bdaf8 | 17 | |
tim008 | 0:6576c19bdaf8 | 18 | AnalogIn VRx(dp11); |
tim008 | 0:6576c19bdaf8 | 19 | AnalogIn VRy(dp10); |
tim008 | 0:6576c19bdaf8 | 20 | |
tim008 | 0:6576c19bdaf8 | 21 | InterruptIn taster1(dp1); |
tim008 | 0:6576c19bdaf8 | 22 | DigitalIn SW(dp17); |
tim008 | 0:6576c19bdaf8 | 23 | |
tim008 | 0:6576c19bdaf8 | 24 | DigitalOut enable(dp14); |
tim008 | 0:6576c19bdaf8 | 25 | |
tim008 | 0:6576c19bdaf8 | 26 | N5110 lcd(dp4,dp24,dp23,dp25,dp2,dp6,dp18); |
tim008 | 0:6576c19bdaf8 | 27 | |
tim008 | 0:6576c19bdaf8 | 28 | //sluzi da vidim da li je paran il neparan u koju da smjestim tacku dijagonale p1 il p2 |
tim008 | 0:6576c19bdaf8 | 29 | int i=0; |
tim008 | 0:6576c19bdaf8 | 30 | |
tim008 | 0:6576c19bdaf8 | 31 | //TACKE DIJAGONALEEE |
tim008 | 0:6576c19bdaf8 | 32 | int xp1=0; |
tim008 | 0:6576c19bdaf8 | 33 | int yp1=0; |
tim008 | 0:6576c19bdaf8 | 34 | |
tim008 | 0:6576c19bdaf8 | 35 | int xp2=0; |
tim008 | 0:6576c19bdaf8 | 36 | int yp2=0; |
tim008 | 0:6576c19bdaf8 | 37 | |
tim008 | 0:6576c19bdaf8 | 38 | int kliknuta1=0; |
tim008 | 0:6576c19bdaf8 | 39 | |
tim008 | 0:6576c19bdaf8 | 40 | // TASTERR1-vidi sta se desavaa da li printString il setpixel |
tim008 | 0:6576c19bdaf8 | 41 | void pomocna() |
tim008 | 0:6576c19bdaf8 | 42 | { |
tim008 | 0:6576c19bdaf8 | 43 | if(i%2==0) |
tim008 | 0:6576c19bdaf8 | 44 | { |
tim008 | 0:6576c19bdaf8 | 45 | kliknuta=1; |
tim008 | 0:6576c19bdaf8 | 46 | xp1=x2; |
tim008 | 0:6576c19bdaf8 | 47 | yp1=y1; |
tim008 | 0:6576c19bdaf8 | 48 | } |
tim008 | 0:6576c19bdaf8 | 49 | else |
tim008 | 0:6576c19bdaf8 | 50 | { |
tim008 | 0:6576c19bdaf8 | 51 | kliknuta1=1; |
tim008 | 0:6576c19bdaf8 | 52 | xp2=x2; |
tim008 | 0:6576c19bdaf8 | 53 | yp2=y1; |
tim008 | 0:6576c19bdaf8 | 54 | } |
tim008 | 0:6576c19bdaf8 | 55 | i++; |
tim008 | 0:6576c19bdaf8 | 56 | //lcd.printString(".",x2,y1); |
tim008 | 0:6576c19bdaf8 | 57 | } |
tim008 | 0:6576c19bdaf8 | 58 | int main() |
tim008 | 0:6576c19bdaf8 | 59 | { |
tim008 | 0:6576c19bdaf8 | 60 | lcd.init(); |
tim008 | 0:6576c19bdaf8 | 61 | taster1.rise(&pomocna); |
tim008 | 0:6576c19bdaf8 | 62 | lcd.setXYAddress(0,0); |
tim008 | 0:6576c19bdaf8 | 63 | while(1) { |
tim008 | 0:6576c19bdaf8 | 64 | lcd.setPixel(x1,y1); |
tim008 | 0:6576c19bdaf8 | 65 | lcd.setPixel(x2,y2); |
tim008 | 0:6576c19bdaf8 | 66 | lcd.setPixel(x3,y3); |
tim008 | 0:6576c19bdaf8 | 67 | lcd.setPixel(x4,y4); |
tim008 | 0:6576c19bdaf8 | 68 | lcd.refresh(); |
tim008 | 0:6576c19bdaf8 | 69 | |
tim008 | 0:6576c19bdaf8 | 70 | if(VRx<1.0/3.0) //POMJERAAA LIJEVOOO-pazii je kraj ekranaaa |
tim008 | 0:6576c19bdaf8 | 71 | { |
tim008 | 0:6576c19bdaf8 | 72 | if(x1!=1 && x2!=2 && x3!=3 && x4!=2) |
tim008 | 0:6576c19bdaf8 | 73 | { |
tim008 | 0:6576c19bdaf8 | 74 | lcd.clearPixel(x1,y1); |
tim008 | 0:6576c19bdaf8 | 75 | lcd.clearPixel(x2,y2); |
tim008 | 0:6576c19bdaf8 | 76 | lcd.clearPixel(x3,y3); |
tim008 | 0:6576c19bdaf8 | 77 | lcd.clearPixel(x4,y4); |
tim008 | 0:6576c19bdaf8 | 78 | |
tim008 | 0:6576c19bdaf8 | 79 | x1--; |
tim008 | 0:6576c19bdaf8 | 80 | x2--; |
tim008 | 0:6576c19bdaf8 | 81 | x3--; |
tim008 | 0:6576c19bdaf8 | 82 | x4--; |
tim008 | 0:6576c19bdaf8 | 83 | lcd.setPixel(x1,y1); |
tim008 | 0:6576c19bdaf8 | 84 | lcd.setPixel(x2,y2); |
tim008 | 0:6576c19bdaf8 | 85 | lcd.setPixel(x3,y3); |
tim008 | 0:6576c19bdaf8 | 86 | lcd.setPixel(x4,y4); |
tim008 | 0:6576c19bdaf8 | 87 | if(kliknuta==1) |
tim008 | 0:6576c19bdaf8 | 88 | lcd.setPixel(xp1,yp1); |
tim008 | 0:6576c19bdaf8 | 89 | if(kliknuta1==1) |
tim008 | 0:6576c19bdaf8 | 90 | lcd.setPixel(xp2,yp2); |
tim008 | 0:6576c19bdaf8 | 91 | lcd.refresh(); |
tim008 | 0:6576c19bdaf8 | 92 | wait(0.5); |
tim008 | 0:6576c19bdaf8 | 93 | } |
tim008 | 0:6576c19bdaf8 | 94 | } |
tim008 | 0:6576c19bdaf8 | 95 | |
tim008 | 0:6576c19bdaf8 | 96 | if(VRx>2.0/3.0)// pomjeraaaa desnoo, pazii kraj ekraaana 84 piksela |
tim008 | 0:6576c19bdaf8 | 97 | { |
tim008 | 0:6576c19bdaf8 | 98 | if(x1!=84 && x2!=84 && x3!=84 && x4!=84) |
tim008 | 0:6576c19bdaf8 | 99 | { |
tim008 | 0:6576c19bdaf8 | 100 | //if( x1!=xp1 && x2!=xp2 && x3!=xp1 && x4!=xp1 && y1!=yp1 && y2!=yp1 && y3!=yp1 && y4!=yp1) |
tim008 | 0:6576c19bdaf8 | 101 | |
tim008 | 0:6576c19bdaf8 | 102 | lcd.clearPixel(x1,y1); |
tim008 | 0:6576c19bdaf8 | 103 | lcd.clearPixel(x2,y2); |
tim008 | 0:6576c19bdaf8 | 104 | lcd.clearPixel(x3,y3); |
tim008 | 0:6576c19bdaf8 | 105 | lcd.clearPixel(x4,y4); |
tim008 | 0:6576c19bdaf8 | 106 | |
tim008 | 0:6576c19bdaf8 | 107 | |
tim008 | 0:6576c19bdaf8 | 108 | x1++; |
tim008 | 0:6576c19bdaf8 | 109 | x2++; |
tim008 | 0:6576c19bdaf8 | 110 | x3++; |
tim008 | 0:6576c19bdaf8 | 111 | x4++; |
tim008 | 0:6576c19bdaf8 | 112 | lcd.setPixel(x1,y1); |
tim008 | 0:6576c19bdaf8 | 113 | lcd.setPixel(x2,y2); |
tim008 | 0:6576c19bdaf8 | 114 | lcd.setPixel(x3,y3); |
tim008 | 0:6576c19bdaf8 | 115 | lcd.setPixel(x4,y4); |
tim008 | 0:6576c19bdaf8 | 116 | if(kliknuta==1) |
tim008 | 0:6576c19bdaf8 | 117 | lcd.setPixel(xp1,yp1); |
tim008 | 0:6576c19bdaf8 | 118 | if(kliknuta1==1) |
tim008 | 0:6576c19bdaf8 | 119 | lcd.setPixel(xp2,yp2); |
tim008 | 0:6576c19bdaf8 | 120 | lcd.refresh(); |
tim008 | 0:6576c19bdaf8 | 121 | wait(0.5); |
tim008 | 0:6576c19bdaf8 | 122 | } |
tim008 | 0:6576c19bdaf8 | 123 | } |
tim008 | 0:6576c19bdaf8 | 124 | if(VRy<1.0/3.0)// pomjeraaa doljeeee max 48 |
tim008 | 0:6576c19bdaf8 | 125 | { |
tim008 | 0:6576c19bdaf8 | 126 | if(y1!=2 && y2!=1 && y3!=2 && y4!=3) |
tim008 | 0:6576c19bdaf8 | 127 | { |
tim008 | 0:6576c19bdaf8 | 128 | //if( x1!=xp1 && x2!=xp2 && x3!=xp1 && x4!=xp1 && y1!=yp1 && y2!=yp1 && y3!=yp1 && y4!=yp1) |
tim008 | 0:6576c19bdaf8 | 129 | |
tim008 | 0:6576c19bdaf8 | 130 | lcd.clearPixel(x1,y1); |
tim008 | 0:6576c19bdaf8 | 131 | lcd.clearPixel(x2,y2); |
tim008 | 0:6576c19bdaf8 | 132 | lcd.clearPixel(x3,y3); |
tim008 | 0:6576c19bdaf8 | 133 | lcd.clearPixel(x4,y4); |
tim008 | 0:6576c19bdaf8 | 134 | |
tim008 | 0:6576c19bdaf8 | 135 | |
tim008 | 0:6576c19bdaf8 | 136 | y1--; |
tim008 | 0:6576c19bdaf8 | 137 | y2--; |
tim008 | 0:6576c19bdaf8 | 138 | y3--; |
tim008 | 0:6576c19bdaf8 | 139 | y4--; |
tim008 | 0:6576c19bdaf8 | 140 | lcd.setPixel(x1,y1); |
tim008 | 0:6576c19bdaf8 | 141 | lcd.setPixel(x2,y2); |
tim008 | 0:6576c19bdaf8 | 142 | lcd.setPixel(x3,y3); |
tim008 | 0:6576c19bdaf8 | 143 | lcd.setPixel(x4,y4); |
tim008 | 0:6576c19bdaf8 | 144 | if(kliknuta==1) |
tim008 | 0:6576c19bdaf8 | 145 | lcd.setPixel(xp1,yp1); |
tim008 | 0:6576c19bdaf8 | 146 | if(kliknuta1==1) |
tim008 | 0:6576c19bdaf8 | 147 | lcd.setPixel(xp2,yp2); |
tim008 | 0:6576c19bdaf8 | 148 | lcd.refresh(); |
tim008 | 0:6576c19bdaf8 | 149 | wait(0.5); |
tim008 | 0:6576c19bdaf8 | 150 | } |
tim008 | 0:6576c19bdaf8 | 151 | } |
tim008 | 0:6576c19bdaf8 | 152 | if(VRy>2.0/3.0)/// pomjeraaa goreeeee paziii 48 ogranicenjeee |
tim008 | 0:6576c19bdaf8 | 153 | { |
tim008 | 0:6576c19bdaf8 | 154 | if(x1!=48 && x2!=48 && x3!=48 && x4!=48) |
tim008 | 0:6576c19bdaf8 | 155 | { |
tim008 | 0:6576c19bdaf8 | 156 | //if( x1!=xp1 && x2!=xp2 && x3!=xp1 && x4!=xp1 && y1!=yp1 && y2!=yp1 && y3!=yp1 && y4!=yp1) |
tim008 | 0:6576c19bdaf8 | 157 | |
tim008 | 0:6576c19bdaf8 | 158 | lcd.clearPixel(x1,y1); |
tim008 | 0:6576c19bdaf8 | 159 | lcd.clearPixel(x2,y2); |
tim008 | 0:6576c19bdaf8 | 160 | lcd.clearPixel(x3,y3); |
tim008 | 0:6576c19bdaf8 | 161 | lcd.clearPixel(x4,y4); |
tim008 | 0:6576c19bdaf8 | 162 | |
tim008 | 0:6576c19bdaf8 | 163 | y1++; |
tim008 | 0:6576c19bdaf8 | 164 | y2++; |
tim008 | 0:6576c19bdaf8 | 165 | y3++; |
tim008 | 0:6576c19bdaf8 | 166 | y4++; |
tim008 | 0:6576c19bdaf8 | 167 | lcd.setPixel(x1,y1); |
tim008 | 0:6576c19bdaf8 | 168 | lcd.setPixel(x2,y2); |
tim008 | 0:6576c19bdaf8 | 169 | lcd.setPixel(x3,y3); |
tim008 | 0:6576c19bdaf8 | 170 | lcd.setPixel(x4,y4); |
tim008 | 0:6576c19bdaf8 | 171 | if(kliknuta==1) |
tim008 | 0:6576c19bdaf8 | 172 | lcd.setPixel(xp1,yp1); |
tim008 | 0:6576c19bdaf8 | 173 | if(kliknuta1==1) |
tim008 | 0:6576c19bdaf8 | 174 | lcd.setPixel(xp2,yp2); |
tim008 | 0:6576c19bdaf8 | 175 | lcd.refresh(); |
tim008 | 0:6576c19bdaf8 | 176 | wait(0.5); |
tim008 | 0:6576c19bdaf8 | 177 | } |
tim008 | 0:6576c19bdaf8 | 178 | } |
tim008 | 0:6576c19bdaf8 | 179 | |
tim008 | 0:6576c19bdaf8 | 180 | if(xp1!=0 && xp2!=0 && yp1!=0 && yp2!=0)// pravougaonikkkkkk 4 slucajaaa |
tim008 | 0:6576c19bdaf8 | 181 | { |
tim008 | 0:6576c19bdaf8 | 182 | if(xp1<xp2 && yp1<yp2)// GLOBALNE VARIJABLEEE |
tim008 | 0:6576c19bdaf8 | 183 | { |
tim008 | 0:6576c19bdaf8 | 184 | for(int i=yp1;i<=yp2;i++) |
tim008 | 0:6576c19bdaf8 | 185 | { |
tim008 | 0:6576c19bdaf8 | 186 | for(int j=xp1;j<=xp2;j++) |
tim008 | 0:6576c19bdaf8 | 187 | { |
tim008 | 0:6576c19bdaf8 | 188 | lcd.setPixel(i,j); |
tim008 | 0:6576c19bdaf8 | 189 | } |
tim008 | 0:6576c19bdaf8 | 190 | } |
tim008 | 0:6576c19bdaf8 | 191 | } |
tim008 | 0:6576c19bdaf8 | 192 | if(xp1>xp2 && yp1>yp2) |
tim008 | 0:6576c19bdaf8 | 193 | { |
tim008 | 0:6576c19bdaf8 | 194 | for(int i=yp2;i<=yp1;i++) |
tim008 | 0:6576c19bdaf8 | 195 | { |
tim008 | 0:6576c19bdaf8 | 196 | for(int j=xp2;j<=xp1;j++) |
tim008 | 0:6576c19bdaf8 | 197 | { |
tim008 | 0:6576c19bdaf8 | 198 | lcd.setPixel(i,j); |
tim008 | 0:6576c19bdaf8 | 199 | } |
tim008 | 0:6576c19bdaf8 | 200 | } |
tim008 | 0:6576c19bdaf8 | 201 | } |
tim008 | 0:6576c19bdaf8 | 202 | if(xp1>xp2 && yp2>yp1) |
tim008 | 0:6576c19bdaf8 | 203 | { |
tim008 | 0:6576c19bdaf8 | 204 | for(int i=yp1;i<=yp2;i++) |
tim008 | 0:6576c19bdaf8 | 205 | { |
tim008 | 0:6576c19bdaf8 | 206 | for(int j=xp2;j<=xp1;j++) |
tim008 | 0:6576c19bdaf8 | 207 | { |
tim008 | 0:6576c19bdaf8 | 208 | lcd.setPixel(i,j); |
tim008 | 0:6576c19bdaf8 | 209 | } |
tim008 | 0:6576c19bdaf8 | 210 | } |
tim008 | 0:6576c19bdaf8 | 211 | } |
tim008 | 0:6576c19bdaf8 | 212 | //postavim ih sad na nulu da moze iduci pravougaonik da iscrta /// |
tim008 | 0:6576c19bdaf8 | 213 | |
tim008 | 0:6576c19bdaf8 | 214 | |
tim008 | 0:6576c19bdaf8 | 215 | } |
tim008 | 0:6576c19bdaf8 | 216 | } |
tim008 | 0:6576c19bdaf8 | 217 | } |