STM32之W5500:掉线重联????
生活随笔
收集整理的這篇文章主要介紹了
STM32之W5500:掉线重联????
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1、前言
? 經常的情況下,我們的w5500芯片是不能夠支持所謂“熱拔插”,因為w5500工作在tcp的模式下的時候,沒有能夠檢測對端的設備是否還存在,所以當拔掉網線的情況下,它的socket是不能夠重啟并且直接連接的,所以,這個時候,我們若想重新連接就需要手動對w5500進行重啟,為了解決這個問題,我們需要采用中斷的方法(僅僅工作在tcp的模式下)
2、具體實現方案
?
曾經我一直以為一定要用keepalive的方式才能實現這種情況(嘗試了很久,查了很多的資料,也最終沒能實現),但是,當我發現若設定我們的stm32作為tcpip的服務器模式,并且設定為中斷模式的情況下,我們可以使用中斷的方式對客戶端的斷開進行處理:
入上圖所示:
當出現熱拔插的情況下,socket的斷開的情況下,我們可以通過初始化重啟socket來重新進行初始化。
?
其中上圖中的socket_init 的部分就是對這個斷開連接的socket 進行初始化的地方。
總結
以上是生活随笔為你收集整理的STM32之W5500:掉线重联????的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【算法提高—蓝桥杯】阮小二买彩票
- 下一篇: 这届年轻人,怎么开始想着吃零食减肥了?