⑴ 51單片機接入乙太網的幾種方案
1、MAC+PHY方案
所謂的TCP/IP協議棧是一系列網路協議的統稱,不僅包括我們熟知的TCP協議和IP協議。
還有網路層的ICMP(Internet控制報文)協議、IGMP(Internet組管理)協議、ARP(地址解析)協議,傳輸層的UDP(用戶數據包)協議,應用層的HTTP(超文本傳輸)協議、DNS(域名解析)協議、FTP(文件傳送)協議、SMTP(簡單郵件管理)協議等等。
傳統的乙太網接入方案由MCU+MAC+PHY再加入網路介面實現乙太網的物理連接,通過在主控晶元中植入TCP/IP協議代碼實現通信及上層應用。
應用這種軟體TCP/IP協議棧方式實現的比較成熟方案有ENC28J60,CS8900A,DM9000,當然也有像STM32F107這類(內部自帶MAC)+PHY等方案。
2、硬體協議棧晶元方案
由MCU+硬體協議棧晶元(內含MAC和PHY)直接加網路介面,便可方便的實現單片機聯網,所有的處理TCP/IP協議的工作都是通過這位MCU的「小秘書」——硬體協議棧晶元來完成。
乙太網晶元的內核由傳輸層的TCP、UDP、ICMP、IGMP等協議、網路層的IP、ARP、PPPoE等協議以及鏈路層的MAC構成,再加上物理層的PHY和外圍的寄存器、內存、SPI介面組成了這一整套硬體化的乙太網解決方案。
這套硬體TCP/IP協議棧代替了以往的MCU來處理這些中斷請求,即MCU只需要處理面向用戶的應用層數據即可,傳輸層、網路層、鏈路層及物理層全部由外圍WIZnet的晶元完成。
這套方案從硬體開銷和軟體開發兩個方面來簡化前面所述的五層網路模型,簡化產品開發方案。這樣一來,工程師們就不必再面對繁瑣的通信協議代碼,只需要了解簡單的寄存器功能以及Socket編程便能完成產品開發工作的的網路功能開發部分。
(1)單片機搭建http擴展閱讀
乙太網協議:
一個標準的乙太網物理傳輸幀由七部分組成。
PR SD DA SA TYPE DATA FCS
同步位 分隔位 目的地址 源地址 類型欄位 數據段 幀校驗序列 7 1 6 6 2 46~1500 4
除了數據段的長度不定外,其他部分的長度固定不變。數據段為46~1500位元組。乙太網規定整個傳輸包的最大長度不能超過1514位元組(14位元組為DA、SA、TYPE),最小不能小於60位元組。
除去DA、SA、TYPE14位元組,還必須傳輸46位元組的數據,當數據段的數據不足46位元組時需填充,填充字元的個數不包括在長度欄位里;超過1500位元組時,需拆成多個幀傳送。
事實上,發送數據時,PR、SD、FCS及填充欄位這幾個數據段由乙太網控制器自動產生;而接收數據時,PR、SD被跳過,控制器一旦檢測到有效的前序欄位(即PR、SD),就認為接收數據開始。
⑵ 單片機既然已經採用TCP連接了,可以直接發送數據,為什麼還要使用http post這種方式發送數據
TCP屬於是傳輸層(有關OSI七層協議,可參考網頁鏈接)的協議!而HTTP協議是一種應用層協議!基於TCP的一種協議。HTTP 超文本傳送協議(Hypertext Transfer Protocol )是應用層協議,定義的是傳輸數據的內容的規范。
⑶ stm32+lwip作為MCU與tcp/ip協議棧,其為一般TCP客戶端,具有斷開重連機制,並作為HTTP的服務端,求代碼!
你這是tcp伺服器和客戶端同時運行,如果不用系統的話,好像不可以
⑷ 單片機使用3G模塊建立嵌入式web伺服器,3G模塊內嵌tcp/ip協議時,單片機編程可以不用嵌入tcp/ip協議棧嗎
不用,http協議是應用層的。
⑸ 用單片機實現了一個HTTP伺服器,和電腦直連時訪問正常,但是無法通過路由器訪問到
單片機+enc28j60?這個組合丟包正常。
1. enc28j60的接收緩存有限,而且收發共享一片區域,一般來說多給接收分配一些,但如果上面的單片機處理不過來的話或者你的協議棧處理太復雜,導致沒有及時把enc28j60緩存的數據讀走處理,那必然導致enc28j60要丟包或者覆蓋。 在一對一的時候,這個現象可能不嚴重,換了路由器且接了其它設備的話,這個現象比較明顯。 只能優化你的協議棧,最好換強一些的處理器。
2. 注意你的簡化協議棧通過路由器(網關)來時,如果沒有ARP協議處理,建議包的MAC目標地址換成路由器MAC地址試試
⑹ 單片機系統配置
QQ:478470600 我可以給你發
⑺ 單片機做HTTP網頁顯示,那些數據代碼怎麼製作啊。
首先要有一個線路(如乙太網卡,GPRS模塊等),然後要有一個IP協議棧,能處理TCP/IP協議以及HTTP協議,然後才能給其它客戶端發送網頁,內容就可以通過填單加入了。
⑻ 單片機的疑惑
我覺得還是焊一個吧,因為買一個有時候真的並不合心意,自已想要的它沒有,自已不想要的它裝了上去,再說尺寸也不合意.總有一種老大全的感覺.
如果已經有點經驗,你可以做點難的系統,繼續積累點實用知識,
自已焊系統還有一個設計的知識環節在裡面,購買就只有應用了.
建議1,做個無線防盜的監控系統吧,實現:定時進入監控狀態,撥電話進入監控狀態(市面上的產品都沒有這兩個功能的).2,做個電梯或簡易機械手吧.