#register #w5500 #wiznet #simulation #chip #offload #internet

w5500-regsim

Wiznet W5500互联网卸载芯片的寄存器模拟

10次发布

0.1.0 2024年6月9日
0.1.0-alpha.92023年8月6日
0.1.0-alpha.82022年4月10日
0.1.0-alpha.72022年3月31日
0.1.0-alpha.32021年2月11日

#1011 in 嵌入式开发

Download history 32/week @ 2024-04-19 1/week @ 2024-04-26 182/week @ 2024-06-07 18/week @ 2024-06-14

498 每月下载量

MIT 许可证

390KB
3.5K SLoC

w5500-regsim

Wiznet W5500互联网卸载芯片的寄存器模拟。

该库使用 std::net 套接字实现了 w5500_ll::Registers 特性,以在本地PC上模拟W5500。

这是一个尽可能实现的库,旨在辅助应用代码的开发,并非所有W5500的特性都将被完全模拟。

备注

目前处于早期alpha状态,代码中存在许多待办事项。

未实现

  • MR(模式寄存器)
    • 唤醒网络
    • Ping块
    • PPPoE模式
    • 强制ARP
  • INTLEVEL(中断低级定时器寄存器)
  • IR(中断寄存器)
  • IMR(中断屏蔽寄存器)
  • GAR(网关IP地址寄存器)
  • SUBR(子网掩码寄存器)
  • SHAR(源硬件地址寄存器)
  • SIPR(源IP地址寄存器)
  • INTLEVEL(中断低级定时器寄存器)
  • IR(中断寄存器)
  • IMR(中断屏蔽寄存器)
  • SIR(套接字中断寄存器)
    • 部分实现;参见SN_IR
  • SIMR(套接字中断屏蔽寄存器)
  • RTR(重试时间寄存器)
  • RCR(重试计数寄存器)
  • PTIMER(PPP LCP请求定时器寄存器)
  • PMAGIC(PPP LCP魔数寄存器)
  • PHAR(PPP目标MAC地址寄存器)
  • PSID(PPP会话标识寄存器)
  • PMRU(PPP最大分段大小寄存器)
  • UIPR(不可达IP地址寄存器)
  • UPORT(不可达端口寄存器)
  • PHYCFGR(PHY配置寄存器)
  • SN_MR(套接字n模式寄存器)
  • SN_IR(套接字n中断寄存器)
    • DISCON
    • TIMEOUT
    • SENDOK
  • SN_SR(套接字n状态寄存器)
    • SynSent
    • SynRecv
    • FinWait
    • 关闭
    • TimeWait
    • CloseWait
    • LastAck
    • Macraw
  • SN_MSSR(套接字n最大分段大小寄存器)
  • SN_TOS(套接字n IP TOS 寄存器)
  • SN_IMR(套接字n中断屏蔽寄存器)
  • SN_FRAG(套接字n IP头部中的分段偏移寄存器)
  • SN_KPALVTR(套接字n保持活动定时器寄存器)

信不信由你,这不仅仅是一个寄存器列表。

依赖关系