日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > 嵌入式 > 嵌入式教程
[導讀]基于Cortex-M3內核處理器的嵌入式Web服務器設計

引言

  目前,網絡化控制己成為遠程控制的主要研究方向,利用網絡實現(xiàn)對局域乃至全球范圍內設備的監(jiān)控是工業(yè)控制系統(tǒng)的發(fā)展趨勢[1]。嵌入式Internet遠程監(jiān)控技術作為網絡化控制的代表,它解決了工業(yè)控制領域中異構網絡互聯(lián)問題,提高了傳統(tǒng)裝備的智能化水平,促進了傳統(tǒng)產業(yè)結構的調整。嵌入式Web服務器尤其適用于嵌入式Internet應用,它通過Ethernet或Modem的連接可以輕松連接到任何網絡,真正實現(xiàn)對設備的遠程管理和控制。

  實現(xiàn)方案

  嵌入式Web服務器必須具備的基本功能包括:可控制與其連接的設備并獲取設備的狀態(tài)和數(shù)據;現(xiàn)場信息可以網頁形式發(fā)布;可及時響應遠程用戶的控制命令。此外,嵌入式設備應具有功能簡單、功耗低和便攜等特點。為此,筆者設計的系統(tǒng)如圖1所示。

圖1 系統(tǒng)框圖

  本系統(tǒng)采用了ST公司的Cortex-M3內核的STM32微處理器STM32F103RB。該芯片屬于STM32系列的增強型,提供多達128KB的片內Flah、20KB的RAM和豐富的外設接口。Cortex-M3內核在設計上專門考慮了滿足集功耗低、實時性強的工業(yè)級嵌入式產品領域的特點。在性能相同的條件下,STM32產品功耗比同級別產品要低75%,工作環(huán)境溫度達105℃。因為集成度很高,除一個電源外,LQFP100封裝芯片的最小系統(tǒng)只需要外接7個電容即可。

  TCP/IP協(xié)議棧由W5100來支持,它集TCP/IP協(xié)議棧、以太網MAC和PHY為一體,其內部16KB的發(fā)送/接收緩沖區(qū)可快速進行數(shù)據交換,最大通信速率達到25Mbps;內嵌10BaseT/100BaseTX以太網物理層,支持自動應答;提供多種總線接口方式,可以很方便地與各種MCU連接,簡化了硬件電路設計,使嵌入式系統(tǒng)在沒有操作系統(tǒng)的支持下,真正實現(xiàn)單芯片接入因特網的理想。

  為減少PCB板面積和布線復雜性,考慮到系統(tǒng)的數(shù)據傳輸率要求不高,選擇SPI接口作為STM32F103RB和W5100的連接方式。STM32F103RB、W5100和RJ45接口構成一個典型的嵌入式Web服務器。

  作為一個應用實例,本設計利用STM32F103RB的片上ADC和GPIO,將服務器與LED和壓力傳感器相連,一旦服務器接收到來自瀏覽器端的連接請求,服務器將及時響應,將當前的壓力參數(shù)、LED狀態(tài)和溫度等信息嵌入到Web頁面并發(fā)布到網上,這樣現(xiàn)場的各種信息就呈現(xiàn)在瀏覽器。此外,用戶通過網頁上的控制按鈕可以遠程控制LED狀態(tài),操作結果能及時反饋在網頁上。

  硬件設計

  圖2為嵌入式Web服務器的簡化電路圖,主要顯示了構成服務器的三個核心器件的連接方式。RJ45接口是帶有網絡變壓器的物理層接口。在W5100中,通過將SEN引腳經10KΩ電阻上拉到高電平以使能其處于SPI從模式。CS為片選,MISO和MOSI為兩條數(shù)據傳輸線。W5100的SPI工作時鐘由處于主模式的STM32F103RB提供。為方便STM32F103RB判斷W5100的工作狀態(tài),必須將W5100的中斷引腳INT與STM32F103RB的外部中斷線相連接。W5100的第5、6、8和9引腳是PHY信號線,用于與RJ45接口相連接。除電源相關引腳外,W5100的其它引腳可以選擇置空。

圖2 嵌入式Web服務器的簡化電路圖

  軟件設計

  主程序

  主程序流程圖如圖3所示。

圖3 主程序流程圖

  當程序開始啟動時,程序首先初始化STM32和W5100,配置STM32工作在SPI主模式,而W5100工作在從模式,啟動STM32的A/D和片上的溫度傳感器,配置W5100工作于TCP服務器模式,在TCP服務器模式下,端口的狀態(tài)轉換如圖4所示。

圖4 W5100處于TCP服務器模式的端口狀態(tài)轉換圖
[!--empirenews.page--]在使用內部溫度傳感器時要注意:溫度傳感器在從調電模式喚醒后到它能以正常水平輸出采樣電壓前有一段建立時間;ADC喚醒后同樣需要一段建立時間,為使延遲最小,ADON位(用于啟動A/D轉換)和TSVREFE位(用于將溫度傳感器從調電模式中喚醒)應該同時置位。另外,對溫度傳感器的采樣時間要大于2.2μs。接下來是一個無限循環(huán)體,程序開始不斷檢查外部中斷狀態(tài)標志(WInterFlag)和Socket接收數(shù)據狀態(tài)標志(SockRecvFlag)是否改變,同時開始處理A/D轉換的數(shù)據,以保證服務器在產生網頁時能得到當前的各種數(shù)據。一旦W5100的Socket端口有中斷事件產生時,W5100將通過其中斷引腳INT觸發(fā)STM32的外部中斷,使STM32進入外部中斷處理函數(shù)改變WInterFlag,程序接著進入處理W5100中斷事件函數(shù),在此函數(shù)中,STM32通過訪問W5100的中斷寄存器(IR)和端口0中斷寄存器(S0_IR)判斷出W5100的端口0產生何種中斷事件,若Socket接收到數(shù)據,則改變SockRecvFlag。

  程序檢測到SockRecvFlag發(fā)生改變,立即進入處理接收數(shù)據函數(shù)。處理接收數(shù)據函數(shù)是整個程序的核心,它主要負責收發(fā)數(shù)據、解析HTTP協(xié)議和響應用戶的不同請求。圖5為該過程的程序流程圖。

  數(shù)據處理程序

  HTTP協(xié)議是一種請求/響應協(xié)議。在基于HTTP的客戶/服務器數(shù)據交換時,當HTTP請求產生時,就開始一次HTTP通信。過程如下:瀏覽器提取出URL中的主機后,向DNS發(fā)出請求,解析主機名的IP地址;DNS解析地址并將結果返回給瀏覽器;瀏覽器向該地址請求建立TCP連接;瀏覽器發(fā)出請求報文;服務器向瀏覽器發(fā)送響應報文,并將指定數(shù)據發(fā)送給瀏覽器;斷開連接。

  根據HTTP協(xié)議規(guī)定,如果客戶端沒有發(fā)出請求,則服務器不會自動發(fā)送頁面。因此通過在網頁程序中加入 標記,使瀏覽器在無用戶干預下周期性地刷新頁面,從而保證用戶及時地獲得遠程現(xiàn)場的信息。

  HTTP消息包括一個起始行、零個或多個消息頭域、一個標示頭域結束的實體行和一個可能存在的消息體。本程序主要解析消息的起始行,而忽略其它內容,這種處理思路也符合嵌入式系統(tǒng)硬件對軟件實現(xiàn)的復雜度要求。請求方法決定了對請求URI所指定的資源進行操作的方式,GET方法讀取URL指定的資源,一般用來向服務器傳輸少量且透明的數(shù)據,數(shù)據總量被限制在255個字符以內,而POST方法可傳輸大量數(shù)據,與HTML的表單特性相配合以實現(xiàn)遠程動態(tài)交互控制。

  當連接開始時,客戶端發(fā)送GET方法請求給服務器,以訪問服務器網頁,為限定特定用戶訪問,增加數(shù)據安全性,在網頁中加入基本認證機制。當客戶端請求受基本認證機制保護的網頁時,服務器即要求用戶認證,服務器端對用戶的登陸信息按Base64碼解碼,只有認證成功,瀏覽器才能獲得正確的網頁數(shù)據。正確的控制網頁如圖6所示,若用戶信息有誤,服務器返回以狀態(tài)碼401為起始行的響應消息。

圖5 數(shù)據處理程序流程圖

由于服務器端檢測的數(shù)據處在不停的變化之中,為使網頁的數(shù)據也能及時地更新,網頁程序初始化時,要顯示的數(shù)據都使用字符串標記暫時表示,在每次發(fā)送響應消息到端口前,再將網頁中定義字符串標記用當前設備的實際值替換。

  對LED的控制,網頁程序采用HTML語言的表單,HTTP協(xié)議請求方法采用POST。POST作為請求方法時,首先和Web服務器建立連接,成功后瀏覽器將HTML表單中的值發(fā)送給Web服務器。這種方式沒有字符長度的限制,表單數(shù)據是作為附加的文檔發(fā)送而不是作為URL的一部分發(fā)送。服務器程序通過判斷客戶的不同控制命令即時做出LED燈的開關響應。

  在每次連接成功后,服務器端程序會返回以狀態(tài)碼200開頭的響應消息,消息的起始行為:HTTP/1.1 200 OK。當用戶請求一個服務器端不存在的文件時,服務器返回以狀態(tài)碼404開頭的響應消息。

圖6 控制網頁

  結語

  這種利用硬件實現(xiàn)TCP/IP協(xié)議的網絡芯片W5100及具有Cotex-M3內核的STM32處理器構成嵌入式Web服務器的方案性價比高。通過網絡,用戶在瀏覽器端可及時收到遠程現(xiàn)場傳感器采集的數(shù)據,遠程現(xiàn)場的開關狀態(tài)指示燈可實時地響應用戶的開關信號操作請求。測試表明該系統(tǒng)傳輸大塊數(shù)據文件的速率可達到100KBPS。為提高網絡資源的安全性,可采用AES(Advanced Encryption Standard,先進加密標準)等編碼機制來加密必須保護的私有數(shù)據。

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯(lián)系該專欄作者,如若文章內容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

2020 年,公司處理器產品四核龍芯 3A5000/3B5000 研制成功。龍芯 3A5000/3B5000 基于龍芯 3A4000/3B4000 進行工藝升級,主頻 2.3-2.5GHz, 單核通用處理性能是龍芯 3A...

關鍵字: 處理器 芯片 市場化

自主研發(fā)芯片對其自身有更為實際的意義。首先,自主研發(fā)芯片可以減輕對上游供應鏈的依賴。其次,自主芯片更方便打造出獨家特色產品,增強產品在市場上的競爭力。再次,自主研發(fā)芯片能降低成本,提高利潤。

關鍵字: 芯片 處理器 市場

本文中,小編將對無線模塊予以介紹,如果你想對無線模塊的詳細情況有所認識,或者想要增進對它的了解程度,不妨請看以下內容哦。

關鍵字: 無線模塊 寄存器 處理器

(全球TMT2022年10月11日訊)近日,昆侖芯(北京)科技有限公司的第二代云端通用人工智能計算處理器昆侖芯2代AI芯片及AI加速卡與飛槳完成III級兼容性測試,兼容性表現(xiàn)良好。 產品兼容性證明 本次...

關鍵字: 人工智能 加速卡 處理器 模型

(全球TMT2022年10月8日訊)愛立信全新上線超過200個AI App的業(yè)務持續(xù)性解決方案,進一步保障并增強了CSP移動網絡業(yè)務持續(xù)運行的效率和健壯性。該方案由愛立信與運營商聯(lián)合開發(fā),主要用于運維過程中的預測性維護...

關鍵字: AMD 處理器 愛立信 EPYC

臺北2022年10月3日 /美通社/ -- AMD EPYC在CPU市場上始終處于變革性顛覆者的地位。從早期7001系列處理器推出高達32核、128 條PCIe Gen3通道到現(xiàn)在的"米蘭"7003系...

關鍵字: AMD 處理器 EPYC BSP

據外媒報導,日本軟銀集團旗下的半導體IP公司Arm于當?shù)貢r間8月31日表示,該公司已經對移動處理器大廠高通(Qualcomm) 與其子公司Nuvia 發(fā)起訴訟,控告這兩家公司侵犯Arm專利。

關鍵字: ARM 高通 服務器 處理器

intel處理器(Intel cpu)是英特爾公司開發(fā)的中央處理器,有移動、臺式、服務器三個系列,是計算機中最重要的一個部分,由運算器和控制器組成。如果把計算機比作一個人,那么CPU就是他的大腦,其重要作用由此可見一斑。

關鍵字: 英特爾 處理器 Intel Processor

高通昨日發(fā)布了驍龍 6 Gen 1 和驍龍 4 Gen 1 處理器。iQOO 宣布,將于 9 月 14 日在印度發(fā)布 iQOO Z6 Lite 新機,全球首發(fā)驍龍 4 Gen 1。

關鍵字: 驍龍4 Gen 1 處理器 iQOO

據業(yè)內消息,近日美國超威半導體公司AMD稱,針對明年推出的處理器系列產品,給予全新命名系統(tǒng)。此系統(tǒng)將作為AMD未來相當長時間的基礎標準為其處理器命名與編訂型號,范圍涵蓋主流輕薄筆記本電腦至游戲與內容創(chuàng)作機型的最新SoC芯...

關鍵字: AMD 英特爾 處理器

嵌入式教程

6897 篇文章

關注

發(fā)布文章

編輯精選

技術子站

關閉