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.
Diff: main.cpp
- Revision:
- 7:9521d6ae3747
- Parent:
- 3:9ee509852c9a
- Child:
- 8:96c852630824
--- a/main.cpp Sat Dec 10 15:50:53 2016 +0000 +++ b/main.cpp Sun Dec 11 00:52:39 2016 +0000 @@ -1,51 +1,32 @@ #include "mbed.h" #include "model.h" #include "structures.h" +#include "Serial.h" DigitalOut cervena(LED1); DigitalOut zelena(LED2); Ticker ticker; void calc(); +void SerialCallBack(); Serial pc(USBTX,USBRX); -Model *mModel =new Model(); -void SerialCallBack(); -int pom=0; -int main() -{ +char startByteIn; +char targetAdd; +char sourceAdd; +char DataLength; +char DataIn[2]; +char CrcIn; +char wd[1]; - // mModel->pc.baud(57600); - //mModel->pc.attach(&SerialCallBack,Serial::RxIrq); - testData mtest; - mtest.data[0]=0x41; - mtest.data[1]=0x42; - mtest.data[2]=0x43; - mtest.data[3]=0x44; - mtest.startByte=0xa0; - mtest.targetAddress=0xd0; - mtest.sourceAddress=0x00; - // mModel->sendPacket(mtest.startByte,mtest.targetAddress,mtest.sourceAddress,mtest.data); - cervena=1; - zelena=1; - char data[5]= {0x2,0x00,0x00,0x00,0x14}; - //mModel->sendPacket(0xA0,0xf1,0x00,data,5); -// packet1->data[0] = 0x2; -// packet1->data[1] = 0xff; -// packet1->data[2] = 0xff; -// packet1->data[3] = 0xff; -// packet1->data[4] = 0xfb; - ticker.attach(&calc,0.5); +Model *mModel=new Model(&pc); +char datal; +int pom=0; - while(1) { - mModel->pc.attach(&SerialCallBack,Serial::RxIrq); - mModel->doSomething(mModel->sourceAdd); - - -}} void calc() { pom++; if (pom==1) { zelena =0; cervena=1; + mModel->sendPacket(0xa0,0xfe,0x00,wd,1); } else { zelena=1; cervena=0; @@ -56,14 +37,70 @@ void SerialCallBack() { + char data[1]; - mModel->startByteIn=mModel->pc.getc(); - mModel->targetAdd=mModel->pc.getc(); - mModel->sourceAdd=mModel->pc.getc(); - mModel->DataLength=mModel->pc.getc(); - for (unsigned int i=0; i< mModel->DataLength; i++) { - mModel->DataIn[i]=mModel->pc.getc(); + pom++; + + startByteIn=mModel->pc->getc(); + targetAdd=mModel->pc->getc(); + sourceAdd=mModel->pc->getc(); + DataLength=mModel->pc->getc(); + + for (unsigned int i=0; i< DataLength; i++) { + DataIn[i]=mModel->pc->getc(); + } + + CrcIn=mModel->pc->getc(); + if(pom==1) { + zelena=0; + } else { + zelena=1; + pom=0; } - mModel->CrcIn=mModel->pc.getc(); + switch( sourceAdd) { + case 0xc4: + case 0xb4: + mModel->mapPoschodie.find("p4")->second=true; + break; + case 0xb3: + case 0xc3: + mModel->mapPoschodie.find("p3")->second=true; + break; + case 0xb2: + case 0xc2: + mModel->mapPoschodie.find("p2")->second=true; + break; + case 0xb1: + case 0xc1: + mModel->mapPoschodie.find("p1")->second=true; + break; + case 0xb0: + case 0xc0: + mModel->mapPoschodie.find("p0")->second=true; + break; + default: + + break; + } + +} +int main() +{ + // mModel = new Model(&pc); + + cervena=1; + zelena=1; + + ticker.attach(&calc,0.4); +wd[0]=0xff; + char data[1]; + data[0]=0x43; + mModel->pc->attach(&SerialCallBack,Serial::RxIrq); + mModel->sendPacket(0xa0,0xd0,0x00,data,1); + while(1) { + + mModel->doSomething(sourceAdd); + } +// } \ No newline at end of file