Lukas Seyfrid
/
SeyfridLukas
semestralna praca
Diff: main.cpp
- Revision:
- 2:0c88bf3817fe
- Parent:
- 1:dbb18c6be96a
- Child:
- 3:d473fb175cec
diff -r dbb18c6be96a -r 0c88bf3817fe main.cpp --- a/main.cpp Mon Dec 04 15:49:38 2017 +0000 +++ b/main.cpp Wed Dec 06 08:51:19 2017 +0000 @@ -63,16 +63,38 @@ } -void dajPoschodie() +int dajPoschodie() { int poschodie; - if(adresa[2] == 0xE3) - { - int aDataIn[] = {0x1E}; - int dataSize1 = ARRAY_SIZE(aDataIn); - posliSpravu(0xD0,0xAA,dataSize1,aDataIn); + switch(adresa[2]){ + case SWITCH_P:{ + poschodie = SWITCH_P; + cisloPochodia_dislpej = 0; + break; + } + case SWITCH_1:{ + poschodie = SWITCH_1; + cisloPochodia_dislpej = 1; + break; } - } + case SWITCH_2:{ + poschodie = SWITCH_2; + cisloPochodia_dislpej = 2; + break; + } + case SWITCH_3:{ + poschodie = SWITCH_3; + cisloPochodia_dislpej = 3; + break; + } + case SWITCH_4:{ + poschodie = SWITCH_4; + cisloPochodia_dislpej = 4; + break; + } + } + return poschodie; +} int main() { @@ -90,20 +112,29 @@ wait(1); zamkniVytah(); wait(1); - smerDole(); - wait(2); - dajPoschodie(); + smerHore();disp_Vyt(); + //wait(2); + //dajPoschodie(); + //stop(); + //int aDataIn[] = {dajPoschodie()}; + //int dataSize1 = ARRAY_SIZE(aDataIn); + //posliSpravu(0xD0,0xAA,dataSize1,aDataIn); - if (term.getc() == SWITCH_3) - { - stop(); - } } +void tlac_vytah() +{ + if (prijmi == 1) + { + + } + } + + void stop() { int aDataIn[] = {0x1}; @@ -113,9 +144,29 @@ void smerHore() { - int aDataIn[] = {0x2, 0x64, 0x00, 0x00, 0x00}; - int dataSize1 = ARRAY_SIZE(aDataIn); - posliSpravu(MOTOR,0xAA,dataSize1,aDataIn); + //int aDataIn[] = {0x2, 0x64, 0x00, 0x00, 0x00}; + //int dataSize1 = ARRAY_SIZE(aDataIn); + //posliSpravu(MOTOR,0xAA,dataSize1,aDataIn); + + pohyb++; + if(pohyb_flag == 0){ + pohyb_flag = 1; + zamkniVytah(); + int aDataIn[] = {0x2, 0x64, 0x00, 0x00, 0x00}; + int dataSize = ARRAY_SIZE(aDataIn); + posliSpravu(MOTOR,0x00,dataSize, aDataIn); + smerJazdy = 1; + } + if(pohyb > 2){ + pohyb = 0; + pohyb_flag = 1; + zamkniVytah(); + int aDataIn[] = {0x2, 0x64, 0x00, 0x00, 0x00}; + int dataSize = ARRAY_SIZE(aDataIn); + posliSpravu(MOTOR,0x00,dataSize, aDataIn); + smerJazdy = 1; + } + } @@ -124,6 +175,25 @@ int aDataIn[] = {0x2, 0x9C, 0xff, 0xff, 0xff}; int dataSize1 = ARRAY_SIZE(aDataIn); posliSpravu(MOTOR,0xAA,dataSize1,aDataIn); + + pohyb++; + if(pohyb_flag == 0){ + pohyb_flag = -1; + zamkniVytah(); + int aDataIn[] = {0x2, 0x9C, 0xff, 0xff, 0xff}; + int dataSize = ARRAY_SIZE(aDataIn); + posliSpravu(MOTOR,0x00,dataSize, aDataIn); + smerJazdy = -1; + } + if(pohyb > 2){ + pohyb = 0; + pohyb_flag = -1; + zamkniVytah(); + int aDataIn[] = {0x2, 0x9C, 0xff, 0xff, 0xff}; + int dataSize = ARRAY_SIZE(aDataIn); + posliSpravu(MOTOR,0x00,dataSize, aDataIn); + smerJazdy = -1; + } } @@ -143,4 +213,53 @@ int adata[1] = {0x00}; int dataSize = ARRAY_SIZE(adata); posliSpravu(0xF0,0xAA,dataSize,adata); - } \ No newline at end of file + } + +void disp_Vyt() +{ + int aDataIn[2]; + int dataSize = ARRAY_SIZE(aDataIn); + switch(pohyb_flag){ + case 0:{ + aDataIn[0] = 0x03; + break; + } + case 1:{ + aDataIn[0] = 0x01; + break; + } + case -1:{ + aDataIn[0] = 0x02; + break; + } + } + switch(cisloPochodia_dislpej){ + case 0:{ + aDataIn[1] = 0x50; + break; + } + case 1:{ + aDataIn[1] = 0x31; + break; + } + case 2:{ + aDataIn[1] = 0x32; + break; + } + case 3:{ + aDataIn[1] = 0x33; + break; + } + case 4:{ + aDataIn[1] = 0x34; + break; + } + } + if(cisloPochodia_dislpej != disp_poschodie){ + posliSpravu(C_LCD,0x00,dataSize, aDataIn); + }else if(pohyb_flag != display_smer){ + posliSpravu(C_LCD,0x00,dataSize, aDataIn); + } + disp_poschodie = cisloPochodia_dislpej; + display_smer = pohyb_flag; + } \ No newline at end of file