A. 51单片机接入以太网的几种方案
1,8019,这是最早的尝试。8019是一款ISA接口的以太网网卡芯片,只支持10M以太网。因为ISA总线与单片机的总线很类似,所以可以很容易地接到8051上。不过这颗芯片已经停产,市面上基本都是拆机件。这颗芯片的源程序,网上也很好找到。
2,CP2200/CP2201,这两颗是silicon出的,也只支持10M以太网。优点是体积小,功耗低,符合8051总线时序。而且silicon还配合它的c8051f单片机提供了一个套完整的TCP/IP库,并且有一个图形化的接口可以配置,用这个工具,可以在几分钟内做一个网络应用程序出来。
3,ENC28J60,这是一颗SPI接口的以太网控制芯片,可以用三线SPI接口来控制。同样提供了TCP/IP库。不过对于不带硬件SPI的单片机来说,速度就有点慢了。
4,自带以太网控制器的8051.很早以前就有一颗,DS80C400,不过这颗价格太高。台湾的泰发科技有两款可以考虑:TF320,TF470。TF320是一颗通用的带网络功能的8051单片机,厂家提供有完整的TCP/IP应用库,适用于各类需要做以太网通讯的场合。TF470是一颗带路由器功能的8051单片机,适合于做单独的路由器,或者做成多功能家庭网关设备。8051做以太网通讯功能,受到8051的功能限制,只适合做简单的应用,如果需要的功能比较复杂,建议还是考虑32位的ARM单片机。
B. 51单片机接入以太网的几种方案
1、MAC+PHY方案
所谓的TCP/IP协议栈是一系列网络协议的统称,不仅包括我们熟知的TCP协议和IP协议。
还有网络层的ICMP(Internet控制报文)协议、IGMP(Internet组管理)协议、ARP(地址解析)协议,传输层的UDP(用户数据包)协议,应用层的HTTP(超文本传输)协议、DNS(域名解析)协议、FTP(文件传送)协议、SMTP(简单邮件管理)协议等等。
传统的以太网接入方案由MCU+MAC+PHY再加入网络接口实现以太网的物理连接,通过在主控芯片中植入TCP/IP协议代码实现通信及上层应用。
应用这种软件TCP/IP协议栈方式实现的比较成熟方案有ENC28J60,CS8900A,DM9000,当然也有像STM32F107这类(内部自带MAC)+PHY等方案。
2、硬件协议栈芯片方案
由MCU+硬件协议栈芯片(内含MAC和PHY)直接加网络接口,便可方便的实现单片机联网,所有的处理TCP/IP协议的工作都是通过这位MCU的“小秘书”——硬件协议栈芯片来完成。
以太网芯片的内核由传输层的TCP、UDP、ICMP、IGMP等协议、网络层的IP、ARP、PPPoE等协议以及链路层的MAC构成,再加上物理层的PHY和外围的寄存器、内存、SPI接口组成了这一整套硬件化的以太网解决方案。
这套硬件TCP/IP协议栈代替了以往的MCU来处理这些中断请求,即MCU只需要处理面向用户的应用层数据即可,传输层、网络层、链路层及物理层全部由外围WIZnet的芯片完成。
这套方案从硬件开销和软件开发两个方面来简化前面所述的五层网络模型,简化产品开发方案。这样一来,工程师们就不必再面对繁琐的通信协议代码,只需要了解简单的寄存器功能以及Socket编程便能完成产品开发工作的的网络功能开发部分。
(2)单片机网络芯片扩展阅读
以太网协议:
一个标准的以太网物理传输帧由七部分组成。
PR SD DA SA TYPE DATA FCS
同步位 分隔位 目的地址 源地址 类型字段 数据段 帧校验序列 7 1 6 6 2 46~1500 4
除了数据段的长度不定外,其他部分的长度固定不变。数据段为46~1500字节。以太网规定整个传输包的最大长度不能超过1514字节(14字节为DA、SA、TYPE),最小不能小于60字节。
除去DA、SA、TYPE14字节,还必须传输46字节的数据,当数据段的数据不足46字节时需填充,填充字符的个数不包括在长度字段里;超过1500字节时,需拆成多个帧传送。
事实上,发送数据时,PR、SD、FCS及填充字段这几个数据段由以太网控制器自动产生;而接收数据时,PR、SD被跳过,控制器一旦检测到有效的前序字段(即PR、SD),就认为接收数据开始。
C. WiFi芯片有哪些型号的,51单片机上用的。
估计也就只能使用别人做好的模块吧,如果是以太网的话。接网线的方案比较多。但是也就只能用51的速度去传数据了。而且价格也比较贵,如果是51和51传数据,可以用无线模块(很多选择,但不是以太网的)
51和wifi这2样是速度不匹配。换个高速的mcu估计还有点用,例如M3、M4、PIC 等32位mcu
D. 单片机与网络的通信
问题说得不太清楚:
1,您想用什么网连接?
我曾经做过这个项目,当时使用的是MCU+串口+Modem远程控制,协议使用UDP+IP+PPP,您如果想简化通信协议栈,也可以使用该协议栈。TCP涉及到排序及重发机制,比较复杂,同时资源占用比较多。但如果对TCP进行裁剪,也可以用51实现,有相关图书的中文译本,我看过。如果使用ARM开发板+嵌入式操作系统+TCP/IP函数组,开发会快很多。
2,网页放在那里?
说实话,不知道您设计的方案。您是想使用PC机来控制远程MCU?还是反之?还是其他?如果使用PC控制远程MCU,你可以选择将网页放在MCU中,这样需要HTML协议。其实也可以将界面设计在PC中,这样可以省掉一层HTML协议,比较简单,但在PC上需要安装这个控制界面,不能随心所欲地使用任意PC操作,不是很方便。
E. 单片机控制74HC4066芯片,控制网络的四芯断和开,可是上不了网
没用过4066来控制网线,说的不一定对
(1)一种可能 是网线上是双端信号,你用的是没有负电源的模拟开关,只能开关单端信号。可以把单片机用隔离电源(例如电池)供电,VCC和GND各接一个100千欧左右的电阻到电脑地,试试看有无变化。
(2)网线上信号速度会不会太快?强行设置为10M试试看?10M半双工、全双工...........
F. 关于单片机芯片 max 232和1488的
1488和1489,是落后、过时的转换器件。
它们有一个把RS232转换到TTL电平;
另一个把TTL转换到RS232电平,这块芯片,还需要+-12V的电源供电。
它们早已经被MAX232芯片代替。
MAX232芯片,仅仅需要+5V供电,就可以完成两种电平转换。
-----
现在,搞串口的网络,都用MAX485了,MAX232也已经落后了。