littlebot
Published on 2025-04-08 / 1 Visits
0

【源码】基于C语言的TCPIP Lite网络通信解决方案

项目简介

本项目基于C语言,为Microchip PIC系列微控制器打造了TCP/IP Lite网络通信解决方案。仓库中包含MPLAB X IDE项目,可直接运行,具备UDP、TCP服务器和TCP客户端的演示功能。

项目的主要特性和功能

  1. 支持多种通信协议,提供UDP、TCP服务器和TCP客户端功能,涵盖连接建立、数据传输及连接关闭等过程。
  2. 实现网络层管理,包含网络层初始化、数据包处理、发送和接收功能,集成ARP、IPv4协议栈。
  3. 具备日志记录和错误处理功能,方便调试和监控程序运行。
  4. 支持设置IP地址、端口号等网络配置。
  5. 可解析和处理接收到的数据包。

安装使用步骤

环境准备

确保已安装以下软件: - MPLAB® X IDE v5.40或更高版本 (microchip.com/mplab/mplab-x-ide) - MPLAB® XC8 v2.20或更高版本 (microchip.com/mplab/compilers) - TCP/IP Lite Stack v3.0.0 - Ethernet Drivers Library v3.0.0 - TCPIP Demo GUI v2.0 - Wireshark Tool

UDP解决方案

  1. 打开MPLABX IDE。
  2. 从下载的项目中,打开ethxxj60 - udp - solution.X。
  3. 打开PC的Windows命令提示符,输入“ipconfig”获取PC的IP地址。
  4. 在udp_demo.c文件的UDP_DEMO_Send()函数中,修改目标IP地址为步骤3中获取的PC IP地址,并设置目标端口(动态端口范围内)。
  5. 在Source Files\MCC generated files\udpv4_port_handler_table.c文件的UDP_CallBackTable中添加代码以实现UDP接收。
  6. 点击“Program Device”将代码烧录到设备。
  7. 启动Wireshark,从Capture菜单中点击Options,选择板卡和PC连接的接口,点击Start开始捕获数据包。
  8. 在Wireshark中观察DHCP数据包握手以获取设备IP地址。
  9. 在Wireshark中双击“Offer”数据包,展开“Dynamic Host Configuration Protocol”获取设备IP地址。
  10. 打开Java应用程序TCPIP_Demo.exe,切换到UDP选项卡,设置与“DestPort”相同的端口号(65531),点击“Listen”按钮。若出现警告,点击“Allow Access”。输入步骤9中获取的板卡IP地址,点击“Claim”按钮。
  11. 在Wireshark中设置过滤字段为bootp||udp.port==65531。
  12. 在Demo GUI的Send Data框中输入数据(如“PIC8F67J60”),点击Send按钮,观察Wireshark捕获情况。
  13. 按下IoT PoE主板上的开关S1,观察Wireshark捕获情况。

TCP客户端解决方案

  1. 打开MPLABX IDE。
  2. 从下载的项目中,打开ethxxj60 - tcp - client - solution.X。
  3. 点击“Program Device”将代码烧录到设备。
  4. 启动Wireshark,从Capture菜单中点击Options,选择板卡和PC连接的接口,点击Start开始捕获数据包。
  5. 在Wireshark中设置过滤字段为bootp||tcp.port==65534。
  6. 打开Java应用程序TCPIP_Demo.exe,切换到TCP Server Demo选项卡,设置端口号为“65534”,点击“Listen”按钮,TCP连接状态将显示在STATUS文本框中。
  7. 连接建立后,在Send文本框中输入文本,点击“Send”按钮,发送的文本将显示在Sent/Received Data框中。
  8. 点击“Disconnect”按钮关闭TCP连接,STATUS文本框将显示客户端断开连接消息。

TCP服务器解决方案

  1. 打开MPLABX IDE。
  2. 从下载的项目中,打开ethxxj60 - tcp - server - solution.X。
  3. 点击“Program Device”将代码烧录到设备。
  4. 启动Wireshark,从Capture菜单中点击Options,选择板卡和PC连接的接口,点击Start开始捕获数据包。
  5. 在Wireshark中观察DHCP数据包握手以获取设备IP地址。
  6. 在Wireshark中双击“Offer”数据包,展开“Dynamic Host Configuration Protocol”获取设备IP地址。
  7. 打开Java应用程序TCPIP_Demo.exe,切换到TCP Client Demo选项卡,在GUI中设置设备IP地址为服务器IP地址,设置端口号为“7”,点击“Connect”按钮,TCP连接状态将显示在STATUS文本框中。
  8. 连接建立后,在Send文本框中输入文本,点击“Send”按钮,发送的文本将被回显并显示在Sent/Received Data框中。同时,在Wireshark中设置过滤条件“tcp.port == 7”观察TCP数据包。
  9. 点击“Disconnect”按钮关闭TCP连接,STATUS文本框将显示TCP服务器关闭连接消息。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】