Elma Gazetic Hasanic Nadin

Dependencies:   N5110 mbed

Committer:
tim004
Date:
Mon May 05 10:04:13 2014 +0000
Revision:
0:ea9ba9d2d6ca
LV8_zad3_PAI_TIM004

Who changed what in which revision?

UserRevisionLine numberNew 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 }