资源简介
lwip 2.1.2最新版

代码片段和文件信息
void
eth_mac_irq()
{
/* Service MAC IRQ here */
/* Allocate pbuf from pool (avoid using heap in interrupts) */
struct pbuf* p = pbuf_alloc(PBUF_RAW eth_data_count PBUF_POOL);
if(p != NULL) {
/* Copy ethernet frame into pbuf */
pbuf_take(p eth_data eth_data_count);
/* Put in a queue which is processed in main loop */
if(!queue_try_put(&queue p)) {
/* queue is full -> packet loss */
pbuf_free(p);
}
}
}
static err_t
netif_output(struct netif *netif struct pbuf *p)
{
link_STATS_INC(link.xmit);
/* Update SNMP stats (only if you use SNMP) */
MIB2_STATS_NETIF_ADD(netif ifoutoctets p->tot_len);
int unicast = ((p->payload[0] & 0x01) == 0);
if (unicast) {
MIB2_STATS_NETIF_INC(netif ifoutucastpkts);
} else {
MIB2_STATS_NETIF_INC(netif ifoutnucastpkts);
}
lock_interrupts();
pbuf_copy_partial(p mac_send_buffer p->tot_len 0);
/* Start MAC transmit here */
unlock_interrupts();
return ERR_OK;
}
static void
netif_status_callback(struct netif *netif)
{
printf(“netif status changed %s\n“ ip4addr_ntoa(netif_ip4_addr(netif)));
}
static err_t
netif_init(struct netif *netif)
{
netif->linkoutput = netif_output;
netif->output = etharp_output;
netif->output_ip6 = ethip6_output;
netif->mtu = ETHERNET_MTU;
netif->flags = NETIF_FLAG_BROADCAST | NETIF_FLAG_ETHARP | NETIF_FLAG_ETHERNET | NETIF_FLAG_IGMP | NETIF_FLAG_MLD6;
MIB2_INIT_NETIF(netif snmp_ifType_ethernet_csmacd 100000000);
SMEMCPY(netif->hwaddr your_mac_address_goes_here ETH_HWADDR_LEN);
netif->hwaddr_len = ETH_HWADDR_LEN;
return ERR_OK;
}
void
main(void)
{
struct netif netif;
lwip_init();
netif_add(&netif IP4_ADDR_ANY IP4_ADDR_ANY IP4_ADDR_ANY NULL netif_init netif_input);
netif.name[0] = ‘e‘;
netif.name[1] = ‘0‘;
netif_create_ip6_linklocal_address(&netif 1);
netif.ip6_autoconfig_enabled = 1;
netif_set_status_callback(&netif netif_status_callback);
netif_set_default(&netif);
netif_set_up(&netif);
/* Start DHCP and HTTPD */
dhcp_start(&netif );
httpd_init();
while(1) {
/* Check link state e.g. via MDIO communication with PHY */
if(link_state_changed()) {
if(link_is_up()) {
netif_set_link_up(&netif);
} else {
netif_set_link_down(&netif);
}
}
/* Check for received frames feed them to lwIP */
lock_interrupts();
struct pbuf* p = queue_try_get(&queue);
unlock_interrupts();
if(p != NULL) {
link_STATS_INC(link.recv);
/* Update SNMP stats (only if you use SNMP) */
MIB2_STATS_NETIF_ADD(netif ifinoctets p->tot_len);
int unicast = ((p->payload[0] & 0x01) == 0);
if (unicast) {
MIB2_STATS_NETIF_INC(netif ifinucastpkts);
} else {
MIB2_STATS_NETIF_INC(netif ifinnucastpkts);
}
if(netif.input(p &netif)
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2020-08-14 10:30 lwip-2.1.2\
文件 11 2020-08-14 10:30 readme.txt
文件 189696 2018-11-22 19:55 lwip-2.1.2\CHANGELOG
文件 783 2018-10-24 18:32 lwip-2.1.2\CMakeLists.txt
文件 1644 2017-01-12 19:17 lwip-2.1.2\COPYING
目录 0 2018-11-22 19:57 lwip-2.1.2\doc\
文件 3051 2018-10-24 18:32 lwip-2.1.2\doc\contrib.txt
目录 0 2018-11-22 19:57 lwip-2.1.2\doc\doxygen\
文件 23 2017-01-12 19:17 lwip-2.1.2\doc\doxygen\generate.bat
文件 36 2017-01-12 19:17 lwip-2.1.2\doc\doxygen\generate.sh
文件 113082 2018-11-22 19:47 lwip-2.1.2\doc\doxygen\lwip.Doxyfile
文件 113114 2018-07-03 18:30 lwip-2.1.2\doc\doxygen\lwip.Doxyfile.cmake.in
文件 17480 2018-10-24 18:32 lwip-2.1.2\doc\doxygen\main_page.h
目录 0 2018-11-22 19:57 lwip-2.1.2\doc\doxygen\output\
目录 0 2018-11-22 19:57 lwip-2.1.2\doc\doxygen\output\html\
文件 17302 2018-11-22 19:57 lwip-2.1.2\doc\doxygen\output\html\altcp_8c.html
文件 2082 2018-11-22 19:57 lwip-2.1.2\doc\doxygen\output\html\altcp_8c.js
文件 17472 2018-11-22 19:57 lwip-2.1.2\doc\doxygen\output\html\altcp_8h.html
文件 2100 2018-11-22 19:57 lwip-2.1.2\doc\doxygen\output\html\altcp_8h.js
文件 6104 2018-11-22 19:57 lwip-2.1.2\doc\doxygen\output\html\altcp__alloc_8c.html
文件 211 2018-11-22 19:57 lwip-2.1.2\doc\doxygen\output\html\altcp__alloc_8c.js
文件 7151 2018-11-22 19:57 lwip-2.1.2\doc\doxygen\output\html\altcp__priv_8h.html
文件 195 2018-11-22 19:57 lwip-2.1.2\doc\doxygen\output\html\altcp__priv_8h.js
文件 14384 2018-11-22 19:57 lwip-2.1.2\doc\doxygen\output\html\altcp__proxyconnect_8c.html
文件 578 2018-11-22 19:57 lwip-2.1.2\doc\doxygen\output\html\altcp__proxyconnect_8c.js
文件 12551 2018-11-22 19:57 lwip-2.1.2\doc\doxygen\output\html\altcp__proxyconnect_8h.html
文件 464 2018-11-22 19:57 lwip-2.1.2\doc\doxygen\output\html\altcp__proxyconnect_8h.js
文件 6772 2018-11-22 19:57 lwip-2.1.2\doc\doxygen\output\html\altcp__tcp_8c.html
文件 112 2018-11-22 19:57 lwip-2.1.2\doc\doxygen\output\html\altcp__tcp_8c.js
文件 6449 2018-11-22 19:57 lwip-2.1.2\doc\doxygen\output\html\altcp__tcp_8h.html
文件 112 2018-11-22 19:57 lwip-2.1.2\doc\doxygen\output\html\altcp__tcp_8h.js
............此处省略1845个文件信息
- 上一篇:对图像的一维高斯滤波操作
- 下一篇:大华摄像头二次开发web3.0控件开发包
相关资源
- doneex xcell compiler 2.1.2.9绿色汉化版(
- STM32F4x7_ETH_LwIP_V1.0.0
- Safengine Shielden V2.1.2.0 简体中文免费版
- Design and Implementation of the lwIP TCP_IP S
- 周立功之LwIP的rawapi接口及编程指南,
- lwip+udp项目
- LwIP应用开发实战指南—基于野火+ST
- STM32F427 + LAN8710 STM32CubeMX4.25.0工程配置
- STM32F767+FreeRTOS+LWIP移植成功(工程文件
- vos2009 2.1.2.4 server
- zcu102用lwip实现TCP传输
- STM32实现Web服务器
- stm32 lwip DNS DHCP ucosIII TCP Client 原创程
- STM32F207VC lwip ucosiii移植工程
- zynq++88E1111的lwip
- LWIP在NXP公司的LPC1768上的移植
- STM32F407+LWIP+DP83848+多端口
- Bootdisk Utility v2.1.2018.023b
- lwip_ping.rar
- LPC1766 Lwip UDP
- DM9000+LWIP
- stm32搭建web服务器
- super-admin 2.1.2版本
- stm32f103VET6-FreeRTOS-enc28j60-Lwip
- tcp客户端数据收发工程
- PIDKey密钥检测工具v2.1.2.1017
- STM32F1 LWIP开发手册(DM9000版)
- stm32f407+mbed+lwip+lan8720 例程
- LwIP+freertos工程LwIP2.1.2最新版本
- STM32F107的socket
评论
共有 条评论