实例介绍
自己移植的,基于STM32F103 + ENC28J60 + uip1.0实现TCP数据传输,并实现了TCP保活功能,可以断线重连。源码中有比较详细的中文注释,帮助大家理解!
【实例截图】
【核心代码】
tcp_test
└── tcp_test
├── device
│ ├── core_cm3.c
│ ├── core_cm3.h
│ ├── startup
│ │ ├── startup_stm32f10x_cl.s
│ │ ├── startup_stm32f10x_hd.s
│ │ ├── startup_stm32f10x_hd_vl.s
│ │ ├── startup_stm32f10x_ld.s
│ │ ├── startup_stm32f10x_ld_vl.s
│ │ ├── startup_stm32f10x_md.s
│ │ ├── startup_stm32f10x_md_vl.s
│ │ ├── startup_stm32f10x_xl.s
│ │ ├── system_stm32f10x.c
│ │ └── system_stm32f10x.h
│ └── stm32f10x.h
├── hardware
│ ├── enc28j60.c
│ ├── enc28j60.h
│ ├── key.c
│ ├── key.h
│ ├── led.c
│ ├── led.h
│ ├── spi.c
│ ├── spi.h
│ ├── SysTick_delay.c
│ ├── SysTick_delay.h
│ ├── timerx.c
│ ├── timerx.h
│ ├── usart.c
│ └── usart.h
├── lib
│ ├── inc
│ │ ├── misc.h
│ │ ├── stm32f10x_adc.h
│ │ ├── stm32f10x_bkp.h
│ │ ├── stm32f10x_can.h
│ │ ├── stm32f10x_cec.h
│ │ ├── stm32f10x_crc.h
│ │ ├── stm32f10x_dac.h
│ │ ├── stm32f10x_dbgmcu.h
│ │ ├── stm32f10x_dma.h
│ │ ├── stm32f10x_exti.h
│ │ ├── stm32f10x_flash.h
│ │ ├── stm32f10x_fsmc.h
│ │ ├── stm32f10x_gpio.h
│ │ ├── stm32f10x_i2c.h
│ │ ├── stm32f10x_iwdg.h
│ │ ├── stm32f10x_pwr.h
│ │ ├── stm32f10x_rcc.h
│ │ ├── stm32f10x_rtc.h
│ │ ├── stm32f10x_sdio.h
│ │ ├── stm32f10x_spi.h
│ │ ├── stm32f10x_tim.h
│ │ ├── stm32f10x_usart.h
│ │ └── stm32f10x_wwdg.h
│ ├── src
│ │ ├── misc.c
│ │ ├── stm32f10x_adc.c
│ │ ├── stm32f10x_bkp.c
│ │ ├── stm32f10x_can.c
│ │ ├── stm32f10x_cec.c
│ │ ├── stm32f10x_crc.c
│ │ ├── stm32f10x_dac.c
│ │ ├── stm32f10x_dbgmcu.c
│ │ ├── stm32f10x_dma.c
│ │ ├── stm32f10x_exti.c
│ │ ├── stm32f10x_flash.c
│ │ ├── stm32f10x_fsmc.c
│ │ ├── stm32f10x_gpio.c
│ │ ├── stm32f10x_i2c.c
│ │ ├── stm32f10x_iwdg.c
│ │ ├── stm32f10x_pwr.c
│ │ ├── stm32f10x_rcc.c
│ │ ├── stm32f10x_rtc.c
│ │ ├── stm32f10x_sdio.c
│ │ ├── stm32f10x_spi.c
│ │ ├── stm32f10x_tim.c
│ │ ├── stm32f10x_usart.c
│ │ └── stm32f10x_wwdg.c
│ └── stm32f10x_conf.h
├── MDK
│ ├── obj
│ │ ├── app-uip.crf
│ │ ├── app-uip.d
│ │ ├── app-uip.o
│ │ ├── clock-arch.crf
│ │ ├── clock-arch.d
│ │ ├── clock-arch.o
│ │ ├── core_cm3.crf
│ │ ├── core_cm3.d
│ │ ├── core_cm3.o
│ │ ├── delay.crf
│ │ ├── delay.d
│ │ ├── delay.o
│ │ ├── enc28j60.crf
│ │ ├── enc28j60.d
│ │ ├── enc28j60.o
│ │ ├── eth-uip.crf
│ │ ├── eth-uip.d
│ │ ├── eth-uip.o
│ │ ├── hello-world.crf
│ │ ├── hello-world.d
│ │ ├── hello-world.__i
│ │ ├── hello-world.o
│ │ ├── httpd-cgi.crf
│ │ ├── httpd-cgi.d
│ │ ├── httpd-cgi.o
│ │ ├── httpd.crf
│ │ ├── httpd.d
│ │ ├── httpd-fs.crf
│ │ ├── httpd-fs.d
│ │ ├── httpd-fsdata.crf
│ │ ├── httpd-fsdata.d
│ │ ├── httpd-fsdata.__i
│ │ ├── httpd-fsdata.o
│ │ ├── httpd-fs.o
│ │ ├── httpd.o
│ │ ├── http-strings.crf
│ │ ├── http-strings.d
│ │ ├── http-strings.o
│ │ ├── key.crf
│ │ ├── key.d
│ │ ├── key.o
│ │ ├── led.crf
│ │ ├── led.d
│ │ ├── led.o
│ │ ├── main.crf
│ │ ├── main.d
│ │ ├── main.o
│ │ ├── misc.crf
│ │ ├── misc.d
│ │ ├── misc.o
│ │ ├── Project.axf
│ │ ├── Project.bin
│ │ ├── Project.hex
│ │ ├── Project.htm
│ │ ├── Project.lnp
│ │ ├── Project.map
│ │ ├── Project.plg
│ │ ├── Project.sct
│ │ ├── Project.tra
│ │ ├── psock.crf
│ │ ├── psock.d
│ │ ├── psock.__i
│ │ ├── psock.o
│ │ ├── spi.crf
│ │ ├── spi.d
│ │ ├── spi.o
│ │ ├── startup_stm32f10x_hd.d
│ │ ├── startup_stm32f10x_hd.lst
│ │ ├── startup_stm32f10x_hd.o
│ │ ├── stm32f10x_gpio.crf
│ │ ├── stm32f10x_gpio.d
│ │ ├── stm32f10x_gpio.o
│ │ ├── stm32f10x_it.crf
│ │ ├── stm32f10x_it.d
│ │ ├── stm32f10x_it.o
│ │ ├── stm32f10x_rcc.crf
│ │ ├── stm32f10x_rcc.d
│ │ ├── stm32f10x_rcc.o
│ │ ├── stm32f10x_spi.crf
│ │ ├── stm32f10x_spi.d
│ │ ├── stm32f10x_spi.o
│ │ ├── stm32f10x_tim.crf
│ │ ├── stm32f10x_tim.d
│ │ ├── stm32f10x_tim.o
│ │ ├── stm32f10x_usart.crf
│ │ ├── stm32f10x_usart.d
│ │ ├── stm32f10x_usart.o
│ │ ├── sys.crf
│ │ ├── sys.d
│ │ ├── sys.o
│ │ ├── system_stm32f10x.crf
│ │ ├── system_stm32f10x.d
│ │ ├── system_stm32f10x.o
│ │ ├── systick_delay.crf
│ │ ├── systick_delay.d
│ │ ├── systick_delay.o
│ │ ├── tapdev.crf
│ │ ├── tapdev.d
│ │ ├── tapdev.__i
│ │ ├── timer.crf
│ │ ├── timer.d
│ │ ├── timer.o
│ │ ├── timerx.crf
│ │ ├── timerx.d
│ │ ├── timerx.o
│ │ ├── uip_arp.crf
│ │ ├── uip_arp.d
│ │ ├── uip_arp.o
│ │ ├── uip.crf
│ │ ├── uip.d
│ │ ├── uip-fw.crf
│ │ ├── uip-fw.d
│ │ ├── uip-fw.__i
│ │ ├── uip-fw.o
│ │ ├── uiplib.crf
│ │ ├── uiplib.d
│ │ ├── uiplib.__i
│ │ ├── uiplib.o
│ │ ├── uip-neighbor.crf
│ │ ├── uip-neighbor.d
│ │ ├── uip-neighbor.__i
│ │ ├── uip-neighbor.o
│ │ ├── uip.o
│ │ ├── uip-split.crf
│ │ ├── uip-split.d
│ │ ├── uip-split.__i
│ │ ├── uip-split.o
│ │ ├── usart.crf
│ │ ├── usart.d
│ │ ├── usart.o
│ │ ├── wflash.crf
│ │ ├── wflash.d
│ │ ├── wflash.__i
│ │ └── wflash.o
│ ├── Project.plg
│ ├── Project_Target 1.dep
│ ├── Project.uvgui.Administrator
│ ├── Project.uvgui_Administrator.bak
│ ├── Project.uvgui.lovely
│ ├── Project.uvgui_lovely.bak
│ ├── Project.uvopt
│ ├── Project_uvopt.bak
│ ├── Project.uvproj
│ └── Project_uvproj.bak
├── readme.txt
├── uIP1.0
│ ├── clock.h
│ ├── lc-addrlabels.h
│ ├── lc.h
│ ├── lc-switch.h
│ ├── psock.c
│ ├── psock.h
│ ├── pt.h
│ ├── timer.c
│ ├── timer.h
│ ├── uip_arch.h
│ ├── uip_arp.c
│ ├── uip_arp.h
│ ├── uip.c
│ ├── uip-fw.c
│ ├── uip-fw.h
│ ├── uip.h
│ ├── uiplib.c
│ ├── uiplib.h
│ ├── uip-neighbor.c
│ ├── uip-neighbor.h
│ ├── uipopt.h
│ ├── uip-split.c
│ └── uip-split.h
├── uIPApp
│ ├── app-uip.c
│ ├── app-uip.h
│ ├── clock-arch.c
│ ├── clock-arch.h
│ ├── eth-uip.c
│ ├── eth-uip.h
│ └── uip-conf.h
└── user
├── main.c
└── main.h
12 directories, 251 files
标签:
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论