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

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

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

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

怎樣通過http服務(wù)器用html格式控制7段顯示

454398 ? 來源:工程師吳畏 ? 2019-08-17 09:08 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

步驟1:關(guān)于這個項目

這是一個使用ESP8266(NodeMCU)wifi模塊開發(fā)的物聯(lián)網(wǎng)項目。該項目的動機是在模塊上創(chuàng)建一個可以通過網(wǎng)絡(luò)托管多個客戶端的Web服務(wù)器。在這里,需要了解html和javaScript的基本知識才能理解我的項目。我將在這里討論關(guān)于ESP8266和javaScript的一些高級主題是:

1。上傳ESP8266的SPIFFS上的文件,以便在我們的arduino代碼中更有效地使用這些文件。

2。使用javaScript進行Web存儲

SPIFFS

到目前為止,我們始終將網(wǎng)頁的HTML包含為字符串我們的草圖中的文字。這使得我們的代碼非常難以閱讀,并且您將很快耗盡內(nèi)存。

SPIFFS是一款輕量級文件系統(tǒng),適用于帶有閃存芯片的微控制器。 ESP8266的板載閃存芯片為您的網(wǎng)頁提供了充足的空間,特別是如果您擁有1MB,2MB或4MB版本。您可以通過以下鏈接了解如何在arduino軟件中添加用于將文件上載到SPIFFS的工具:http://esp8266.github.io/Arduino/versions/2.0.0/d 。..。

In這個項目,我有2個html文件和一個javascript文件。所有這些文件都上傳到與草圖分離的SPIFFS,以便這些文件中的更改獨立于主草圖。

這兩個html文件都是由prepareFile()檢索的,如下所示:

void prepareFile(){

bool ok = SPIFFS.begin();

if (ok) { File f = SPIFFS.open(“/index.html”, “r”);

File f1=SPIFFS.open(“/index1.html”,“r”);

data = f.readString(); data1=f1.readString();

f.close(); f1.close();

} else

Serial.println(“No such file found.”);

}

當使用loadScript()讀取javascript文件時,如下所示:

void loadScript(String path,String type){

if(SPIFFS.exists(path)){

File file=SPIFFS.open(path,“r”);

server.streamFile(file,type);

}

}

Web應(yīng)用程序的本地存儲

您可以了解如何使用不同的本地存儲對象和方法HTML5使用以下文章中的javascript:http://diveintohtml5.info/storage.html。我將在工作部分的項目中討論本地存儲的使用。

步驟2:需要硬件

NodeMCU ESP8266 12E Wifi模塊

無焊面包板

跳線

7 Segent Display(共陰極)

1K歐姆電阻器

微型USB電纜(用于將NodeMCU與計算機連接)

第3步:電路和連接

連接非常簡單。在上面的電路圖中,nodemcu的引腳以下列方式連接:

A - 》 D1

B - 》 D2

C - 》 D3

D - 》 D4

E - 》 D6

F - 》 D7

G - 》 D8

其中A,B,C,D,E&F是7段顯示的片段

。忽略7段顯示的DP。不要將它與ESP的引腳D5連接

步驟4:工作

如前所述,我們有兩個html文件。其中一個是當ESP8266服務(wù)器收到“/”時調(diào)用的根html頁面,即如果請求URI‘/’,服務(wù)器應(yīng)該回復(fù)HTTP狀態(tài)代碼200(確定),然后發(fā)送帶有“索引”的響應(yīng)。 html“file。

當客戶端通過在表單上提交輸入請求來自根頁面時,將發(fā)送第二個html文件。一旦服務(wù)器從表單獲取輸入POSTED,它將它與固定字符串值進行比較并發(fā)送第二個html頁面作為響應(yīng)。

if(server.arg(“nam”) == “0”) {

server.send(200, “text/html”, data1);

sevenSeg(0); }

由于第二頁的html不是在草圖中定義,所以這里我們引用已經(jīng)使用SPIFFS讀取html代碼的“data1”。讀取

File f1=SPIFFS.open(“/index1.html”,“r”);

data1=f1.readString();

這里也調(diào)用參數(shù)為“0”的sevenSeg() “通過打開和關(guān)閉不同的段,可以用它來顯示”0“。在這里,我做了自我解釋的功能,即onA()將打開面包板上7段顯示的A段,同樣offA將關(guān)閉它。

因此,在這種情況下顯示“0 “,我們必須切換除G以外的所有段(DP被忽略,因為它沒有連接到ESP8266的任何引腳)。所以我的函數(shù)看起來像:

if(num==0){

onA(); onB(); onC(); onD(); onE(); onF();

offG();

}

第5步:HTML和JAVASCRIPT代碼

索引.html有一個畫布,在關(guān)閉模式下顯示7段,并在其下方形成。這是你打開它后看到的:

如果我們想要使用沒有ESP8266的網(wǎng)頁,可以通過更改表單的action屬性中的鏈接來實現(xiàn)。目前這是行動中的鏈接:

在這里你可以看到實際的鏈接是連接到任何wifi(或熱點)后分配給你的nodeMCU的同一個ip地址。調(diào)整后的表單標記如下所示:

這里,我使用瀏覽器的web stroge來存儲用戶的輸入值,以便在index.html中輸入的值存儲在本地瀏覽器(如cookie)。該值由index1.html獲取,數(shù)字顯示在html畫布上的7段顯示中。您可以通過以下視頻了解此過程:

video_attach

第6步:關(guān)鍵注釋

如果您注意以下幾點,該項目將與您的nodemcu一起使用:

1。 root html文件的action屬性中的鏈接應(yīng)為“http://(串行監(jiān)視器上的IP或分配給ESP的IP)/submit”。

2。使用支持html5和新標簽和功能的最新版瀏覽器。

3。僅當index.html,index1.html和main.js放在數(shù)據(jù)文件夾中時,SPIFFS才有效。您可以從我的github克隆代碼文件

步驟7:CODE

這是該庫的存儲庫鏈接我的項目代碼。如果您正在使用ESP8266中的SPIFFS,您可以理解為什么我將html和javascript文件放在數(shù)據(jù)文件夾中。請使用它。

GitHub存儲庫鏈接

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

    關(guān)注

    13

    文章

    9795

    瀏覽量

    88002
  • ESP8266
    +關(guān)注

    關(guān)注

    51

    文章

    965

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    Jtti.cc服務(wù)器用固態(tài)硬盤還是機械硬盤比較好?服務(wù)器硬盤挑選指南

    服務(wù)器用固態(tài)硬盤和機械硬盤進行比較,并提供一些硬盤挑選的指南。 一、性能比較 固態(tài)硬盤由于采用了閃存芯片而非機械結(jié)構(gòu),因此擁有更快的讀寫速度。這使得固態(tài)硬盤在處理大量隨機讀寫操作時表現(xiàn)更加出色,適合于高性能的服務(wù)器
    的頭像 發(fā)表于 06-12 17:37 ?284次閱讀

    服務(wù)器數(shù)據(jù)恢復(fù)—如何預(yù)防服務(wù)器故障與恢復(fù)服務(wù)器數(shù)據(jù)!

    服務(wù)器常見故障: 硬件故障:磁盤損壞、電池故障等。 軟件問題:操作系統(tǒng)崩潰、未知的程序運行錯誤等。 病毒破壞:勒索病毒加密、刪除服務(wù)器數(shù)據(jù)等。 不可控力量;服務(wù)器浸水、火燒、機房倒塌等導(dǎo)致
    的頭像 發(fā)表于 03-11 12:36 ?335次閱讀

    云盤服務(wù)器用的什么硬盤類型?

    云盤服務(wù)器所使用的硬盤類型多樣,主要包括機械硬盤(HDD)、固態(tài)硬盤(SSD)以及混合硬盤(SSHD),每種硬盤都有其獨特的特點和適用場景。下面UU云小編將對云盤服務(wù)器用的什么硬盤類型進行詳細介紹:
    的頭像 發(fā)表于 01-23 10:58 ?450次閱讀

    多c站群服務(wù)器詳細解析

    多C站群服務(wù)器是一種特殊配置的服務(wù)器,主要用于多站點管理和分布式網(wǎng)絡(luò)操作。主機推薦小編為您整理發(fā)布多C站群服務(wù)器的詳細解析。
    的頭像 發(fā)表于 01-23 09:38 ?398次閱讀

    服務(wù)器 Flexus X 實例:輕量級 http 服務(wù)器 Tinyhttpd 部署

    Flexus 云服務(wù)器 X 實例?是華為云推出的一款高性能、高可靠性的云服務(wù)器產(chǎn)品,它專為滿足企業(yè)級用戶對計算資源的嚴格要求而設(shè)計。本篇文章通過部署?輕量級 http
    的頭像 發(fā)表于 01-07 16:59 ?558次閱讀
    云<b class='flag-5'>服務(wù)器</b> Flexus X 實例:輕量級 <b class='flag-5'>http</b> <b class='flag-5'>服務(wù)器</b> Tinyhttpd 部署

    服務(wù)器如何處理 HTTP 請求

    服務(wù)器處理HTTP請求的過程是一個有序且復(fù)雜的流程,通常涉及多個步驟。以下是服務(wù)器處理HTTP請求的具體步驟: 監(jiān)聽端口 :HTTP
    的頭像 發(fā)表于 12-30 09:37 ?692次閱讀

    HTTP 協(xié)議的工作原理

    HTTP協(xié)議的工作原理 1. HTTP協(xié)議概述 HTTP是一個應(yīng)用層協(xié)議,它定義了客戶端與服務(wù)器之間請求和響應(yīng)的格式
    的頭像 發(fā)表于 12-30 09:21 ?1000次閱讀

    HTTP 協(xié)議的基本概念

    瀏覽器)和服務(wù)器之間請求和響應(yīng)的格式。 1. HTTP協(xié)議概述 HTTP協(xié)議基于TCP/IP協(xié)議之上,主要規(guī)定了客戶端與服務(wù)器之間的通信規(guī)則
    的頭像 發(fā)表于 12-29 15:12 ?1477次閱讀

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

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

    盛顯科技:LED播控服務(wù)器可以控制哪些設(shè)備?

    LED播控服務(wù)器是一種專門用于控制和管理LED顯示屏的硬件設(shè)備,它通過網(wǎng)絡(luò)接收來自不同源的信號(如視頻、圖片、文字等),并將這些信號轉(zhuǎn)換成LED顯示
    的頭像 發(fā)表于 10-16 12:16 ?487次閱讀
    盛顯科技:LED播控<b class='flag-5'>服務(wù)器</b>可以<b class='flag-5'>控制</b>哪些設(shè)備?

    代理服務(wù)器用戶名,主要作用是什么?

    代理服務(wù)器用戶名是指用于訪問和控制代理服務(wù)器的身份驗證信息之一。用戶名通常由代理服務(wù)器的管理員或服務(wù)提供商設(shè)定,用于確保只有授權(quán)用戶能夠訪問
    的頭像 發(fā)表于 09-13 09:48 ?515次閱讀

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

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

    美國硅谷多ip服務(wù)器用途廣嗎?

    美國硅谷多IP服務(wù)器的用途廣泛,涉及多個行業(yè)和應(yīng)用場景,包括站群運營、SEO優(yōu)化、游戲代理、軟件開發(fā)、數(shù)據(jù)分析、科學(xué)研究、電子商務(wù)、在線營銷、虛擬主機和云服務(wù)等。具體分析如下,rak小編為您整理發(fā)布美國硅谷多ip服務(wù)器用途廣嗎的
    的頭像 發(fā)表于 08-30 09:49 ?424次閱讀

    7數(shù)碼管的顯示方式有哪幾種,各自的特點是什么?

    顯示 靜態(tài)顯示7數(shù)碼管最基本的顯示方式。在這種顯示方式中,每個數(shù)碼管的每個
    的頭像 發(fā)表于 08-28 16:23 ?2013次閱讀

    wifi配網(wǎng)模塊用到了httpd,單獨開http服務(wù)器會沖突報錯怎么解決?

    wifi配網(wǎng)模塊用到了httpd,單獨開http服務(wù)器會沖突報錯 通過配網(wǎng)模塊里的附加端點,注冊了上傳文件,但是在回調(diào)中沒辦法讀取流數(shù)據(jù) 是否通過這種方式只能
    發(fā)表于 08-01 06:35