Split w6300 headers into public w6300.h and w6300_internal.h, rename pio files

This commit is contained in:
Ian Gulliver
2026-04-04 20:36:22 +09:00
parent aad458f44c
commit 6782025e38
11 changed files with 874 additions and 889 deletions

View File

@@ -4,8 +4,7 @@
#include "pico/unique_id.h"
#include "device.h"
#include "wizchip_conf.h"
#include "wizchip_spi.h"
#include "w6300.h"
static void send_bytes(const std::vector<uint8_t> &data) {
for (auto b : data) {
@@ -19,15 +18,18 @@ static bool w6300_init() {
wizchip_cris_initialize();
wizchip_reset();
wizchip_initialize();
if (getCIDR() != 0x6300) return false;
if (!wizchip_check()) return false;
pico_unique_board_id_t uid;
pico_get_unique_board_id(&uid);
uint8_t mac[6] = {
static_cast<uint8_t>((uid.id[0] & 0xFC) | 0x02),
uid.id[1], uid.id[2], uid.id[3], uid.id[4], uid.id[5]
};
setSHAR(mac);
wiz_NetInfo net_info = {};
net_info.mac[0] = (uid.id[0] & 0xFC) | 0x02;
net_info.mac[1] = uid.id[1];
net_info.mac[2] = uid.id[2];
net_info.mac[3] = uid.id[3];
net_info.mac[4] = uid.id[4];
net_info.mac[5] = uid.id[5];
network_initialize(net_info);
return true;
}
@@ -67,7 +69,9 @@ int main() {
pico_unique_board_id_t uid;
pico_get_unique_board_id(&uid);
std::copy(uid.id, uid.id + 8, info.board_id.begin());
getSHAR(info.mac.data());
wiz_NetInfo net_info;
wizchip_getnetinfo(&net_info);
std::copy(net_info.mac, net_info.mac + 6, info.mac.begin());
send_bytes(encode_response(msg->message_id, info));
break;
}