Simon Hladek / Mbed 2 deprecated elevator1

Dependencies:   MMA8451Q mbed

Committer:
skirmish
Date:
Sun Dec 11 00:52:39 2016 +0000
Revision:
7:9521d6ae3747
Parent:
3:9ee509852c9a
Child:
8:96c852630824
nepada

Who changed what in which revision?

UserRevisionLine numberNew contents of line
skirmish 0:41e22e385908 1 #include "mbed.h"
skirmish 0:41e22e385908 2 #include "model.h"
skirmish 0:41e22e385908 3 #include "structures.h"
skirmish 7:9521d6ae3747 4 #include "Serial.h"
skirmish 0:41e22e385908 5 DigitalOut cervena(LED1);
skirmish 0:41e22e385908 6 DigitalOut zelena(LED2);
skirmish 2:3cb49ae40d02 7 Ticker ticker;
skirmish 2:3cb49ae40d02 8 void calc();
skirmish 7:9521d6ae3747 9 void SerialCallBack();
skirmish 0:41e22e385908 10 Serial pc(USBTX,USBRX);
skirmish 7:9521d6ae3747 11 char startByteIn;
skirmish 7:9521d6ae3747 12 char targetAdd;
skirmish 7:9521d6ae3747 13 char sourceAdd;
skirmish 7:9521d6ae3747 14 char DataLength;
skirmish 7:9521d6ae3747 15 char DataIn[2];
skirmish 7:9521d6ae3747 16 char CrcIn;
skirmish 7:9521d6ae3747 17 char wd[1];
skirmish 2:3cb49ae40d02 18
skirmish 7:9521d6ae3747 19 Model *mModel=new Model(&pc);
skirmish 7:9521d6ae3747 20 char datal;
skirmish 7:9521d6ae3747 21 int pom=0;
skirmish 0:41e22e385908 22
skirmish 2:3cb49ae40d02 23 void calc()
skirmish 2:3cb49ae40d02 24 {
skirmish 2:3cb49ae40d02 25 pom++;
skirmish 2:3cb49ae40d02 26 if (pom==1) {
skirmish 2:3cb49ae40d02 27 zelena =0;
skirmish 2:3cb49ae40d02 28 cervena=1;
skirmish 7:9521d6ae3747 29 mModel->sendPacket(0xa0,0xfe,0x00,wd,1);
skirmish 2:3cb49ae40d02 30 } else {
skirmish 2:3cb49ae40d02 31 zelena=1;
skirmish 2:3cb49ae40d02 32 cervena=0;
skirmish 2:3cb49ae40d02 33 pom=0;
skirmish 2:3cb49ae40d02 34 }
skirmish 0:41e22e385908 35 }
skirmish 0:41e22e385908 36
skirmish 0:41e22e385908 37
skirmish 0:41e22e385908 38 void SerialCallBack()
skirmish 0:41e22e385908 39 {
skirmish 7:9521d6ae3747 40 char data[1];
skirmish 0:41e22e385908 41
skirmish 7:9521d6ae3747 42 pom++;
skirmish 7:9521d6ae3747 43
skirmish 7:9521d6ae3747 44 startByteIn=mModel->pc->getc();
skirmish 7:9521d6ae3747 45 targetAdd=mModel->pc->getc();
skirmish 7:9521d6ae3747 46 sourceAdd=mModel->pc->getc();
skirmish 7:9521d6ae3747 47 DataLength=mModel->pc->getc();
skirmish 7:9521d6ae3747 48
skirmish 7:9521d6ae3747 49 for (unsigned int i=0; i< DataLength; i++) {
skirmish 7:9521d6ae3747 50 DataIn[i]=mModel->pc->getc();
skirmish 7:9521d6ae3747 51 }
skirmish 7:9521d6ae3747 52
skirmish 7:9521d6ae3747 53 CrcIn=mModel->pc->getc();
skirmish 7:9521d6ae3747 54 if(pom==1) {
skirmish 7:9521d6ae3747 55 zelena=0;
skirmish 7:9521d6ae3747 56 } else {
skirmish 7:9521d6ae3747 57 zelena=1;
skirmish 7:9521d6ae3747 58 pom=0;
skirmish 2:3cb49ae40d02 59 }
skirmish 7:9521d6ae3747 60 switch( sourceAdd) {
skirmish 7:9521d6ae3747 61 case 0xc4:
skirmish 7:9521d6ae3747 62 case 0xb4:
skirmish 7:9521d6ae3747 63 mModel->mapPoschodie.find("p4")->second=true;
skirmish 7:9521d6ae3747 64 break;
skirmish 7:9521d6ae3747 65 case 0xb3:
skirmish 7:9521d6ae3747 66 case 0xc3:
skirmish 7:9521d6ae3747 67 mModel->mapPoschodie.find("p3")->second=true;
skirmish 7:9521d6ae3747 68 break;
skirmish 7:9521d6ae3747 69 case 0xb2:
skirmish 7:9521d6ae3747 70 case 0xc2:
skirmish 7:9521d6ae3747 71 mModel->mapPoschodie.find("p2")->second=true;
skirmish 7:9521d6ae3747 72 break;
skirmish 7:9521d6ae3747 73 case 0xb1:
skirmish 7:9521d6ae3747 74 case 0xc1:
skirmish 7:9521d6ae3747 75 mModel->mapPoschodie.find("p1")->second=true;
skirmish 7:9521d6ae3747 76 break;
skirmish 7:9521d6ae3747 77 case 0xb0:
skirmish 7:9521d6ae3747 78 case 0xc0:
skirmish 7:9521d6ae3747 79 mModel->mapPoschodie.find("p0")->second=true;
skirmish 7:9521d6ae3747 80 break;
skirmish 7:9521d6ae3747 81 default:
skirmish 7:9521d6ae3747 82
skirmish 7:9521d6ae3747 83 break;
skirmish 2:3cb49ae40d02 84
skirmish 7:9521d6ae3747 85 }
skirmish 7:9521d6ae3747 86
skirmish 7:9521d6ae3747 87 }
skirmish 7:9521d6ae3747 88 int main()
skirmish 7:9521d6ae3747 89 {
skirmish 7:9521d6ae3747 90 // mModel = new Model(&pc);
skirmish 7:9521d6ae3747 91
skirmish 7:9521d6ae3747 92 cervena=1;
skirmish 7:9521d6ae3747 93 zelena=1;
skirmish 7:9521d6ae3747 94
skirmish 7:9521d6ae3747 95 ticker.attach(&calc,0.4);
skirmish 7:9521d6ae3747 96 wd[0]=0xff;
skirmish 7:9521d6ae3747 97 char data[1];
skirmish 7:9521d6ae3747 98 data[0]=0x43;
skirmish 7:9521d6ae3747 99 mModel->pc->attach(&SerialCallBack,Serial::RxIrq);
skirmish 7:9521d6ae3747 100 mModel->sendPacket(0xa0,0xd0,0x00,data,1);
skirmish 7:9521d6ae3747 101 while(1) {
skirmish 7:9521d6ae3747 102
skirmish 7:9521d6ae3747 103 mModel->doSomething(sourceAdd);
skirmish 7:9521d6ae3747 104 }
skirmish 7:9521d6ae3747 105 //
skirmish 0:41e22e385908 106 }