NerfUS / Mbed 2 deprecated NerfUS-Coord

Dependencies:   NerfUSXbee PinDetect EthernetInterface JSON MFRC522 WebSocketClient mbed-rtos mbed

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers Target.cpp Source File

Target.cpp

00001 #include "Target.hpp"
00002 
00003 RealXbeeTransmitter xbee_transmitter;
00004 
00005 Target::Target(int address_msb, int address_lsb, int target_number)
00006 {
00007     get_address_for_xbee(address_msb, address_lsb);
00008     this->target_number = target_number;
00009 }
00010 
00011 void Target::rise(int mode, int timeout)
00012 {
00013     is_risen = true;
00014     toPc("Rising target %i!", target_number);
00015     vector<uint8_t> message;
00016     message.push_back(target_number);
00017     message.push_back(mode);
00018     message.push_back((timeout >> 8) & 0xFF);
00019     message.push_back(timeout && 0xFF);
00020     xbee_transmitter.transmit(message, addr_table);
00021 }
00022 
00023 void Target::get_address_for_xbee(int address_msb, int address_lsb)
00024 {
00025     addr_table[0] = address_msb >> 24;
00026     addr_table[1] = (address_msb >> 16) & 0xFF;
00027     addr_table[2] = (address_msb >> 8) & 0xFF;
00028     addr_table[3] = (address_msb) & 0xFF;
00029     addr_table[4] = address_lsb >> 24;
00030     addr_table[5] = (address_lsb >> 16) & 0xFF;
00031     addr_table[6] = (address_lsb >> 8) & 0xFF;
00032     addr_table[7] = (address_lsb) & 0xFF;
00033 }