標(biāo)題:
STM32控制W5100S通信UDP協(xié)議 源程序
[打印本頁]
作者:
雷勞謀
時間:
2021-1-19 21:08
標(biāo)題:
STM32控制W5100S通信UDP協(xié)議 源程序
/**
******************************************************************************
* @file main.c
* @version V1.0
* @date 2018-06-18
* @brief 內(nèi)網(wǎng)測試,請保證W5100S的IP與測試PC機(jī)在同一網(wǎng)段內(nèi),且不沖突
* 如果是用網(wǎng)線跟PC機(jī)直連,請設(shè)置PC機(jī)本地連接地址IP為靜態(tài)IP
******************************************************************************
*/
#include <stdio.h>
#include <string.h>
#include "stm32f10x.h"
#include "bsp_usart1.h"
#include "bsp_fsmc.h"
#include "bsp_spi.h"
#include "w5100s.h"
#include "W5100s_conf.h"
#include "wizchip_conf.h"
#include "w5100s_conf.h"
#include "utility.h"
#include "udp.h"
/** W5100S EVB 管腳接線信息
******************************************************************************
* W5100S_RST -> PD_08 // 復(fù)位
* W5100S_INT -> PD_09 // 中斷
* W5100S_SCS -> PD_07 // 片選
* W5100S_CLK -> PB_13 // 時鐘
#if (_WIZCHIP_IO_MODE_ == _WIZCHIP_IO_MODE_SPI_) // SPI模式
* W5100S_MOSI(A0) -> PB_15 // 主機(jī)輸出,從機(jī)輸入
* W5100S_MISO(A1) -> PB_14 // 主機(jī)輸入,從機(jī)輸出
* W5100S_M2 -> Low // 通訊方式為:SPI
#elif (_WIZCHIP_IO_MODE_ == _WIZCHIP_IO_MODE_BUS_INDIR_) // 8位間接總線模式
* W5100S_M2 -> High // 通訊方式為:8位間接總線
#if STM32F103ZET6 // 主控帶有地址總線
* W5100S_MOSI(A0) -> PF_00 // 間接總線地址位0
* W5100S_MISO(A1) -> PF_01 // 間接總線地址位1
#endif
* W5100S_RDN -> PD_04 // 間接總線讀取時序
* W5100S_WRN -> PD_05 // 間接總線發(fā)送時序
* W5100S_D0 -> PD_14 // 間接總線數(shù)據(jù)位0
* W5100S_D1 -> PD_15 // 間接總線數(shù)據(jù)位1
* W5100S_D2 -> PD_00 // 間接總線數(shù)據(jù)位2
* W5100S_D3 -> PD_01 // 間接總線數(shù)據(jù)位3
* W5100S_D4 -> PE_07 // 間接總線數(shù)據(jù)位4
* W5100S_D5 -> PE_08 // 間接總線數(shù)據(jù)位5
* W5100S_D6 -> PE_09 // 間接總線數(shù)據(jù)位6
* W5100S_D7 -> PE_10 // 間接總線數(shù)據(jù)位7
#endif
******************************************************************************
*/
int main(void)
{
systick_init(72); // 初始化滴答定時器
USART1_Config(); // 初始化USART1:115200@8-N-1
reset_break_gpio_init(); // 復(fù)位與中斷管腳初始化
#if (_WIZCHIP_IO_MODE_ == _WIZCHIP_IO_MODE_SPI_)
spi_gpio_init(); // SPI管腳初始化
spiinitailize(); // SPI配置初始化
reg_wizchip_spi_cbfunc(spi_read_byte,spi_send_byte); // SPI讀寫數(shù)據(jù)函數(shù)映射
reg_wizchip_cs_cbfunc(cs_low,cs_high); // SPI片選控制函數(shù)映射
#elif (_WIZCHIP_IO_MODE_ == _WIZCHIP_IO_MODE_BUS_INDIR_)
FSMC_gpio_init(); // FSMC管腳初始化
FSMCInitialize(); // FSMC配置初始化
#endif
printf("\r\n 煒世科技--WIZnet W5100S官方代理商。全程技術(shù)支持,價格價格優(yōu)勢大!\r\n\r\n");
reset_w5100s(); // W5100S硬件復(fù)位
PHY_check(); // 網(wǎng)線檢測程序
set_w5100s_mac(); // 設(shè)置W5100SMAC地址
set_w5100s_netinfo(); // 設(shè)置W5100S網(wǎng)絡(luò)參數(shù)
sysinit(0x55,0x55); // 初始化4個Socket的發(fā)送接收緩存大小
printf("\r\n W5100S與PC進(jìn)行 UDP端口通訊。\r\n");
printf(" 本地IP地址:%d.%d.%d.%d。\r\n",local_ip[0],local_ip[1],local_ip[2],local_ip[3]);
printf(" 本地端口為:%d。\r\n",local_port);
printf(" 正,F(xiàn)象:PC機(jī)發(fā)送數(shù)據(jù)給W5100S,W5100S將返回對應(yīng)數(shù)據(jù)。\r\n");
while(1)
{
do_udp(); // UDP 數(shù)據(jù)回環(huán)測試
}
}
復(fù)制代碼
2.UDP.7z
2021-1-19 21:43 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
258.71 KB, 下載次數(shù): 24, 下載積分: 黑幣 -5
stm32 w5100 udp
作者:
598335829
時間:
2021-1-19 22:03
謝謝無私奉獻(xiàn)
作者:
361529473
時間:
2021-1-20 14:31
正好可以參考,感謝
作者:
awweqweq
時間:
2021-1-20 15:14
謝謝無私奉獻(xiàn)
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1