北极星

搜索历史清空

  • 水处理
您的位置:电网信息化智能化技术正文

基于高速单片机ATmega64的远程控制系统的研究

2013-06-08 11:28来源:EEFOCUS关键词:高速单片机服务器控制收藏点赞

投稿

我要投稿

服务器发送数据时,将用户数据交给UDP协议模块或TCP 协议模块处理,UDP协议模块或TCP协议模块将其首部和数据封装成UDP数据包或TCP数据包,然后将封装好的数据包交给IP协议模块,IP模块在上层 交给的数据包上添加IP首部,并封装成IP数据包,然后为 IP 数据包寻找路由,如果找不到相应路由,则向ICMP 协议发送出错报文,由ICMP 协议模块进行处理,在找到了合适的路由后,如果是以太网方式,则将数据包发送到网络接口层,利用ARP协议找到目的IP对应的物理地址,然后封装成以太网 帧,由网卡驱动程序将以太网帧发送出去。

4 利用HTTP协议实现Web接收与发送控制数据

在单片机系统中实现HTTP 协议服务端的功能,就可以为其他的客户机提供超文本信息,客户端只需要使用统一的浏览器就可以与服务器进行信息交换。

超文本传输协议(HTTP)是目前通过Internet进行信息交换最主要的方式。在Internet上HTTP 通讯经常发生在 TCP/IP 连接之上。其缺省端口是TCP 协议的80 端口,当然,其他的端口也是可以使用的。HTTP 协议是建立在请求/响应(request/response) 模型上的。首先由客户建立一条与服务器的TCP链接,并发送一个请求到服务器,请求中包含请求方法、URI、协议版本以及相关的 MIME(Multipurpose Internet Mail Extensions) 样式的消息。服务器响应一个状态行,包含消息的协议版本、一个成功或失败码以及相关的MIME 式样的消息(包含服务器的信息、资源实体的信息和可能的资源内容)。

单片机服务器除了包括HTML 文件以外,还有一个HTTP 驻留程序,用于响应计算机端的控制请求。用HTML 文件编写的网络界面,可以通过浏览器访问并利用相应的按扭向服务器发送HTTP 请求,此请求被送往由IP地址指定的URL。驻留程序接收到请求,在进行必要的操作后回送所要求的文件。在这一过程中,在网络上发送和接收的数据已经被分 成一个或多个数据包(packet),每个数据包包括:要传送的数据;控制信息,即告诉网络怎样处理数据包。TCP/IP决定了每个数据包的格式。

图5 是通过Web 浏览器看到的网络控制界面,必需将客户计算机与服务器系统的IP地址设置在一个段内。如本系统服务器IP地址设为192.168.0.10,客户机IP地址设为192.168.0.11,默认网关均为255.255.255.0。

(1) 发送控制数据过程:①通过浏览器向服务器系统(单片机)发送HTTP 请求;②服务器系统通过HTTP服务程序查看网页程序中表单内输入变量的变化;③取出变量值,调用串口程序将数据发出。

(2)接收采集数据过程:①系统HTTP 协议程序的http_serve 中调用串口程序接收串口数据,并用此数据取代其内部网页中的表格内“NO DATA”标记;②服务器系统把Web页面传送给用户界面的浏览器。

用低成本的AVR单片机和以太网控制器,配合适当的网络协议,实现了通过网络对RS232接口设备的数据采集及系统控制。如对其进行适当的改变与扩展,便可以用于其他接口的仪器仪表,并应用于更广泛的领域。由于系统的控制器使用的是单片机,限于其内部资源,所以网页文件不能过大。

以太网控制器的 RAM 以 256 字节为一页,是按页存储的结构,16位RAM地址的高 8位又叫页码。以太网控制器的16KB RAM的地址从0x4000~0x7FFF,即从页0x40 到页0x7F,共有64 页用来接收和发送数据包。这64页RAM是一块双端口RAM。所谓双端口就是说有两套总线连接到该RAM,总线A 用于以太网控制器读/写片上RAM,总线B 用于单片机读/写以太网控制器上的 RAM。总线A又叫Local DMA,总线B 又叫 Remote DMA。

2.1 数据包的发送过程

(1) 封装数据包:数据包在发送前,单片机将其按如图3所示的以太网帧格式封装好,并存放在外部SRAM。

(2)通过远程DMA将数据包写入到 RLT8019AS 的数据发送缓冲区, 数据的目的缓冲区首地址和字节数由内部寄存器RSCR0、1设定。

(3) 通过RTL8019AS的本地DMA将数据送入FIFO 缓冲器进行发送。

2.2 数据包的接收过程

(1)本地 DMA 将需要接收的数据包存入到接收缓冲环中。

(2)由远程 DMA 将接收缓冲环中的数据包写入到外部 SRAM 中。

如果以太网控制器运行正常,接收到数据包时自动启动本地 DMA 将数据存入接收缓冲环中,也就是说第一步是由 RTL8019AS 自动完成的。但是,接收缓冲环的范围需要设置,PSTART、PSTOP 分别用于设置接收缓冲环的起始页和发送页,设置了接收缓冲环之后,接收到的第一个数据包放置的位置由当前页面寄存器CURR 决定。

投稿与新闻线索:陈女士 微信/手机:13693626116 邮箱:chenchen#bjxmail.com(请将#改成@)

特别声明:北极星转载其他网站内容,出于传递更多信息而非盈利之目的,同时并不代表赞成其观点或证实其描述,内容仅供参考。版权归原作者所有,若有侵权,请联系我们删除。

凡来源注明北极星*网的内容为北极星原创,转载需获授权。

高速单片机查看更多>服务器查看更多>控制查看更多>