STM32F10x SPI + ENC28J60
利用STM32F10x SPI + ENC28J60 做到網路通訊
由於前次開發的溫溼度計希望能做到中央監控及主動警告,經規劃後必需要有 PHY 介面(RJ45)來做到網際網路通訊,經硬體找到的對策是加一顆ENC28J60即可,而我個人則發現必需新增支援TCP/IP協議棧,而網路上目前較通用的是
uIP , lwip兩種,由於手中可以找到的現成範例是 uIP ,所以FW的開發也是採用uIP來開發,
硬體則是採用SPI 介面ENC28J60 ,ENC28J60規格簡介如下
• Ethernet Controller Features
• • IEEE 802.3 compatible Ethernet controller
• • Integrated MAC and 10BASE-T PHY
• • Supports one 10BASE-T port with automatic polarity detection and
correction
• • Supports Full and Half-Duplex modes
• • Programmable automatic retransmit on collision
• • Programmable padding and CRC generation
• • Programmable automatic rejection of erroneous packets
• • SPI Interface with clock speeds up to 20 MHz
對於網路則是採用 TCP/IP 的Port 80 的WEB Server,PC監控端的程式則是由MIS自行開發。
個人建議在開發時多利用sniffer ,Ethernet, wireshark ,NetXRay
等封包監聽器軟體,在debug過程抓網路封包+封包內容分析,才能夠了解自己在軟體開發過程是否正常。
PC 端要了解Ping,
ipconfig, netstat 等指令的應用,開發過程才會順利,當然如果可以多多了解TCP/IP的世界會更好。
留言
張貼留言