标题:
W5500-TCP client成功 stm32 IAR工程源码
[打印本页]
作者:
shenhongxia
时间:
2018-9-19 21:05
标题:
W5500-TCP client成功 stm32 IAR工程源码
W5500的客户端配置
0.png
(8.92 KB, 下载次数: 47)
下载附件
2018-9-19 23:39 上传
stm32单片机源程序如下:
#include "mcu_init.h"
#include "config.h"
#include "device.h"
#include "spi2.h"
#include "socket.h"
#include "w5500.h"
#include "at24c16.h"
#include "util.h"
#include <stdio.h>
extern uint8 txsize[];
extern uint8 rxsize[];
uint8 buffer[2048];/*定义一个2KB的缓存*/
void main()
{
uint8 pc_ip[4]={192,168,1,101};/*配置服务器的IP地址*/
uint16 anyport=3000;/*定义一个任意端口并初始化*/
uint16 len=0;
uint8 mac[6]={0x00,0x08,0xdc,0x11,0x11,0x11};/*定义Mac变量*/
uint8 lip[4]={192,168,1,114};/*定义lp变量*/
uint8 sub[4]={255,255,255,0};/*定义subnet变量*/
uint8 gw[4]={192,168,1,1};/*定义gateway变量*/
uint8 ip[4];
RCC_Configuration(); /* 配置单片机系统时钟*/
GPIO_Configuration();/* 配置GPIO*/
NVIC_Configuration();/* 配置嵌套中断向量*/
Systick_Init(72);/* 初始化Systick工作时钟*/
USART1_Init(); /*初始化串口通信:115200@8-n-1*/
at24c16_init();/*初始化eeprom*/
printf("W5500 EVB initialization over.\r\n");
Reset_W5500();/*硬重启W5500*/
WIZ_SPI_Init();/*初始化SPI接口*/
printf("W5500 initialized!\r\n");
setSHAR(mac);/*配置Mac地址*/
setSUBR(sub);/*配置子网掩码*/
setGAR(gw);/*配置默认网关*/
setSIPR(lip);/*配置Ip地址*/
//Init. TX & RX Memory size of w5500
sysinit(txsize, rxsize); /*初始化8个socket*/
setRTR(2000);/*设置溢出时间值*/
setRCR(3);/*设置最大重新发送次数*/
getSIPR (ip);
printf("IP : %d.%d.%d.%d\r\n", ip[0],ip[1],ip[2],ip[3]);
getSUBR(ip);
printf("SN : %d.%d.%d.%d\r\n", ip[0],ip[1],ip[2],ip[3]);
getGAR(ip);
printf("GW : %d.%d.%d.%d\r\n", ip[0],ip[1],ip[2],ip[3]);
printf("Network is ready.\r\n");
while(1)
{
switch(getSn_SR(0))/*获取socket0的状态*/
{
case SOCK_INIT:/*socket初始化完成*/
connect(0, pc_ip ,6001);/*在TCP模式下向服务器发送连接请求*/
break;
case SOCK_ESTABLISHED:/*socket连接建立*/
if(getSn_IR(0) & Sn_IR_CON)
{
setSn_IR(0, Sn_IR_CON);/*Sn_IR的第0位置1*/
}
len=getSn_RX_RSR(0);/*len为已接收数据的大小*/
if(len>0)
{
recv(0,buffer,len);/*W5500接收来自Sever的数据*/
send(0,buffer,len);/*W5500向Server发送数据*/
}
break;
case SOCK_CLOSE_WAIT:/*socket等待关闭状态*/
break;
case SOCK_CLOSED:/*socket关闭*/
socket(0,Sn_MR_TCP,anyport++,Sn_MR_ND);/*打开socket0的一个端口*/
break;
}
}
}
复制代码
所有资料51hei提供下载:
W5500_TCPC.rar
(814.79 KB, 下载次数: 58)
2018-9-19 21:04 上传
点击文件名下载附件
W5500 TCP Client
下载积分: 黑币 -5
作者:
1512001334@qq.c
时间:
2020-5-7 09:58
帮组很大,谢谢作者
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1