模塊簡介
SR-ES1內(nèi)嵌Wiznet的W5500芯片,使用硬件邏輯門電路實現(xiàn)TCP/IP協(xié)議棧的傳輸層及網(wǎng)絡(luò)層(如:TCP,UDP,ICMP,IPv4,ARP,IGMP,PPPoE等協(xié)議),并集成了數(shù)據(jù)鏈路層,物理層,以及32K字節(jié)片上RAM作為數(shù)據(jù)收發(fā)緩存。使得上位機(jī)主控芯片,只需承擔(dān)TCP/IP應(yīng)用層控制信息的處理任務(wù)。從而大大節(jié)省了上位機(jī)對于數(shù)據(jù)復(fù)制、協(xié)議處理和中斷處理等方面的工作量,提升了系統(tǒng)利用率及可靠性。
在操作過程中,用戶可以近似的將W5500作為MCU的一個外設(shè)RAM來使用,非常簡易。W5500對外接口為通用的80MHz高速SP1,供不同平臺拓展高速以太網(wǎng)方案選用。自動協(xié)商LED狀態(tài)顯示SP接口速度快穩(wěn)定性高。尺寸與引腳兼容Wiznet官方的模塊WIZ820io。
引腳說明
GND:地,電源負(fù)
VIN3.3: ==3.3V==電源正
PWDN: 引腳用于斷電模式
高電平: 斷電模式啟用
低電平: 正常模式啟用
nREST: 該引腳低電平有效,用于復(fù)位重新初始化W5500
MISO: SPI主輸入從輸出.
MOSI: SPI主 輸出從輸入
SCLK: SPI時鐘引腳
nSS: SPI片選引腳,低電平有效
nINT: 中斷引腳,低電平有效
接線
STM32F103ZET6 | W5500 |
---|---|
PC5 | RST |
PC4 | INT |
PA4 | CS |
PA5 | SCK |
PA6 | MISO(MI) |
PA7 | MOSI(MO) |
3.3V | V |
GND | G |
代碼
這里采用的是中斷方式,W5500工作在客戶端模式,并且以500ms的時間間隔定時給服務(wù)端發(fā)送字符串"rnWelcome To YOUXINDIANZI rn",電腦作為服務(wù)端接收數(shù)據(jù),打開對應(yīng)的測試軟件可以接收到"Welcome To YOUXINDIANZI"的數(shù)據(jù)。
通訊之前需要設(shè)置好IP地址等參數(shù),這里選擇設(shè)置為與程序相同的IP地址和網(wǎng)關(guān),具體設(shè)置如下。
目的IP地址是需要修改的電腦的IP地址參數(shù),以及對應(yīng)的網(wǎng)關(guān)和掩碼。
/*例程網(wǎng)絡(luò)參數(shù)*/
//網(wǎng)關(guān): 192.168.1.1
//掩碼: 255.255.255.0
//目的IP(電腦)地址: 192.168.1.190
//目的端口號: 6000
設(shè)置如圖:
部分代碼
這里僅展示5500初始化部分的代碼,具體代碼有需要下方留言哦!
void W5500_Init(void)
{
u8 i=0;
Write_W5500_1Byte(MR, RST);
Delay(10);
Write_W5500_nByte(GAR, Gateway_IP, 4);
Write_W5500_nByte(SUBR,Sub_Mask,4);
Write_W5500_nByte(SHAR,Phy_Addr,6);
Write_W5500_nByte(SIPR,IP_Addr,4);
for(i=0;i< 8;i++)
{
Write_W5500_SOCK_1Byte(i,Sn_RXBUF_SIZE, 0x02);//Socket Rx memory size=2k
Write_W5500_SOCK_1Byte(i,Sn_TXBUF_SIZE, 0x02);//Socket Tx mempry size=2k
}
Write_W5500_2Byte(RTR, 0x07d0);
Write_W5500_1Byte(RCR,8);
Write_W5500_1Byte(IMR,IM_IR7 | IM_IR6);
Write_W5500_1Byte(SIMR,S0_IMR);
Write_W5500_SOCK_1Byte(0, Sn_IMR, IMR_SENDOK | IMR_TIMEOUT | IMR_RECV | IMR_DISCON | IMR_CON);
}
測試是否通訊成功
將模塊和STM32用杜邦線連接好,W5500端口連接電腦的網(wǎng)口,實際接線如圖:

接好線后下載程序并運(yùn)行,在PC端打開測試軟件,填入服務(wù)端對應(yīng)的IP地址和端口號,單擊connect即可看到客戶端發(fā)送過來的數(shù)據(jù)了,接收頁面如下:
每隔500ms出現(xiàn)一次 Welcome To YOUXINDIANZI 就證明通訊成功了。
如果點擊connect后沒有出現(xiàn)數(shù)據(jù),下方也沒有出現(xiàn)客戶端的地址,那可能是
- IP地址設(shè)置有誤或者沒有改IP地址
- 單片機(jī)下載程序后沒有復(fù)位運(yùn)行
-
STM32
+關(guān)注
關(guān)注
2301文章
11067瀏覽量
369281 -
通訊
+關(guān)注
關(guān)注
9文章
934瀏覽量
36169 -
TCP
+關(guān)注
關(guān)注
8文章
1411瀏覽量
82554 -
客戶端
+關(guān)注
關(guān)注
1文章
304瀏覽量
17317
發(fā)布評論請先 登錄
基于W5500的Modbus TCP服務(wù)器設(shè)計

w5500 作為tcp server,客戶端異常發(fā)送【RST,ACK】斷開連接問題
W5500 keep-alive的用途與用法
w5500 tcp客戶端中斷方式
W5500芯片通信問題
W5500連接自動斷開的問題
PC端利用PHP編寫socket實現(xiàn)與W5500之間通信
基于FPGA和W5500的以太網(wǎng)傳輸系統(tǒng)實現(xiàn)
STM32+W5500以太網(wǎng)相關(guān)資料及源碼分享!
【求助】W5500UDP組播,客戶端和服務(wù)端區(qū)分?以及接收端怎么加入組播組?
【求助】W5500 UDP組播問題 怎么加入組播組
以太網(wǎng)芯片W5500的移植過程
STM32F103驅(qū)動W5500程序的問題
STM32L4R5硬件SPI驅(qū)動W5500網(wǎng)口的問題
基于STM32F105RE和W5500的雙CAN及硬件TCP通訊設(shè)計

評論