上一篇小系统搭好了,MDK也装好了,可以写些代码进去了,但是外面没东西直观的显示,还要加上led灯,lcd屏等,这些还是自己玩,没意思还要通信吧,串口RS232 \422\ 485的驱动芯片加上就能组个小网络了,但是还想接入互联网就要有以太网控制器了;

先对以太网做个回顾复习吧,知识太多也学不玩但了解的多总不会被当傻子糊弄也好吧,这边就题外话了;

进入互联网的世界,电脑上的浏览器或者其它APP程序要访问网络,就要先调用socket库建立套接字,确定端口号,有了套接字的id就可以把任务交给协议栈来发送数据了,首先是你作为客户端就要先去确定服务器的IP地址,这个过程是通过发送查询DNS服务器来获得的,网络上不同运营商的不同省市都有一台DNS服务器提供域名和IP地址的查询,查完了就可以把IP地址等打包,看包的大小由TCP协议栈来处理,小的就直接加TCP头部,大了就切成几块分别编上序号,分别加上TCP头;然后IP协议栈再加上IP头或者UDP等协议头部;然后让操作系统通知网卡驱动进行局域网通信,也就是加上MAC头部,然后把数据包发送到局域网上,局域网上的路由器发现了包含自己的MAC头部的数据包就接收下来并转发出去,如果集成了model的就通过model加入ppp头pppOE头发到运营商的多路sop/model继续转发给局路由器,继续转发到服务器所在的运营商路由上去,直到发到了服务器端,并建立器通道,最后通信完,删除套接字,销毁通道;

再说回来,网卡是起到关键作用的,它里面包括RJ45接头、transformer变压器、phy芯片、mac芯片;mac里面有mac协议栈通过phy变成模拟信号再经过变压器把信号发到以太网线上(五类、超五类、六类),这才能把信号发出去;

单片机系统还是选个简单的集成了mac和phy的芯片,里面还集成了tcp/ip、udp等协议栈的芯片W5500吧,如果自己开发协议栈,我去,想都不敢想!单独给它接个电压转换LDO,再加个25MHz的有源晶振,就可以开始你的网络之旅了!

stm32部署mysql stm32搭建服务器_服务器