QAQ ==!

Dependencies:   mbed QEI-1 nRF24L01P xiugai

Committer:
AlexQian
Date:
Sat Dec 14 05:45:16 2019 +0000
Revision:
15:934289377f7a
Parent:
9:d03b1af2b8d8
Balance_Car;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
zhangyx 9:d03b1af2b8d8 1
zhangyx 9:d03b1af2b8d8 2
zhangyx 9:d03b1af2b8d8 3 #ifndef __MAC_LINK_H__
zhangyx 9:d03b1af2b8d8 4 #define __MAC_LINK_H__
zhangyx 9:d03b1af2b8d8 5
zhangyx 9:d03b1af2b8d8 6 #include "PN532.h"
zhangyx 9:d03b1af2b8d8 7
zhangyx 9:d03b1af2b8d8 8 class MACLink {
zhangyx 9:d03b1af2b8d8 9 public:
zhangyx 9:d03b1af2b8d8 10 MACLink(PN532Interface &interface) : pn532(interface) {
zhangyx 9:d03b1af2b8d8 11
zhangyx 9:d03b1af2b8d8 12 };
zhangyx 9:d03b1af2b8d8 13
zhangyx 9:d03b1af2b8d8 14 /**
zhangyx 9:d03b1af2b8d8 15 * @brief Activate PN532 as a target
zhangyx 9:d03b1af2b8d8 16 * @param timeout max time to wait, 0 means no timeout
zhangyx 9:d03b1af2b8d8 17 * @return > 0 success
zhangyx 9:d03b1af2b8d8 18 * = 0 timeout
zhangyx 9:d03b1af2b8d8 19 * < 0 failed
zhangyx 9:d03b1af2b8d8 20 */
zhangyx 9:d03b1af2b8d8 21 int8_t activateAsTarget(uint16_t timeout = 0);
zhangyx 9:d03b1af2b8d8 22
zhangyx 9:d03b1af2b8d8 23 /**
zhangyx 9:d03b1af2b8d8 24 * @brief write a PDU packet, the packet should be less than (255 - 2) bytes
zhangyx 9:d03b1af2b8d8 25 * @param header packet header
zhangyx 9:d03b1af2b8d8 26 * @param hlen length of header
zhangyx 9:d03b1af2b8d8 27 * @param body packet body
zhangyx 9:d03b1af2b8d8 28 * @param blen length of body
zhangyx 9:d03b1af2b8d8 29 * @return true success
zhangyx 9:d03b1af2b8d8 30 * false failed
zhangyx 9:d03b1af2b8d8 31 */
zhangyx 9:d03b1af2b8d8 32 bool write(const uint8_t *header, uint8_t hlen, const uint8_t *body = 0, uint8_t blen = 0);
zhangyx 9:d03b1af2b8d8 33
zhangyx 9:d03b1af2b8d8 34 /**
zhangyx 9:d03b1af2b8d8 35 * @brief read a PDU packet, the packet will be less than (255 - 2) bytes
zhangyx 9:d03b1af2b8d8 36 * @param buf the buffer to contain the PDU packet
zhangyx 9:d03b1af2b8d8 37 * @param len lenght of the buffer
zhangyx 9:d03b1af2b8d8 38 * @return >=0 length of the PDU packet
zhangyx 9:d03b1af2b8d8 39 * <0 failed
zhangyx 9:d03b1af2b8d8 40 */
zhangyx 9:d03b1af2b8d8 41 int16_t read(uint8_t *buf, uint8_t len);
zhangyx 9:d03b1af2b8d8 42
zhangyx 9:d03b1af2b8d8 43 uint8_t *getHeaderBuffer(uint8_t *len) {
zhangyx 9:d03b1af2b8d8 44 return pn532.getBuffer(len);
zhangyx 9:d03b1af2b8d8 45 };
zhangyx 9:d03b1af2b8d8 46
zhangyx 9:d03b1af2b8d8 47 private:
zhangyx 9:d03b1af2b8d8 48 PN532 pn532;
zhangyx 9:d03b1af2b8d8 49 };
zhangyx 9:d03b1af2b8d8 50
zhangyx 9:d03b1af2b8d8 51 #endif // __MAC_LINK_H__
zhangyx 9:d03b1af2b8d8 52