reference:library:ethercard
EtherCard
EtherCard是一个ENC28J60的驱动库,支持OCROBOT产品系列中的Atmel MEGA328、1284P、128RFA1,LGT 8F328D核心。
该库的原来是https://github.com/jcw/ethercard,作者是Guido Socher与Pascal Stang。遵循GPL2协议。
ENC28J60 类 参考手册
公共静态成员函数
- tcpOffset()–指针指向TCP有效载荷的开始
- initSPI()–初始化SPI接口
- initialize()–初始化网络接口
- isLinkUp()–检查网络是否连接
- packetSend()–通过网络接口发送数据
- packetReceive()–收到数据包复制到数据缓冲区
- copyout()–从ENC28J60内存复制数据
- copyin()–将数据复制到ENC28J60的内存
- peekin()–从ENC28J60的内存得到单个字节的数据
- powerDown()–使ENC28J60进入睡眠模式
- powerUp()–把ENC28J60从睡眠模式中唤醒
- enableBroadcast()–允许接收广播信息
- disableBroadcast()–不允许接收广播信息
- enableMulticast()–允许接收组播信息
- disableMulticast()–不允许接收组播信息
- doBIST()–重置并完全初始化ENC28J60
公共静态属性
- buffer[]–数据缓冲区(接收和发送共享)
- bufferSize–数据缓冲区的大小
- broadcast_enabled = false–是否允许启用广播(用于允许临时禁用DHCP的广播或其他内部函数)
EtherCard 类 参考手册
公共静态成员函数
- begin()–初始化网络接口
- staticSetup()–配置网络接口使用静态IP
- makeUdpReply()–发送一个Udp数据包到收到最后一个数据包的IP地址
- packetLoop()–解析收到的数据
- accept()–接受一个TCP/IP连接
- httpServerReply()–发送一个HTTP响应请求
- httpServerReply_with_flags()–发送一个HTTP响应请求携带TCP标志位
- httpServerReplyAck()–回应TCP请求
- setGwIp()–设置网关地址
- updateBroadcastAddress()–更新广播地址基于当前IP地址和子网掩码。
- clientWaitingGw()–检查是否有网关硬件地址(ARP查找)
- clientTcpReq()–准备一个TCP请求。
- browseUrl()–准备HTTP请求。
- httpPost()–准备HTTP post消息
- ntpRequest()–发送NTP请求
- ntpProcessAnswer()–网络时间协议的响应过程
- udpPrepare()–准备一个UDP消息传输。
- udpTransmit()–传输UDP数据包
- sendUdp()–发送一个UDP数据包
- registerPingCallback()–注册函数来处理ping事件。
- clientIcmpRequest()–发送Ping
- packetLoopIcmpCheckReply()–检查ping响应
- sendWol()–发送一个局域网唤醒消息
- tcpSend()–发送TCP请求
- tcpReply()–获得TCP回复
- persistTcpConnection()–配置TCP链接是否保持。
- udpServerListenOnPort()–注册函数来监听传入的UDP协议事件
- udpServerPauseListenOnPort()–停止监听某端口的UDP协议事件。
- udpServerResumeListenOnPort()–恢复监听某端口的UDP协议事件。
- udpServerListening()–检查是否有UDP服务在某个端口监听
- udpServerHasProcessedPacket()–将数据包发送给UDP服务器
- DhcpStateMachine()–更新DHCP状态
- dhcpSetup()–配置DHCP相关的网络接口设置
- dhcpAddOptionCallback()–注册一个callback特定的DHCP选项编号
- dnsLookup()–执行DNS查找
- copyIp()–复制一个IP地址
- copyMac()–复制一个硬件地址
- printIp()–通过串口输出十进制的IP地址
- findKeyVal()–搜索一个字符串形式的关键字,类似q?xyz=abc&uvw=defgh HTTP/1.1\r\n
- urlDecode()–解码一个URL字符串,比如“hello%20joe”或者“hello+joe”变为“hello joe”
- urlEncode()–编码一个URL,取代一些非法字符,像“”
- parseIp()–把一个IP地址从10进制转换为4个字节。
- makeNetStr()–把一个字节的数组转换为人们可以读懂的字符串
公共静态属性
- mymac[6]–MAC物理地址
- myip[4]–IP地址
- netmask[4]–子网掩码
- broadcastip[4]–子网的广播地址
- gwip[4]–网关
- dhcpip[4]–DHCP服务器的IP地址
- dnsip[4]–DNS服务器的IP地址
- hisip[4]–DNS查询的结果
- hisport = 80–TCP端口连接到80(默认)
- using_dhcp = false–如果使用DHCP为true
- persist_tcp_connection = false–在第一次接收数据包后是否保持TCP链接
- delaycnt = 0–计数packetLoop周期时,没有收到报文的数量,用于触发网关的周期性ARP请求
reference/library/ethercard.txt · 最后更改: 2023/06/07 04:24 由 127.0.0.1