![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
Elma Gazetic Hasanic Nadin
main.cpp@0:ea9ba9d2d6ca, 2014-05-05 (annotated)
- Committer:
- tim004
- Date:
- Mon May 05 10:04:13 2014 +0000
- Revision:
- 0:ea9ba9d2d6ca
LV8_zad3_PAI_TIM004
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
tim004 | 0:ea9ba9d2d6ca | 1 | #include "mbed.h" |
tim004 | 0:ea9ba9d2d6ca | 2 | #include "N5110.h" |
tim004 | 0:ea9ba9d2d6ca | 3 | |
tim004 | 0:ea9ba9d2d6ca | 4 | #include <string> |
tim004 | 0:ea9ba9d2d6ca | 5 | |
tim004 | 0:ea9ba9d2d6ca | 6 | #define DELETE_CHAR '3' |
tim004 | 0:ea9ba9d2d6ca | 7 | #define BACKSPACE_CHAR '2' |
tim004 | 0:ea9ba9d2d6ca | 8 | #define ENTER_CHAR '1' |
tim004 | 0:ea9ba9d2d6ca | 9 | |
tim004 | 0:ea9ba9d2d6ca | 10 | #define ROW_NUM 5 |
tim004 | 0:ea9ba9d2d6ca | 11 | |
tim004 | 0:ea9ba9d2d6ca | 12 | #define Y_DISPLACEMENT 1 |
tim004 | 0:ea9ba9d2d6ca | 13 | #define X_DISPLACEMENT 1 |
tim004 | 0:ea9ba9d2d6ca | 14 | |
tim004 | 0:ea9ba9d2d6ca | 15 | // VCC,SCE,RST,D/C,MOSI,SCLK,LED |
tim004 | 0:ea9ba9d2d6ca | 16 | N5110 lcd(dp4,dp24,dp23,dp25,dp2,dp6,dp18); |
tim004 | 0:ea9ba9d2d6ca | 17 | Serial pc(USBTX, USBRX); |
tim004 | 0:ea9ba9d2d6ca | 18 | |
tim004 | 0:ea9ba9d2d6ca | 19 | DigitalOut enable(dp14); |
tim004 | 0:ea9ba9d2d6ca | 20 | |
tim004 | 0:ea9ba9d2d6ca | 21 | string rijec = ""; |
tim004 | 0:ea9ba9d2d6ca | 22 | string past_rijec = ""; |
tim004 | 0:ea9ba9d2d6ca | 23 | |
tim004 | 0:ea9ba9d2d6ca | 24 | void display_rijec() { |
tim004 | 0:ea9ba9d2d6ca | 25 | lcd.clear(); |
tim004 | 0:ea9ba9d2d6ca | 26 | lcd.setXYAddress(0, 0); |
tim004 | 0:ea9ba9d2d6ca | 27 | |
tim004 | 0:ea9ba9d2d6ca | 28 | int x = 0, y = 0; |
tim004 | 0:ea9ba9d2d6ca | 29 | for(int i = 0; i < rijec.length(); i++) { |
tim004 | 0:ea9ba9d2d6ca | 30 | if(rijec[i] == ENTER_CHAR) |
tim004 | 0:ea9ba9d2d6ca | 31 | lcd.setXYAddress(0, (y + Y_DISPLACEMENT) % ROW_NUM); |
tim004 | 0:ea9ba9d2d6ca | 32 | else { |
tim004 | 0:ea9ba9d2d6ca | 33 | lcd.printChar(rijec[i]); |
tim004 | 0:ea9ba9d2d6ca | 34 | x += X_DISPLACEMENT; |
tim004 | 0:ea9ba9d2d6ca | 35 | } |
tim004 | 0:ea9ba9d2d6ca | 36 | } |
tim004 | 0:ea9ba9d2d6ca | 37 | |
tim004 | 0:ea9ba9d2d6ca | 38 | lcd.refresh(); |
tim004 | 0:ea9ba9d2d6ca | 39 | } |
tim004 | 0:ea9ba9d2d6ca | 40 | |
tim004 | 0:ea9ba9d2d6ca | 41 | int main() { |
tim004 | 0:ea9ba9d2d6ca | 42 | |
tim004 | 0:ea9ba9d2d6ca | 43 | enable = 1; |
tim004 | 0:ea9ba9d2d6ca | 44 | lcd.init(); |
tim004 | 0:ea9ba9d2d6ca | 45 | lcd.setXYAddress(0, 0); |
tim004 | 0:ea9ba9d2d6ca | 46 | char trenutni; |
tim004 | 0:ea9ba9d2d6ca | 47 | |
tim004 | 0:ea9ba9d2d6ca | 48 | while(true) { |
tim004 | 0:ea9ba9d2d6ca | 49 | past_rijec = rijec; |
tim004 | 0:ea9ba9d2d6ca | 50 | if(pc.readable()) { |
tim004 | 0:ea9ba9d2d6ca | 51 | trenutni = pc.getc(); |
tim004 | 0:ea9ba9d2d6ca | 52 | if(trenutni == DELETE_CHAR) |
tim004 | 0:ea9ba9d2d6ca | 53 | rijec = ""; |
tim004 | 0:ea9ba9d2d6ca | 54 | else if(trenutni == BACKSPACE_CHAR) |
tim004 | 0:ea9ba9d2d6ca | 55 | rijec = rijec.substr(0, rijec.length() - 1); |
tim004 | 0:ea9ba9d2d6ca | 56 | else |
tim004 | 0:ea9ba9d2d6ca | 57 | rijec.push_back(trenutni); |
tim004 | 0:ea9ba9d2d6ca | 58 | } |
tim004 | 0:ea9ba9d2d6ca | 59 | |
tim004 | 0:ea9ba9d2d6ca | 60 | display_rijec(); |
tim004 | 0:ea9ba9d2d6ca | 61 | } |
tim004 | 0:ea9ba9d2d6ca | 62 | |
tim004 | 0:ea9ba9d2d6ca | 63 | return 0; // redundant |
tim004 | 0:ea9ba9d2d6ca | 64 | } |