int test_get_set_pan(void) { uint16_t pan = 0x0000, new_pan; new_pan = at86rf231_set_address(pan); if (new_pan != pan) { printf("new_pan [%d] != pan [%d] after set_address\n", new_pan, pan); return 0; } new_pan = at86rf231_get_address(); if (new_pan != pan) { printf("new_pan [%d] != pan [%d] after get_address\n", new_pan, pan); return 0; } pan = 0xffff; new_pan = at86rf231_set_address(pan); if (new_pan != pan) { printf("new_pan [%d] != pan [%d] after set_address\n", new_pan, pan); return 0; } new_pan = at86rf231_get_address(); if (new_pan != pan) { printf("new_pan [%d] != pan [%d] after get_address\n", new_pan, pan); return 0; } pan = 0x0004; /* randomly chosen by fair dice roll ;-) */ new_pan = at86rf231_set_address(pan); if (new_pan != pan) { printf("new_pan [%d] != pan [%d] after set_address\n", new_pan, pan); return 0; } new_pan = at86rf231_get_address(); if (new_pan != pan) { printf("new_pan [%d] != pan [%d] after get_address\n", new_pan, pan); return 0; } return 1; }
int test_get_set_address(void) { uint16_t addr = 0x0000, new_addr; new_addr = at86rf231_set_address(addr); if (new_addr != addr) { printf("new_addr [%d] != addr [%d] after set_address\n", new_addr, addr); return 0; } new_addr = at86rf231_get_address(); if (new_addr != addr) { printf("new_addr [%d] != addr [%d] after get_address\n", new_addr, addr); return 0; } addr = 0xffff; new_addr = at86rf231_set_address(addr); if (new_addr != addr) { printf("new_addr [%d] != addr [%d] after set_address\n", new_addr, addr); return 0; } new_addr = at86rf231_get_address(); if (new_addr != addr) { printf("new_addr [%d] != addr [%d] after get_address\n", new_addr, addr); return 0; } addr = 0x0004; /* randomly chosen by fair dice roll ;-) */ new_addr = at86rf231_set_address(addr); if (new_addr != addr) { printf("new_addr [%d] != addr [%d] after set_address\n", new_addr, addr); return 0; } new_addr = at86rf231_get_address(); if (new_addr != addr) { printf("new_addr [%d] != addr [%d] after get_address\n", new_addr, addr); return 0; } return 1; }
int test_get_set_address_long(void) { uint64_t addr = 0x0000000000000000, new_addr; new_addr = at86rf231_set_address(addr); if (new_addr != addr) { printf("new_addr [%" PRIu64 "] != addr [%" PRIu64 "] after set_address\n", new_addr, addr); return 0; } new_addr = at86rf231_get_address(); if (new_addr != addr) { printf("new_addr [%" PRIu64 "] != addr [%" PRIu64 "] after get_address\n", new_addr, addr); return 0; } addr = 0xffffffffffffffff; new_addr = at86rf231_set_address(addr); if (new_addr != addr) { printf("new_addr [%" PRIu64 "] != addr [%" PRIu64 "] after set_address\n", new_addr, addr); return 0; } new_addr = at86rf231_get_address(); if (new_addr != addr) { printf("new_addr [%" PRIu64 "] != addr [%" PRIu64 "] after get_address\n", new_addr, addr); return 0; } addr = 0x0000000002bb3f52; /* randomly chosen by fair dice roll ;-) */ new_addr = at86rf231_set_address(addr); if (new_addr != addr) { printf("new_addr [%" PRIu64 "] != addr [%" PRIu64 "] after set_address\n", new_addr, addr); return 0; } new_addr = at86rf231_get_address(); if (new_addr != addr) { printf("new_addr [%" PRIu64 "] != addr [%" PRIu64 "] after get_address\n", new_addr, addr); return 0; } return 1; }
/* * @brief Get the current address of transceiver device * * @param t The transceiver device * * @return The configured address of the device * * TODO: define error behavior */ static radio_address_t get_address(transceiver_type_t t) { switch (t) { case TRANSCEIVER_CC1100: #if (defined(MODULE_CC110X) || defined(MODULE_CC110X_LEGACY)) return cc110x_get_address(); #elif MODULE_CC110X_LEGACY_CSMA return cc1100_get_address(); #else return 0; /* XXX see TODO above */ #endif #ifdef MODULE_CC2420 case TRANSCEIVER_CC2420: return cc2420_get_address(); #endif #ifdef MODULE_MC1322X case TRANSCEIVER_MC1322X: return maca_get_address(); #endif #ifdef MODULE_NATIVENET case TRANSCEIVER_NATIVE: return nativenet_get_address(); #endif #ifdef MODULE_AT86RF231 case TRANSCEIVER_AT86RF231: return at86rf231_get_address(); #endif default: return 0; /* XXX see TODO above */ } }