Ⅰ 51单片机实现TCP/IP
51 + 嵌入式以太网芯片.OK 了
到这里有你想要的:
http://www.bocon.com.cn/index.php?option=com_content&task=view&id=317&Itemid=670&gclid=CP70rIKr2aECFQMXewodwVLpHA
但价格有点贵.
普通51做不了 TCP/IP, 在下面找一款大 RAM(1K以上) 的搞定
http://www.mcu-memory.com/
不用写 TCP/IP协议栈,只要会配置芯片就行了.主要工作集中到应用的开发.
如果你的时间多,或者资金不多的情况下,就用回你一开始说的方法.这时你只能还得要花一大半时间在移植协议栈方面(当然网上有移植好的,但还要时间消化).协议栈就用uIP 或 LwIP
Ⅱ 51单片机可以和电脑那样设ip地址吗
像你下面说的,要使用ip那么肯定得使用网口通讯才行啊,你51单片机恐怕是没有集成以太网控制器的所以必须添加专门的芯片才行。添加芯片后你设置的IP就是你那个芯片的IP而且那个芯片与51单片机通讯肯定不是使用的网口通讯因为51根本没有这方面硬件,有可能使用串口啊,并口啊等等其他通讯方式,那个芯片的作用只是将你51单片机的某种通讯方式转换成网口的通讯方式
Ⅲ 51单片机可以驱动网口吗
可以,就是速度不太快,如果是ARM9内核的单片机,则速度就具有实用性了
随便在淘宝上买一个单片机 ENC28J60以太网模块 ,接上51,把驱动程序改一下,就可以了,你对TCP/IP协议要非常熟悉。
Ⅳ 如何学习51单片机上网技术
总体说来,TCPIP并不是一件十分神秘的事情,尤其是基于MCU的应用,不要求进行特别复杂的处理,很多情况下只需要实现最最基本的功能就行了。在实现MCU的TCPIP移植之前,必须对TCPIP有一定程度的了解,可以找一本合适的书籍来翻阅一下,《TCP/IP详解,卷1:协议》 http://www.laogu.com/display.aspx?did=510是一本完整而详细的TCP/IP协议指南。描述了属于每一层的各个协议以及它们如何在不同操作系统中运行。 对于TCPIP在MCU上的应用并不要求对协议的所有部分都了解的那么清楚,重点需要了解TCPIP的各个层次的关系,链路层,有时也称作数据链路层或网络接口层,通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡。它们一起处理与电缆(或其他任何传输媒介)的物理接口细节。网络层,有时也称作互联网层,处理分组在网络中的活动,例如分组的选路。在T C P / I P协议族中,网络层协议包括I P协议(网际协议),I C M P协议(I n t e r n e t互联网控制报文协议),以及I G M P协议(I n t e r n e t组管理协议)。 运输层主要为两台主机上的应用程序提供端到端的通信。在T C P / I P协议族中,有两个互不相同的传输协议: T C P(传输控制协议)和U D P(用户数据报协议)。T C P为两台主机提供高可靠性的数据通信。它所做的工作包括把应用程序交给它的数据分成合适的小块交给下面的网络层,确认接收到的分组,设置发送最后确认分组的超时时钟等。由于运输层提供了高可靠性的端到端的通信,因此应用层可以忽略所有这些细节。而另一方面, U D P则为应用层提供一种非常简单的服务。它只是把称作数据报的分组从一台主机发送到另一台主机,但并不保证该数据报能到达另一端。任何必需的可靠性必须由应用层来提供。这两种运输层协议分别在不同的应用程序中有不同的用途。应用层负责处理特定的应用程序细节。几乎各种不同的T C P / I P实现都会提供Telnet,FTP,SMTP 简单邮件传送协议,SNMP简单网络管理协议这些通用的应用程序。 各种类型的数据报格式也是需要了解的重点,使用Sniffer软件可以十分方便的在电脑上查看各种数据报的收发状态.同时Sniffer也是以后调试TCPIP协议寨的一个很有用的工具,Sniffer的使用方式可以在www.google.com上很方便的搜索到. TCP/IP的分层,以太网封装,IP首部,子网寻址和子网掩码,ARP地址解析协议,ICMP控制报文协议中的ECHO(Ping程序),UDP用户数据报协议,TFTP简单文件传送协议,特别是TCP传输控制协议是TCPIP在MCU上应用所必需掌握的关键知识. 在对TCPIP有了一定程度的了解之后,如何具体的实现就成了问题的关键,我在学习TCPIP的过程中前后一共使用或阅读了下面的3中TCPIP协议寨,这里有对3个协议寨的比较和下载地址. uIP,适合8bit单片机上使用,但是结构比较复杂,不适宜进行移植,也不是一份很适合阅读的代码.下载地址 http://www.sics.se/~adam/uip/ Lwip,适合16/32bit单片机上使用,是嵌入式系统开发人员最好的学习TCPIP的代码,下载地址 http://www.sics.se/~adam/lwip/ zLip,南开大学电子应用实验室编写的一个协议寨,有uip和lwip的优点,推荐初学者学习 http://www.zlmcu.com/project/ZLIP/zlip.htm或 http://www.laogu.com/display.aspx?did=859 在了解了具体实现之后,就有需要在MCU上具体的运行一下了,这里提供一个我做的硬件电路,但是其中我使用了GAL16V8芯片进行地址分配,所以需要有一个支持16V8的烧写器了,同时,如果将at89c55芯片换成sst89c58,并从www.sst.com公司网站上下载一个monitor 51的仿真监控程序,使用烧写器写入sst89c58中,就可以通过串口和Keil软件配合进行硬件仿真了.(市场上的那些100多元的51仿真器就是这个样子的)
Ⅳ 51系列单片机和百兆以太网芯片连接
用51的做..可能你的速度达不到吧..你还是用ARM的吧..ARM7
比如LPC2210这样的芯片就可以实现了..
Ⅵ 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编程便能完成产品开发工作的的网络功能开发部分。
(6)51单片机以太网扩展阅读
以太网协议:
一个标准的以太网物理传输帧由七部分组成。
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),就认为接收数据开始。
Ⅶ ENC28J60与51单片机的网络传输怎么做
ENC28J60提供了物理层和MAC层,它的接口是SPI的,单片机通过SPI控制ENC28J60收发数据包就行了,这个数据包是原始的以太网数据包,上面的协议栈要在单片机内软件实现。
Ⅷ OPC与51单片机的连接问题
51上跑这些程序基本不可能的吧?PC端倒是问题应该不大!!一定要用以太网的话,试试考虑串口转以太网的模块什么的?好像有个山东的有人科技什么的专门做这种模块!!
Ⅸ 几块51单片机可不可以通过以太网集线器连在一起,然后再连一部电脑,互相通讯啊
可以,但难度还是很大的,你可以买块智信51开发板,他们做的有网口。
Ⅹ STC89C52RC能实现以太网通信吗
要用STC89C52RC实现以太网通信,理论可以,但实际却很难。一,必须把TCP/IP协议写到程序中,仅这个协议代码就远远超过8KB,而STC89C52的FLASH的容量仅有8KB。二,STC89系列有大容量的型号,可其运行速度太低。要实现以太网通信,应运行操作系统,可51单片机的速度和资源是很难运行操作系统的。三,需要配一片8位的以太网控制芯片RTL8019才能连通网络,就要写驱动程序。就算这些都完成了,那上网的速度是无法忍受的,想当初电脑用猫上网,那速度就奇慢,可51单片机上网基本是卡死了。