在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

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

3天內不再提示

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

454398 ? 來源:工程師吳畏 ? 2019-08-17 09:08 ? 次閱讀

步驟1:關于這個項目

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

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

2。使用javaScript進行Web存儲

SPIFFS

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

SPIFFS是一款輕量級文件系統,適用于帶有閃存芯片微控制器。 ESP8266的板載閃存芯片為您的網頁提供了充足的空間,特別是如果您擁有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應用程序的本地存儲

您可以了解如何使用不同的本地存儲對象和方法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服務器收到“/”時調用的根html頁面,即如果請求URI‘/’,服務器應該回復HTTP狀態代碼200(確定),然后發送帶有“索引”的響應。 html“file。

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

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

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

sevenSeg(0); }

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

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

data1=f1.readString();

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

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

if(num==0){

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

offG();

}

第5步:HTML和JAVASCRIPT代碼

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

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

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

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

video_attach

第6步:關鍵注釋

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

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

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

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

步驟7:CODE

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

GitHub存儲庫鏈接

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 服務器
    +關注

    關注

    12

    文章

    9342

    瀏覽量

    86185
  • ESP8266
    +關注

    關注

    50

    文章

    962

    瀏覽量

    45416
收藏 人收藏

    評論

    相關推薦

    云盤服務器用的什么硬盤類型?

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

    多c站群服務器詳細解析

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

    服務器 Flexus X 實例:輕量級 http 服務器 Tinyhttpd 部署

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

    服務器如何處理 HTTP 請求

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

    HTTP 協議的基本概念

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

    使用Python構建高效的HTTP代理服務器

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

    盛顯科技:LED播控服務器可以控制哪些設備?

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

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

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

    使用NS1串口服務器HTTP模式上傳服務器數據

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

    美國硅谷多ip服務器用途廣嗎?

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

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

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

    tcp方式連接不了服務器了,服務器代碼還能開源嗎?

    是在維護服務器嗎?已經兩天了。http方式還可以連接上,就tcp的方式不行了.服務器代碼能開源嗎?讓我們自己搭建服務器用。
    發表于 07-15 06:53

    求助,能否實現PPP撥號功能+構建HTTP服務器?

    1、我已經通過修改usb_cdc_4g_module demo實現PPP撥號上網,但是加上HTTP服務器后,HTTP服務器會訪問不了,PPP
    發表于 06-27 07:38

    服務器數據恢復—KVM虛擬機raw格式磁盤文件數據恢復案例

    服務器數據恢復環境: 一臺服務器安裝Linux操作系統+EXT4文件系統。服務器上運行數臺KVM虛擬機,每臺虛擬機包含一個qcow2格式的磁盤文件和一個raw
    的頭像 發表于 05-17 13:33 ?505次閱讀
    <b class='flag-5'>服務器</b>數據恢復—KVM虛擬機raw<b class='flag-5'>格式</b>磁盤文件數據恢復案例

    鴻蒙原生應用元服務開發-Web加載HTML格式的文本數據

    Web組件可以通過loadData接口實現加載HTML格式的文本數據。當開發者不需要加載整個頁面,只需要顯示一些頁面片段時,可通過此功能來快
    發表于 04-29 15:12
    主站蜘蛛池模板: 4438全国最大成人免费高清 | 狠狠做深爱婷婷久久一区 | 97综合色| 欧美性受视频 | 韩彩英三级无删版甜性涩爱 | 日本免费不卡一区 | 黄 在线| 让她爽的喷水叫爽乱 | 奇米影视99| 日本免费在线视频 | 欧美成人午夜影院 | 天天操天天噜 | 色综合久久综合欧美综合网 | 伊人久久成人成综合网222 | 日本理论在线观看被窝网 | 人人做人人插 | 大黄一级片 | 伊人玖玖 | 好爽好紧好大的免费视频国产 | 天天干天天操天天玩 | 久在操| 天堂电影在线 | 三级视频中文字幕 | 国模福利 | 天天摸天天做天天爽 | 天天做天天爽爽快快 | 新版天堂资源中文8在线 | 国产一级毛片午夜福 | 日本欧美强乱视频在线 | 天堂网www天堂在线网 | 妇少香港三日本三级视频 | 久久va| www.狠狠| 国产精品你懂得 | 美国bj69video18 | 日本不卡视频 | 天天插狠狠干 | 毛片免费高清免费 | 天堂网在线资源www种子 | 日韩一级生活片 | 大黄香蕉 |