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