一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何構(gòu)建Arduino Web服務(wù)器

454398 ? 來源:wv ? 2019-10-17 09:55 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

步驟1:您需要做什么

對于此項目,只需最少兩件事即可使其工作。其他所有內(nèi)容都是您可以包括的附加功能。

所需的部件是:

Arduino

Arduino以太網(wǎng)屏蔽-注意:如果您使用的是較舊的屏蔽,則將無法使用。 SD卡。如果您沒有防護罩,請獲取最新版本?。?!

可選部件:

放入其中的盒子-推薦

伺服

液晶屏

某些LED 更多可選部件-這些用于外部控制和/或傳感器

第二個Arduino

所需的任何聲納和控制器

長電纜或無線收發(fā)器(像Xbee)

步驟2:Web入門

您要做的第一件事需要做的是在arduino上放置以太網(wǎng)屏蔽。如果需要幫助,請將屏蔽罩上的引腳名稱與Arduino的引腳名稱對齊。然后將其插入計算機,然后將以太網(wǎng)電纜從路由器連接到Arduino。打開Arduino IDE,并在arduino-00xx-》 library-》 Ethernet下運行WebServer示例。

打開您喜歡的Web瀏覽器,然后輸入http://192.168.1.177。您應(yīng)該看到類似下圖的內(nèi)容。如果它不起作用,請勿恐慌!您可能有一個Internet服務(wù)提供商,其阻止了端口80(標(biāo)準(zhǔn)的http端口)。

要對此進行測試,我們將嘗試以下方法之一轉(zhuǎn)到端口8080或8081。轉(zhuǎn)到WebServer草圖,找到顯示以下內(nèi)容的行:Server server(80);它是草圖的開始。將80更改為8080或8081?,F(xiàn)在上傳。要進入您的網(wǎng)站,您需要輸入:http://192.168.1.177:8080或http://192.168.1.177:8081。如果有效,那就太好了,您可以繼續(xù)下一步!?。?portforward.com是尋求轉(zhuǎn)發(fā)幫助的好地方。

在您興奮并打電話給您的朋友上車之前,我們遇到了問題。您站點的IP地址只能由連接到路由器的計算機訪問。沒有其他人可以訪問它。我們?nèi)绾谓鉀Q這個問題???我們使用端口轉(zhuǎn)發(fā)。這可能很容易,也可能很難,具體取決于您和路由器的制作方式。您將需要訪問路由器的設(shè)置頁面并進行搜索,直到看到鏈接或選項卡或任何名為“端口轉(zhuǎn)發(fā)”或“端口轉(zhuǎn)發(fā)/端口觸發(fā)”或類似名稱的內(nèi)容。轉(zhuǎn)到該頁面,然后選擇一個新的 http 服務(wù)。輸入Web服務(wù)器的IP,并將起始端口和結(jié)束端口設(shè)置為8080或8081。保存更改,現(xiàn)在人們可以從路由器外部訪問您的網(wǎng)站。但是您將需要一個新的IP。路由器的IP。請訪問www.whatismyip.com。請勿訪問http://this.is.my.ip:8080或http://this.is.my.ip:8081的IP。使用這個和是以及我和 ip 分別代表您的地址。

現(xiàn)在致電您的最親密的朋友,讓他們看看??墒堑鹊龋。?!仍然存在一個問題,記住所有這些數(shù)字可能會很痛苦!我們并不擅長記住數(shù)字字符串,但是我們擅長記住單詞和名稱。

要解決此問題,您可能希望獲得一個實際的域名,例如example.com。最簡單的方法是訪問dyndns.com并注冊一個免費帳戶,然后選擇一個免費域名。其中包括您的名字 .dyndns- 某物 .com或您的名字 .dyndns。 some2or3letterending ?,F(xiàn)在將此域設(shè)置為路由器的IP。要訪問您的站點,您將鍵入http://yourname.dyndns.whatever:8080或8081,具體取決于您的服務(wù)器端口。在Internet Explorer中,需要http://,但對于80以外的其他端口,則不需要Firefox。

您可以采取的最后一步(可選)是制作網(wǎng)絡(luò)跳,而不必在:808x上鍵入結(jié)束。我已將http://teslalingeweb.dyndns-web.com指向路由器的ip,并將http://teslaling.dyndns-web.com設(shè)置為http://teslalingeweb.dyndns-web.com:8081的網(wǎng)絡(luò)跳。對于端口80上的網(wǎng)站,不需要http://。

現(xiàn)在您已經(jīng)在網(wǎng)站上擁有了網(wǎng)站,您可以構(gòu)建服務(wù)器并設(shè)計網(wǎng)站!

步驟3:構(gòu)建Web服務(wù)器

雖然我將向您展示我的Web服務(wù)器設(shè)計,但完全由您決定如何布局和設(shè)計,但是這里有一些指導(dǎo)原則。

我建議將arduino放在一個角落,以便可以訪問電源,USB和以太網(wǎng)端口以及SD卡插槽。

我也建議使用堅固的盒子,我使用的盒子不是很堅固,現(xiàn)在伺服器的重量

如果打算安裝LCD屏幕,請先將其焊接在其上,然后將其連接至以太網(wǎng)屏蔽,然后再放入盒中,盒內(nèi)有8根電線可供連接! !

第4步:連接設(shè)備

與該項目的其他所有內(nèi)容一樣,您可以選擇要添加到ServDuino中的其他內(nèi)容。我有一些建議和規(guī)則,您可以遵循這些建議和規(guī)則以使其成功構(gòu)建。

伺服。

Theservo易于連接,將紅色線連接到+5,黑色線連接到gnd,黃色(或第三根導(dǎo)線)連接到pwm引腳。在主板上,pwm引腳包括3、5、6、9、10、11。但是,不能使用引腳10和11,因為它們用于與以太網(wǎng)屏蔽和SD卡的SPI通信。如果您使用delay或millis(),我建議不要使用5或6針,因為如果ServDuino在計算機旁邊,會有一個令人討厭的抖動!

LCD屏幕。

一個字符LCD屏幕最多可連接6個數(shù)據(jù)引腳。很好,因為僅剩6個數(shù)字引腳。現(xiàn)在,在您發(fā)表評論并告訴我實際上有9個圖釘之前,讓我解釋一下。我們使用了別針13,12,11,10和我們選擇的9,6,5或3。這留下了9個別針。但是,我們需要一個用于與SD卡進行SPI通信的引腳,即引腳4。接下來,我們必須記住,Arduino使用UART來上傳其草圖,因此我們不想使用引腳0或1,如果。現(xiàn)在我們該如何僅用6個引腳連接LCD屏幕,如下所示:

Vss接地,

Vcc接地+5伏特。

Vo可以接地,也可以連接電位計。RS與數(shù)據(jù)引腳相連。記住什么針?。。』蛘吒玫姆椒ㄊ菍⑵鋵懴聛?!

R/W接地。

E接地到數(shù)據(jù)引腳。記下來!

DB0-DB3未連接。

DB4-DB7與數(shù)據(jù)引腳相連。寫下來吧!

背光引腳可以連接到各自的電壓源。

模擬傳感器:

模擬傳感器非常簡單,但是在較新的以太網(wǎng)屏蔽上,也許在較舊的以太網(wǎng)屏蔽上也是如此是在模擬引腳0和1上與+ 5v相連的10K電阻器。當(dāng)心!

Xbee和串行通信:

嗯,我在這里沒有太多產(chǎn)品,我沒有任何Xbees 。..但。..但我想提一些建議。任何時候需要上傳草圖時,您都需要關(guān)掉xbee跳線或斷開串行線(如果不進行無線連接),因此您可能希望嘗試在服務(wù)器盒上放置一個跳線選擇。如果您不這樣做,則必須將其撕碎以上傳草圖。

第5步:設(shè)計網(wǎng)站

在這里,您必須在這里開始思考什么您希望您的網(wǎng)站看起來像和做的一樣,以便您可以選擇存儲網(wǎng)站信息的方式。

如果您想擁有一個非常基本的網(wǎng)站,可能只有一頁,或者希望能夠控制一些led或電燈開關(guān)或您的心臟想要的任何東西,您應(yīng)該使用保存在Arduino內(nèi)存中的站點。

如果您想要具有類似的功能,但想要超過一頁,則需要考慮使用

如果您想要一個包含圖片,視頻和許多頁面的常規(guī)站點,或者其他任何內(nèi)容,則需要使用SD卡。

限制和功能:

使用ram選項,該站點只能是1500個字符(包含html代碼,而不是實際文本),這非常有限,但是對于簡單的led(led可能實際上是任何東西)控制器來說非常有用。

使用PROGMEM選項,您少得多。使用atmega328,您最多可以存儲12,000-13,000個html字符?。?!它適用于家庭自動化或不帶SD卡的多頁站點,但是您無法在其中存儲圖片或文件,并且您仍然只能使用12k字符。

SD卡是大型站點的最佳選擇,其中包含許多腳本,圖片,頁面等。但是到目前為止,它不能用于控制Web上的LED,但是我正在研究它!我也在研究目錄,并使用SD庫而不是sdfatlib(但不要期待一會兒,因為我的主要精力是在led控制器和目錄上,除非‘ibles社區(qū)想提供幫助?。?/p>

第6步:存儲選項

這是我在上一章中介紹的存儲選項的更深入的介紹步驟。

Ram:

第一個選項是將站點存儲在Arduino的ram中。這是最簡單的方法,因為您只需調(diào)用client.print()函數(shù)并在其中寫入html代碼。限制為大約1500個字符,因為Arduino僅具有2048字節(jié)的ram。*

Ex:client.print(“

。..”);

程序存儲器:

如果您可以將代碼存儲在程序存儲器而不是ram中,那不是很好。好吧,實際上,上述選項可以做到這一點,但是編譯器隨后會在啟動時讓微型計算機將所有內(nèi)容都讀入內(nèi)存。我們該如何解決?我們使用PROGMEM庫pgmspace.h。這告訴編譯器我們想將數(shù)據(jù)保留在程序存儲器中?,F(xiàn)在我們已經(jīng)可以有12k個字符。*唯一的問題是,micro傾向于容易凍結(jié),但是在下一步中,我有解決方法。

SD卡:

當(dāng)涉及到SD卡無疑是最佳選擇。您最多可以擁有64GB的內(nèi)存!最大的問題是,不建議使用ATMEGA168或更舊版本的Duemilanove,因為它的最小編譯大小約為16000字節(jié)。與PROGMEM代碼不同,我很少遇到SD卡死機的問題,而且我非常接近獲得有效的led控制器代碼。

第7步:編程!

從這里開始樂趣-或沮喪-開始!現(xiàn)在,您可以上傳您選擇的草圖并測試您的Web服務(wù)器了!

我這里有很多草圖可供下載。我將在以下類別中列出它們:RAM,PROGMEM,SD。我將簡要介紹每個草圖及其功能。我將為每個新功能提供一個草圖。完全可以根據(jù)需要將它們組合在一起。

RAM:

RAMWebServer_Basic-基本的Ram WebServer草圖。

RAMWebServer_Control-包含控制代碼和LED指示燈。

*更多內(nèi)容即將推出!

PROGMEM:

*更多即將推出!

SD:

重要提示:如果您沒有SDFatLib和/或您具有SD.h庫,則SDFat文件將無法編譯。 (包含在Arduino-0022中)

SDFatWebServer_Normal-基本SD卡WebServer草圖

SDFatWebServer_Fast-包含SD卡讀取和客戶端寫入功能之間的緩沖區(qū),從而使上傳速度更快

SDFatWebServer_Normal_404-具有用于自定義的404文件未找到頁面,稱為404error.htm

SDFatWebServer_Fast_404-具有404頁面和緩沖區(qū)的代碼

SDFatWebServer_Normal_LCD-具有LCD屏幕點擊計數(shù)器的代碼

SDFatWebServer_Fast_LCD-具有LCD的代碼和緩沖區(qū)

SDFatWebServer_Normal_Servo-支持Web流量伺服儀表。

SDFatWebServer_Fast_Servo-Servos a nd緩沖區(qū),還有什么更好的方法?

*很快就會有更多的東西?。?!

步驟8:更進一步

好,您現(xiàn)在擁有自己的工作ServDuino Web服務(wù)器??!現(xiàn)在您可以嘗試使用不同的代碼,甚至可以編寫自己的代碼,如果很好,請將其發(fā)送給我,我會將其發(fā)布在可指導(dǎo)的位置,并為您效勞!??!

PROGMEM修復(fù):

服務(wù)器喜歡在使用PROGMEM存儲運行時凍結(jié)很多。一個簡單的解決方法是使用看門狗定時器,但是問題在于當(dāng)它復(fù)位時,Arduino進入了一個無限循環(huán),因為引導(dǎo)加載程序中有些混亂。最簡單的方法就是使用555定時器作為外部看門狗,但是如果要使其保持基于軟件,則需要ladyada bootloader。這使您可以使用看門狗計時器重置凍結(jié)的Arduino?,F(xiàn)在,盡管您在使用軟件時遇到了另一個問題。您仍然需要重置以太網(wǎng)屏蔽。怎么樣?從屏蔽層上剪下復(fù)位針,然后將一根導(dǎo)線連接到您選擇的針上。現(xiàn)在,您只需在setup()中將引腳設(shè)置為高電平,然后將其拉低幾微秒,然后再在setup()中初始化以太網(wǎng)芯片即可??撮T狗在RAM和SD選項中也很有用。

SD卡favicon.ico:

當(dāng)我測試SD卡代碼時,我將USB電纜插入了計算機,并有一個終端監(jiān)視輸入的串行。當(dāng)有人到達站點時,Arduino會發(fā)送他們剛剛請求的頁面。我注意到,每當(dāng)有人訪問主頁時,也會有一個favicon.ico的請求。 favicon.ico是地址欄中,該選項卡上以及該站點旁邊的“收藏夾”文件夾中的小圖標(biāo)。要獲得自己的favicon.ico,您將需要找到一個在線的圖標(biāo)生成器(使用Google制作),然后將其下載并放在根目錄(而不是任何文件夾)的SD卡中。如果您將網(wǎng)站另存為收藏夾,請刪除收藏夾,然后轉(zhuǎn)到您的站點。您應(yīng)該看到它出現(xiàn)。注意:如果您進行繪畫并制作一個并將其另存為.ico,Internet Explorer將拒絕您的收藏夾圖標(biāo)。它可以在Firefox和Chrome中使用,但不能在ie中使用。如果需要,還可以通過將瀏覽器放入首頁html文件(index.htm)來使瀏覽器請求收藏夾圖標(biāo):

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Web服務(wù)器
    +關(guān)注

    關(guān)注

    0

    文章

    139

    瀏覽量

    24869
  • Arduino
    +關(guān)注

    關(guān)注

    190

    文章

    6498

    瀏覽量

    192261
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    如何配置Linux防火墻和Web服務(wù)器

    在當(dāng)今數(shù)字化時代,網(wǎng)絡(luò)安全顯得尤為重要。Linux作為一種開源操作系統(tǒng),廣泛應(yīng)用于服務(wù)器管理和網(wǎng)絡(luò)配置中。本篇文章將詳細介紹如何配置Linux防火墻和Web服務(wù)器,確保內(nèi)網(wǎng)與外網(wǎng)的安全訪問。同時,我們將探討如何通過SSH遠程管理
    的頭像 發(fā)表于 05-24 15:26 ?1196次閱讀
    如何配置Linux防火墻和<b class='flag-5'>Web</b><b class='flag-5'>服務(wù)器</b>

    國外bgp服務(wù)器多少錢?# 服務(wù)器

    服務(wù)器
    jf_57681485
    發(fā)布于 :2025年04月24日 14:19:00

    新加坡服務(wù)器延遲大嗎?真相在這里#新加坡服務(wù)器 #服務(wù)器

    服務(wù)器
    jf_57681485
    發(fā)布于 :2025年04月18日 13:48:50

    京準(zhǔn)電鐘守護時鐘防線:北斗網(wǎng)絡(luò)授時服務(wù)器構(gòu)建安全堡壘

    京準(zhǔn)電鐘守護時鐘防線:北斗網(wǎng)絡(luò)授時服務(wù)器構(gòu)建安全堡壘
    的頭像 發(fā)表于 03-24 14:47 ?308次閱讀
    京準(zhǔn)電鐘守護時鐘防線:北斗網(wǎng)絡(luò)授時<b class='flag-5'>服務(wù)器</b><b class='flag-5'>構(gòu)建</b>安全堡壘

    NTP校時服務(wù)器 時鐘同步服務(wù)器

    服務(wù)器
    jf_75250307
    發(fā)布于 :2025年03月19日 20:56:34

    Tomcat開放源代碼的Web應(yīng)用服務(wù)器

    Tomcat 簡介 Tomcat 服務(wù)器是一個免費的開放源代碼的Web 應(yīng)用服務(wù)器,屬于輕量級應(yīng)用服務(wù)器,在中小型系統(tǒng)和并發(fā)訪問用戶不是很多的場合下被普遍使用,是開發(fā)和調(diào)試JSP 程序
    的頭像 發(fā)表于 12-23 11:24 ?621次閱讀
    Tomcat開放源代碼的<b class='flag-5'>Web</b>應(yīng)用<b class='flag-5'>服務(wù)器</b>

    nginx隱藏版本號與WEB服務(wù)器信息

    nginx不僅可以隱藏版本信息,還支持自定義web服務(wù)器信息 先看看最終的隱藏結(jié)果吧 具體怎么實現(xiàn)呢,其實也很簡單,請往下看 1 官網(wǎng)下載最新穩(wěn)定版 wget http://nginx.org
    的頭像 發(fā)表于 11-22 10:25 ?623次閱讀
    nginx隱藏版本號與<b class='flag-5'>WEB</b><b class='flag-5'>服務(wù)器</b>信息

    使用zabbix監(jiān)控云服務(wù)器的方法

    Zabbix環(huán)境 在開始監(jiān)控云服務(wù)器之前,你需要準(zhǔn)備Zabbix環(huán)境。這包括安裝Zabbix服務(wù)器、Zabbix代理和配置Web界面。 2.1 安裝Zabbix服務(wù)器 Zabbix
    的頭像 發(fā)表于 11-08 10:47 ?937次閱讀

    海外輕量云服務(wù)器是什么意思?如何使用

    海外輕量云服務(wù)器是指位于海外數(shù)據(jù)中心內(nèi),采用虛擬化技術(shù)構(gòu)建的輕量級云服務(wù)器實例。海外輕量云服務(wù)器是專為輕量級應(yīng)用或小型網(wǎng)站設(shè)計的,旨在以較低的成本提供高效、穩(wěn)定的云
    的頭像 發(fā)表于 10-30 09:48 ?552次閱讀

    使用Python構(gòu)建高效的HTTP代理服務(wù)器

    構(gòu)建一個高效的HTTP代理服務(wù)器在Python中涉及多個方面,包括性能優(yōu)化、并發(fā)處理、協(xié)議支持(HTTP/HTTPS)、錯誤處理以及日志記錄等。
    的頭像 發(fā)表于 10-23 07:41 ?545次閱讀

    獨立服務(wù)器與云服務(wù)器的區(qū)別

    隨著互聯(lián)網(wǎng)技術(shù)的飛速發(fā)展,企業(yè)對于服務(wù)器的需求日益增加,而服務(wù)器市場也隨之出現(xiàn)了多種類型的產(chǎn)品,其中最常見的是獨立服務(wù)器和云服務(wù)器。這兩種服務(wù)器
    的頭像 發(fā)表于 10-12 14:34 ?715次閱讀

    海外輕量云服務(wù)器是什么

    海外輕量云服務(wù)器是指位于海外數(shù)據(jù)中心內(nèi),采用虛擬化技術(shù)構(gòu)建的輕量級云服務(wù)器實例。與傳統(tǒng)的物理服務(wù)器或國內(nèi)云服務(wù)器相比,海外輕量云
    的頭像 發(fā)表于 09-25 10:09 ?568次閱讀

    使用NS1串口服務(wù)器HTTP模式上傳服務(wù)器數(shù)據(jù)

    HTTP協(xié)議工作于客戶端-服務(wù)端架構(gòu)之上。瀏覽作為HTTP客戶端通過URL向HTTP服務(wù)端即Web服務(wù)器發(fā)送所有請求。
    的頭像 發(fā)表于 08-30 12:36 ?1004次閱讀
    使用NS1串口<b class='flag-5'>服務(wù)器</b>HTTP模式上傳<b class='flag-5'>服務(wù)器</b>數(shù)據(jù)