25 lines
557 B
C++
25 lines
557 B
C++
|
|
#include "net.h"
|
||
|
|
#include "pico/unique_id.h"
|
||
|
|
#include "w6300.h"
|
||
|
|
|
||
|
|
bool net_init() {
|
||
|
|
w6300::init_spi();
|
||
|
|
w6300::init_critical_section();
|
||
|
|
w6300::reset();
|
||
|
|
w6300::init();
|
||
|
|
if (!w6300::check()) return false;
|
||
|
|
|
||
|
|
pico_unique_board_id_t uid;
|
||
|
|
pico_get_unique_board_id(&uid);
|
||
|
|
w6300::net_info info = {};
|
||
|
|
info.mac[0] = (uid.id[0] & 0xFC) | 0x02;
|
||
|
|
info.mac[1] = uid.id[1];
|
||
|
|
info.mac[2] = uid.id[2];
|
||
|
|
info.mac[3] = uid.id[3];
|
||
|
|
info.mac[4] = uid.id[4];
|
||
|
|
info.mac[5] = uid.id[5];
|
||
|
|
w6300::init_net(info);
|
||
|
|
|
||
|
|
return true;
|
||
|
|
}
|