mirror of
https://github.com/oliverschmidt/contiki.git
synced 2024-12-22 10:30:13 +00:00
Node ID is stored in external flash and restored on bootup
This commit is contained in:
parent
3bee71ad81
commit
91be7cebc4
@ -26,7 +26,7 @@
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* @(#)$Id: contiki-z1-main.c,v 1.3 2010/08/26 16:01:20 joxe Exp $
|
||||
* @(#)$Id: contiki-z1-main.c,v 1.4 2010/08/26 22:08:11 nifi Exp $
|
||||
*/
|
||||
|
||||
#include <signal.h>
|
||||
@ -231,7 +231,7 @@ main(int argc, char **argv)
|
||||
|
||||
|
||||
/* Restore node id if such has been stored in external mem */
|
||||
//Enric node_id_restore();
|
||||
node_id_restore();
|
||||
|
||||
|
||||
/* for setting "hardcoded" IEEE 802.15.4 MAC addresses */
|
||||
|
@ -28,7 +28,7 @@
|
||||
*
|
||||
* This file is part of the Contiki operating system.
|
||||
*
|
||||
* $Id: node-id.c,v 1.1 2010/08/24 16:26:38 joxe Exp $
|
||||
* $Id: node-id.c,v 1.2 2010/08/26 22:08:11 nifi Exp $
|
||||
*/
|
||||
|
||||
/**
|
||||
@ -40,6 +40,8 @@
|
||||
|
||||
#include "node-id.h"
|
||||
#include "contiki-conf.h"
|
||||
#include "dev/xmem.h"
|
||||
#include <string.h>
|
||||
|
||||
|
||||
unsigned short node_id = 0;
|
||||
@ -49,12 +51,27 @@ unsigned char node_mac[8];
|
||||
void
|
||||
node_id_restore(void)
|
||||
{
|
||||
//TODO
|
||||
unsigned char buf[12];
|
||||
xmem_pread(buf, 12, NODE_ID_XMEM_OFFSET);
|
||||
if(buf[0] == 0xad &&
|
||||
buf[1] == 0xde) {
|
||||
node_id = (buf[2] << 8) | buf[3];
|
||||
memcpy(node_mac, &buf[4], 8);
|
||||
} else {
|
||||
node_id = 0;
|
||||
}
|
||||
}
|
||||
/*---------------------------------------------------------------------------*/
|
||||
void
|
||||
node_id_burn(unsigned short id)
|
||||
{
|
||||
//TODO
|
||||
unsigned char buf[12];
|
||||
buf[0] = 0xad;
|
||||
buf[1] = 0xde;
|
||||
buf[2] = id >> 8;
|
||||
buf[3] = id & 0xff;
|
||||
memcpy(&buf[4], node_mac, 8);
|
||||
xmem_erase(XMEM_ERASE_UNIT_SIZE, NODE_ID_XMEM_OFFSET);
|
||||
xmem_pwrite(buf, 12, NODE_ID_XMEM_OFFSET);
|
||||
}
|
||||
/*---------------------------------------------------------------------------*/
|
||||
|
Loading…
Reference in New Issue
Block a user