做了许多天的网络协议学习,懵懵懂懂了解了点,索性打开说明书开始模块的学习
之前三天的学习都是在协议栈上,今天的学习进入以太网接入方案。
ps.我使用的野火w5500网络扩展板
我们的方案按tcp/ip协议栈的不同归类为两大类,第一类是传统的软件tcp/ip协议栈;第二类是最新的硬件tcp/ip协议栈方案。
一.mac+phy方案
所谓的tcp/ip协议栈是一系列网络协议的统称,不仅包括我们熟知的tcp协议和ip协议,还有网络层的icmp(internet控制报文)协议,等....
传统的以太网接入方案由mcu+mac+phy再加入网络接口实现以太网的物理连接,通过主控芯片中植入tcp/ip协议代码实现通信及上层应用。由于软件协议栈操作需要主控mcu不停地响应中断,这需要很大程度上占用运算、时钟资源。而且在安全性上并没有保证。
二.硬件协议栈芯片方案
硬件协议栈方案
所谓的硬件协议栈是将传统的软件tcp/ip协议栈用硬件化的逻辑门电路来实现
以太网芯片的内核由传输层的tcp、udp、icmp、igmp等协议,网络层的ip,arp,pppoe等协议以及链路层的mac构成,再加上物理层的phy和外围的寄存器,内存,spi接口组成了这一套硬件化的以太网解决方案。这套硬件tcp/ip协议栈代替了以往的mcu来处理这些中断请求,即mcu只需要处理面向用户的应用层数据即可,传输层、网络层、链路层以及物理层全部由外围wiznet的芯片完成。
首先模块针脚如下
w5500的socket初始化,w5500需设置以下寄存器的参数:
基本设置
1.模式寄存器
2.中断屏蔽寄存器
3.重发时间寄存器
4.重发计数寄存器
网络信息
1.网关地址寄存器
2.本机物理地址寄存器
3.子网掩码寄存器
4.本机ip地址寄存器
本机物理地址寄存器的地址是mac层的硬件地址,mac地址可由ieee指定。
设置端口tx/rx存储信息,每个端口的基地址和屏蔽地址在这里确定并保存。w5500有一个通用寄存器,8个socket寄存器去,以及对应每个socket的收/发缓存区。每一个socket的发送(接收)缓存区都在一个16kb的物理发送(接收)内存中,初始化分配为2kb。无论给每个socket分配多大的收/发缓存,都必须在16位的偏移地址范围内(从0x0000到0xffff)w5500有一个16kb发送内存用于socket_n的发送缓存区,以及一个16kb的接收内存用于socket_n接收缓存区。发送初始缓存被分配给了每个socket发送缓存(2kb x 8 = 16kb),初始化分配的2kbsocket发送缓存,可以通过使用socket发送缓存大小寄存器重新分配。一旦所有的socket发送缓存大小寄存器配置完成,16kb的发送内存就会按照配置分配给每个socket的发送缓存,并按照从socket0到7顺序分配。16kb的发送内存中分配了对应的发送缓冲区,用于为来自主机传输的数据做缓存。读取内存同理。
明天继续接下来的设置,然后开始spi传输的简单学习。。
继续加油
电视分集天线系统的研究
机器视觉软件开发的多样性
噪声敏感中使用PWM伺服放大器
模拟电路网络课件 第二十三节:乙类双电源互补对称功率放大电路
7种视频信号接口的传输距离介绍
全硬件TCP/IP协议栈学习笔记(第四天:全硬件TCP/IP协议模块学习)
王子的专用?估计也只有OPPO了!
特斯拉上海工厂恢复生产交付 国产Model 3周产3000辆
光盘销毁机的处理方式
深圳成全球首个公交出租全电动化城市!昆明要求新增网约车全部为纯电动车
大米重金属镉快速检测仪的介绍
保千里打令VR手机新品发布会邀请函刷遍手机科技圈
单通道红外遥控电路设计及应用
物联网在2019年有哪一些关键词
形状公差的分类理解
新的Honor Super Fast Power Bank 12000支持66W快速充电
基于TMS320DM643的视频监控系统的设计
4G路由器优势—突破有线限制,畅享无限网络
为什么现在智能电话机器人的应用越来越广泛了
iOS 14.5或将推出新的财务健康功能