基于SX單片機實現WebServer和網絡協議棧
前 言
本文引用地址:http://www.104case.com/article/171885.htmInternet的日益普及,信息共享程度的不斷提高,給工作和生活帶來了極大的方便。現在,上網瀏覽對于人們來說是一件很平常的事情。不僅如此,架構一個WebServer,做自己的主頁也是司空見慣的。一般情況下,人們通過一臺上網的電腦來建立WebServer。在這里將討論另外一種方法:通過單片機來建立WebServer。之所以會想到用單片機來實現 WebServer,是因為隨著嵌入式系統的迅猛發展和IA(信息電器)的出現,以單片機為中心的應用系統將搭上Internet的快車逐步取代傳統的以 PC為中心的應用,成為未來Internet發展中的主力軍。
一、 具體應用方案
1. 基于單片機的WebServer方案
基于單片機的WebServer的硬件平臺如圖1所示。
2. 主要芯片介紹
(1) SX52BD100
SX52BD100 是UBICOM公司生產的一款RISC指令集的單片機,片上帶有4K×16 位的Flash存儲器和262×8位的RAM。由于采用CPU并行流水線方式及單時鐘周期指令,在100MHz晶振驅動下指令執行速度可達 100MIPS。該單片機的最大特點就是虛擬外設功能,即通過軟件對I/O口進行靈活的配置,CPU執行虛擬軟件模塊就可以驅動普通的I/O口來模擬外設的功能,比如UART、SPI、IIC和FSK等。當然,令人驚奇的是,SX52BD100可以通過虛擬外設功能來運行網絡協議棧,例如TCP、IP、 HTTP以及SMTP等。
(2)RTL8019AS
RTL8019AS是RealTek公司出品的一種全雙工以太網控制器。它自帶16KB的SRAM,工作在Ethernet II和IEEE802.3、 10Base5、10Base2、10BaseT下,與NE2000兼容。
(3)24LC256
24LC256是Microchip公司生產的一種串行32KB的 E2PROM存儲器,采用CMOS工藝,通過2根數據線和外界通信,兼容I2C總線接口,可設為硬件寫保護,10萬次的擦寫,200年以上的數據保護。
3.工作流程和軟件設計
RJ45為此系統與局域網的接口。由于大部分局域網都采用以太網,這里的RTL8019AS就是處理以太網協議(IEEE802.3)的。數據的流向為:請求信息從局域網中來,通過RJ45送到RTL8019AS,處理后的數據包送入SX52BD100協議棧,由協議棧對數據包進行解析,得到原始請求信息。請求信息再經過SX52BD100的處理,產生回復信息。回復信息到局域網的過程與上面正好相反。
整個系統的軟件流程如圖2所示。
圖1中的E2PROM 24LC256用來存儲WebServer的網頁信息。它可以處理Web頁面、圖像文件、PDF文檔記憶其它文件。當然,它不能像PC上WebServer中的硬盤那樣可以存儲大量的頁面。它的容量決定了WebServer的資源文件的大小。
評論