Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
main.cpp@7:9521d6ae3747, 2016-12-11 (annotated)
- 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?
User | Revision | Line number | New 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 | } |