in d mix

Dependencies:   xtoff2 RF24Network mbed

Fork of RF24Network_Receive by Akash Vibhute

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers Ontvanger.cpp Source File

Ontvanger.cpp

00001 #include "Ontvanger.h"
00002 
00003 Serial pc2(USBTX, USBRX);
00004 RF24 radio(spi_MOSI, spi_MISO, spi_SCK, nrf_CE, nrf_CSN );
00005 RF24Network network(radio);
00006 
00007 RF24NetworkHeader header_rx;
00008 
00009 Ontvanger::Ontvanger()
00010 {
00011     radio.begin();
00012     network.begin(90, this_node);
00013     wait_ms(2000);
00014     radio.setPALevel(RF24_PA_MIN);
00015     radio.setDataRate(RF24_250KBPS);
00016 };
00017 
00018 void Ontvanger::update()
00019 {
00020     network.update();
00021 }
00022 
00023 bool Ontvanger::available()
00024 {
00025     return network.available();
00026 }
00027 
00028 
00029 payload_t Ontvanger::read()
00030 {
00031     payload_t payload_rx;
00032     network.read(header_rx,&payload_rx,sizeof(payload_rx));
00033     
00034     if(payload_rx.messageAvailable == true)
00035         printMessage(payload_rx.messageIndex);
00036     
00037     return payload_rx;
00038 }
00039 
00040 bool Ontvanger::write(state_Packet message)
00041 {
00042     RF24NetworkHeader header_tx(other_node);
00043     state_Packet packet;
00044     packet = message;
00045     
00046     return network.write(header_tx,&packet,sizeof(packet));
00047 }
00048 
00049 bool Ontvanger::isValid()
00050 {
00051     return radio.isValid();
00052 }
00053 
00054 bool Ontvanger::testRPD()
00055 {
00056     return radio.testRPD();
00057 }
00058 
00059 void Ontvanger::printMessage(char index){
00060     switch (index) {
00061       case '1': 
00062         pc2.printf("Message: Initializing...\n\r");
00063         break;
00064       case '2': 
00065         pc2.printf("Message: Taring...\n\r");
00066         break;
00067       case '3': 
00068         pc2.printf("Message: Error: Tare first\n\r");
00069         break;
00070       case '4': 
00071         pc2.printf("Message: Tare completed\n\r");
00072         break;
00073       case '5': 
00074         pc2.printf("Message: Error: Tare value to low... Retry\n\r");
00075         break;
00076       case '6': 
00077         pc2.printf("Message: Waiting on the right position...\n\r");
00078         break;
00079       case '7': 
00080         pc2.printf("Message: Wait 5 Seconds on POSITION...\n\r");
00081         break;
00082       case '8': 
00083         pc2.printf("Message: ERROR: Not on position\n\r");
00084         break; 
00085 }
00086     }
00087 
00088