ZLIP使用简介内容摘要:

1、用简介 李章林 1 ( 1 南开大学 电子应用实验室 , 1 目录结构 : P 协议栈程序所在目录。 : 议。 :。 : 网络接口层。 : 议层。 : 存管理程序。 : 网络接口协议 所在目录。 : 议。 : 以太网接口协议。 : 太网接口芯片驱动程序。 : 全局函数和宏定义所在目录 : 应用层协议所在目录 : 主程序 , 这里包含一个 如何 使用的例子程序。 录下是 工程文件所在目录。 用 开 录下是各种类型的 51 单片机的头文件。 2 概述 单片机上网技术 , 是当前的一个热门技术。 单片机上网技术中的一个重要部分是在单片上实现 P 协议栈。 现在可获得的 2、P 源代码一般并不为 51 单片机设计 , 而 51 单片机和 译器有其自身的特点 : 存储类型 、 函数指针 、 重入函数等 , 是针对这些特点设计的 P 协议栈。 计的目标是 : 1) 精简 P 协议栈 , 以减小代码量。 前没有支持 议 , 议也只支持其中的 议 (响应 据包 )。 一个功能全面的 P 协议栈 , 但是相对 51 来说代码量较大。 2) 应用层接口简单 , 以兼容通用的 口。 很小的代码量和 减小代码量( 选择 目标器件时 , 代码为 5K 左右 ) 和 用量 ( 100 字节左右 )。 用方案 , 没有和 套接字接口兼容 ,应用层接口较复杂。 3) 针对 译器 3、设计。 所有的外部变量都使用了 型 , 全部指针都为明确存储类型的指针 , 需要重入的函数已经声 明为 使用 小模式下编译。 使用 12M 晶振 、 译器 、 89片下测试的 技术参数如下 : 表 1 : 技术参数 代码量 ( 字节 ) 外部 用量 ( 字节 ) 发送速度 ( 字节 / 秒 ) 14 841 11068 特点如下 : 1) 有 适中 代码量和 用量。 2) 使用 类似 套接字接口 , 使用方便。 3) 支持多 接 、 多网络设备。 能方便 地 移植到多任务操作系统和其它。 能方便地替换网络接口协议和网卡驱动设备。 4) 支持 令的响应。 5 ) 为单片机设计 : 4、 所有的外部变量都使用了 型 , 全部指针都为明确存储类型的指针 ,需要重入的函数已经声明为 使用 小模式 编译。 3 电路图 图 1: 路左半部分 图 2: 路右半部分 该程序 不能在 软件仿真 , 因为程序的运行需要外部电路配合。 该 51 系统的外部电路主要有 : 以太网接口芯片 路 、 外部 路。 以太网接口芯片 路图 , 如图 1 和图 2 表示。 地址线 , 片选线 ( 低电平有效 ), 4 应用层接口 口函数基本和 套接字接口相同。 4 1 提供的用户接口函数 :。 函数原型 : 功能 : 申请一个套接字。 这个套接字的本地 址。 返回 型指针 , 如果申请失败返 5、回。 函数原型 :。 功能 : 向 址为 服务器的 口发起连接。 参数 于设置当接收到数据包和对方要求关闭 接时应该调用的回调函数指针。 连接成功返回否则返回。 函数原型 : 功能 : 发送数据。 发送数据的 接是套接字指针 应的连接 , 发送的数据的起始地址为 大小为 发送成功返回 否则返回 函数原型 :。 功能 : 快速发送数据。 在使用 数时 , 你首先需要将数据放入 向的 内存中 , 然后调用 数 , 接着该函数会将 向的内存区数据拷贝到 冲区中。 使用 你首先用 得一个 冲区 , 然后直接将数据放入 冲区中 , 从而比 数少一次数据拷贝 , 提高发送速度。 参数 6、: 发送数据的 接是套接字指针 应的连接 , 发送的数据 放在 存。 发送成功返回 否则返回。 函数原型 :。 功能 : 使用套接字 口监听。 参数 当有客户端向这个监听端口连接成功时调用的回调函数指针。 函数原型 : 功能 : 我方主动关闭连接时调用 数 , 它将要求关闭套接字 应的连接。 回以后这个 接可能保持 , 因为 另一方还没有发起关闭请求。 函数原型 : 功能 : 当使用完这个套接字以后 , 调用 将这个套接字释放 , 还给系统。 4 2 使用 步骤 使用 , 在你的主程序中 (请看示例程序的 件 )需要做的步骤如下 : 1)首先设置一个 25定时中断函数 7、( 示例程序为 数 )。 请在 中断 函数中调用; ; ;三个函数。 2)写 数 , 它应该有如下的参数和返回值 , 函数名可以任意 : 使用 数时 , 作为 数的一 个 参数 , 也就是设置该 接收函数。 当 接接收到对方数据时 , 将自动调用 数。 向接收的数据 , 接收的数据量的大小。 你 可以在 处理接收的数据。 当程序中有多个 接同时存在时 , 你需要给每个连接准备一个数。 3)写 数 , 它应该有如下的参数和返回值 , 函数名可以任意 : 似 于 数 , 当 接的另一方首先向我方发起关闭连接的请求时 , 系统将自动调用 数。 向将要 关闭 的 如果你想立即关闭这个连接 8、则在 数中调用 数。 当程序中有多个 接同时存在时 ,你需要给每个连接准备一个 数。 4)写 数。 如果你的程序中用到 数监听某端口 , 这时 需要写数。 它应该有如下的参数和返回值 , 函数名可以任意 : 一个 正在 受了对方的连接以后将会自动调用该函数。 得 这个连接的控制权的 针。 一般在 数中做以下处理 : /保存 以后可以用 送数据。 /设置 数。 当程序中有多个 处于 , 你需要给每个 备一个 数 5)在主程序中做初始化 工作 : /* is (); /初始化网络接口 ; /初始化 ; /初始化 ; /初始化内存模块 /初始化 以太网地址 /* * 初始化 一个以太网接口 设备 , 并 设置这个设备的发 送和接收驱动函数。 如果你的系统中以太网接口芯片的驱动不一样 , 只要替换这里的发送和接口驱动函数就可以了 */ /* * 添加一个 网络接口设备。 参数含义是 : 该设备的 址 、 子网掩码 、 网关 、 输入函数指针 、 输出函数指针 、 该设备的指针。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。