Librairie xbee.
Dependents: NerfUS-Coord NerfUSTarget
Fork of APP3_xbee by
include/RealXbeeTransmitter.hpp@30:482607b8eac4, 2017-04-09 (annotated)
- Committer:
- GaiSensei
- Date:
- Sun Apr 09 21:21:47 2017 +0000
- Revision:
- 30:482607b8eac4
- Parent:
- 26:bb44aeb9665e
- Child:
- 31:8f294520bdc3
Fix mallocs in interrupt. Use local variables instead of vector.push_back
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
GaiSensei | 14:cc65f603e659 | 1 | #ifndef REAL_XBEE_TRANSMITTER_HPP |
GaiSensei | 14:cc65f603e659 | 2 | #define REAL_XBEE_TRANSMITTER_HPP |
GaiSensei | 14:cc65f603e659 | 3 | |
GaiSensei | 16:f4df01448b59 | 4 | #include "xbee.h" |
GaiSensei | 16:f4df01448b59 | 5 | #include "XbeeTransmitterInterface.hpp" |
GaiSensei | 14:cc65f603e659 | 6 | |
GaiSensei | 14:cc65f603e659 | 7 | class RealXbeeTransmitter : public XbeeTransmitterInterface |
GaiSensei | 30:482607b8eac4 | 8 | { |
GaiSensei | 14:cc65f603e659 | 9 | public: |
GaiSensei | 14:cc65f603e659 | 10 | RealXbeeTransmitter(); |
GaiSensei | 23:2b67589150d9 | 11 | virtual void transmit(const std::vector<uint8_t>& bytes, int address[8]); |
GaiSensei | 30:482607b8eac4 | 12 | virtual void transmit(uint8_t bytes[4], int address[8]); |
GaiSensei | 30:482607b8eac4 | 13 | void init(); |
GaiSensei | 30:482607b8eac4 | 14 | void transmit_target_message(); |
GaiSensei | 21:441645a394c2 | 15 | |
GaiSensei | 21:441645a394c2 | 16 | private: |
GaiSensei | 30:482607b8eac4 | 17 | Thread transmit_target_messages_thread; |
GaiSensei | 26:bb44aeb9665e | 18 | const static int message_size = 4; |
GaiSensei | 30:482607b8eac4 | 19 | |
GaiSensei | 30:482607b8eac4 | 20 | struct target_message |
GaiSensei | 30:482607b8eac4 | 21 | { |
GaiSensei | 30:482607b8eac4 | 22 | uint8_t bytes[message_size]; |
GaiSensei | 30:482607b8eac4 | 23 | int address[8]; |
GaiSensei | 30:482607b8eac4 | 24 | }; |
GaiSensei | 30:482607b8eac4 | 25 | |
GaiSensei | 30:482607b8eac4 | 26 | Mail<target_message, 30> target_messages_to_transmit; |
GaiSensei | 14:cc65f603e659 | 27 | }; |
GaiSensei | 14:cc65f603e659 | 28 | |
GaiSensei | 14:cc65f603e659 | 29 | #endif |