esp文件


简历制作 2019-09-18 08:48:27 简历制作
[摘要]esp文件篇1:怎么向esp分区添加引导文件?win10系统如何引导修复?多数小伙伴装了win10系统之后无法修复引导,火急火燎的找到快启动小编询问解决方法,针对这个问题,小编就详细跟大家介绍下方法咯。修复ESP分区的引导文件详细操作:1、首先准备一个制作好的快启动U盘启动盘(如何制作快启动U盘启动

【www.shanpow.com--简历制作】

esp文件篇1:怎么向esp分区添加引导文件?


  win10系统如何引导修复?多数小伙伴装了win10系统之后无法修复引导,火急火燎的找到快启动小编询问解决方法,针对这个问题,小编就详细跟大家介绍下方法咯。
  修复ESP分区的引导文件详细操作:
  1、首先准备一个制作好的快启动U盘启动盘(如何制作快启动U盘启动盘),然后连接好电脑与U盘启动盘。重启电脑,在开机画面出现时按下启动快捷键,选择U盘启动,然后就进入了快启动主菜单界面,然后通过方向键选择“【02】运行快启动Win10PE”
,按下回车键。   2、进入快启动PE系统后,双击桌面上的“更多工具” 文件夹,在文件夹中找到并双击“BCD编辑工具”图标,打开bootice工具,如图所示:   3、在bootice界面中,首先切换到“BCD编辑”,选择“其他BCD文件(0)”,然后“新建BCD(N)”。   4、新建BCD将文件存在容易找寻的文件夹中,文件名为:BCD(在此一定要注意字母应为大写,不可任性取之)。   5、以上操作完成弹出“已成功创建新的BCD文件”提示框,点击确定即可。   6、然后点击“智能编辑模式(C)”。   7、接下来,我们按照上面的方法再次添加win10的BCD信息,点击“添加”,选择“windows 7/8/8.1 启动项”(这是NT6.x
架构系统,当然win8/10 也适用)。   8、主要将“启动磁盘”修改为“当前系统对应的磁盘”;“启动分区”修改为“当前主系统分区(D盘)”;接着将“菜单标题”改为“windows10”,将“启动文件”修改为"windows\system\winload.efi",修改好之后,保存当前系统设置,win10的BCD信息就添加好了,然后再点击“保存全局设置”。   9、弹出“BCD数据修改成功”提示框,点击确定,这样win7和win10的引导信息就会保存到我们创建的这个BCD文件中了,重启电脑就可以显示win7win10启动项了。   10、创建好BCD文件后,我们只需在快启动PE下将这个BCD替换到相应的目录下就可以完成引导修复了。所以此处BCD替换文件的目录为ESP/EFI这个fat分区:efi\Microsoft\BCD。但由于UEFI
BIOS引导windows系统时,是通过一个FAT格式分区下的bootmgfw.efi文件来导入BCD文件,ESP和EFI分区一般都是隐藏的FAT分区,所以需要将ESP分区分配盘符(详见:ESP分区如何分配盘符教程,不懂操作关注快启动头条号询问小编)。   以上就是添加引导修复的方法,喜欢记得关注快启动头条号哦。

esp文件篇2:【我想要汉化!】ESP、ESM修改汉化指路

【我想要汉化!】ESP、ESM修改汉化指路
已有 27 次阅读2013-2-11 13:21
|个人分类:MOD相关  当某个自己喜欢的MOD更新的时候,往往找不到最新的汉化,于是总去麻烦其它大神也不好。本来用过汉化旧版本了,新版本基本可以做到眼前英文心中中文了,只是某种强迫症作祟看着英文不舒服罢了。想想其实自己也知道哪里是什么了,不如自己汉化得了,只是不知道从何入手。这里LZ就介绍一种汉化方法:直接修改ESM、ESP文件。 
  首先你需要TESVSnip,其次可能还需要谷歌、度娘、卡西欧之类的翻译工具。
  关于MOD的ESM和ESP文件,如果你使用NMM,那么请在Data文件夹下找;如果你使用MO,请在MOD对应文件夹下找。当然,没有安装的时候直接从压缩包里解压出来修改。
  你可以打开TESVSnip后加载文件,也可以将ESM、ESP关联到TESVSnip.exe上。
  
  TESVSnip的界面如下:
  
  通常在记录列表中,以下条目是汉化需要注意的:
SPEL
这个条目内记录着一些可能会加入到玩家法术列表里的法术,而有些不会添加的法术可以不必理会,你可以从右边的Report栏来确认这条法术的信息,也可以双击左下方子记录列表中的FULL、DESC条目来查看。在上图中SexSMenuSpell法术的FULL条目是"SexiS Config",而SexiSManager没有FULL条目,实际游戏中也只有“SexiS Config”加入了法术列表,所以要改哪里一目了然。
一般来说虽然版本不同,但是记录的名称是不会变的(记录名称就是标签名后面括号内的文字,如SexSMenuSpell、SexiSManager),所以可以对照旧版汉化新版本。
MGEF
Spell只是一个法术入口,而MagicEffect才是整个法术起作用的地方,嘛,虽然这跟汉化关系不大。当SPELl的DESC条目没有内容的时候,法术说明就会从MGEF的FULL标签获得。
ARMO这里保存着护甲的一些信息,要注意的仍然是FULL和DESC这两个说明标签,顺带一提DATA标签里保存着重量和价值信息~某些护甲其实没有必要汉化,因为无法通过一般途径获得,比如说女性肉♂搏♀武器...
WEAP
同ARMO一样,不过DATA里多了一项武器伤害。
CELL
房间的信息。名称保存在FULL中(后面就不写FULL和DESC了吧...看见这两个都注意一下就行)。相同的房间,后加载的MOD名称会覆盖前面的,所以明明安装的汉化版,有些人名、地点名是英文的就是这么回事。
WRLD
地区名称。像“天际”、“雪漫城”这种。
NPC_、BOOK、SCRL、DOOR、KEYM、LSCR ...
NPC的名称、书籍、卷轴、门、钥匙、读取界面等等。除了NPC以外后面都比较少见了,还是那句话凡是FULL和DESC出现的地方都可能需要汉化。
MESG
菜单、消息框等等“消息”在这里修改,像SexiS这个MOD汉化重点就在这里了。除了FULL和DESC外,Button Text(按钮文字)即ITXT标签也是要改的。
DIAL
对话信息,DIAL(需要修改FULL)下又有INFO(需要修改NAM1和RNAM),注意有些INFO有多个NAM1。对于某些剧情向MOD来说,这部分汉化量会很大(其实AP什么的,呵呵也不少)。
QUST
如果一个MOD拥有任务的话,将是比较头疼的事,因为老滚5的MOD几乎都是靠任务来驱动的,所以无论有没有任务,除了一些武器、衣服、美化MOD以外,基本都有QUST标签。这里我们不能看FULL标签的内容,而是看一条QUST有没有NNAM(提示当前任务状态)和CNAM(提示需要完成的目标)标签,再考虑修改FULL(任务的名字)。
  基本上就是以上的一些标签了。修改一条项目时,右键点编辑,界面如下图:
  
  LZ再次提醒:千万别忘了点“应用”,每改一个标签都要点一次!!!
  修改完后保存,TESVSnip会将文件保存在DATA文件夹下,即使你修改保存路径也会保存在那,所以请到DATA文件夹下找你修改好的文件。注意一定要做好原ESM与ESP的备份!!!

esp文件篇3:【库和教程】ESP8266 WIFI模块连接Yeelink平台

最新wifi库下载地址:https://github.com/itead/ITEADLIB_Arduino_WeeESP8266/archive/master.zip库默认是使用硬件串口与ESP8266通信,需要软串口通信只需取消注释Esp8266.h文件里的一行代码#define ESP8266_USE_SOFTWARE_SERIAL
--------------------------------------【更新】2015年2月5号发布----------------------------------------------
2014年10月发布的第一篇mini Rboard的开关教程很多小伙伴问我如果用UNO的话该怎么使用?软件安装不了,手机怎么翻墙?等等问题。当然我们也一直在尽全力解决这些问题,很幸运,软硬件的问题都解决了!现在我们就用ITEAD自己开发的wifi APK和最新版ESP8266 WiFi bee模块WEE实现远程遥控开关操作。
使用UNO搭建硬件所需配件:
因为UNO只有一对串口,已经被WIFI模块占用了,所以要增加一个转串口的板子用软串口来打印串口信息。
使用ITEADUINO  MEGA2560搭建硬件所需配件:
此处也可以使用Arduino MEGA2560,但是需要飞线到后面的TX2和RX2。这个就交给小伙伴们自己去尝试吧,成功后可以发到帖子回复里跟大家分享。
需要使用到的库文件地址:http://pan.baidu.com/s/1kT9TBz5这个库跟之前发的库是一样的,但很多小伙伴反应编译不过,这个库我是用1.0.6版本的IDE测试一定能过的。不放心的朋友可以把以前下的库从libraries里移除,重新下载这个到libraries文件夹里面。
库默认设置的是UNO可以直接使用本教程,无需做任何修改。
使用mega2560的时候,只需要打开uartWIFI.h文件,把UNO注释掉,取消注释MEGA,如下:
//#define UNO        //uncommentthis line when you use it with UNO board
#define MEGA      //uncommentthis line when you use it with MEGA board
硬件搭建方面我们先不说怎么接线,因为经常有人问我:“你好,程序已经烧给模块了,为什么不成功?”我的亲大哥啊,所有代码都是烧写进UNO和mega2560主板的,你就算不接模块,代码也是可以上传编译成功的。所以我们的步骤是先把代码烧写进UNO和MEGA2560。
代码如下:

[C] 纯文本查看 复制代码
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#define SSID "ITEAD_2"        //type your own SSID name
#define PASSWORD "27955416"        //type your own WIFI password
  
  
#include "uartWIFI.h"
#include <SoftwareSerial.h>
WIFI wifi;
  
extern int chlID;        //client id(0-4)
  
  
void setup()
{
pinMode(6,OUTPUT); //使用mega的时候在不改变接线的情况下,此处改为24脚
wifi.begin();
bool b = wifi.Initialize(STA, SSID, PASSWORD);
if(!b)
{
DebugSerial.println("Init error");
}
delay(8000); //make sure the module can have enough time to get an IP address
String ipstring = wifi.showIP();
DebugSerial.println(ipstring);        //show the ip address of module
  
delay(2000);
wifi.confMux(1);
delay(100);
if(wifi.confServer(1,8080))
DebugSerial.println("Server is set up");
  
  
}
void loop()
{
  
char buf[100];
int iLen = wifi.ReceiveMessage(buf);
if(iLen > 0)
{
  
if (strcmp(buf, "CH0ON") == 0)
{
digitalWrite(6,HIGH);  //使用mega的时候在不改变接线的情况下,此处改为24脚
DebugSerial.println("CH0ON");
}
if (strcmp(buf, "CH0OFF") == 0)
{
digitalWrite(6,LOW); //使用mega的时候在不改变接线的情况下,此处改为24脚
DebugSerial.println("CH0OFF");
}
}
}
使用MEGA时,把代码里继电器的D6脚改为D24脚。代码烧写完成后,我们现在来搭建硬件。
UNO接线如图:
Foca转串板连接的是D2和D3作为软串口。G要共地。
ITEADUINO MEGA2560接线如图:
此处的Xbee扩展板的跳帽应该是2和3,而不是0和1,此处有错。正确跳帽如下:     .  .  . 4     ._.  . 3     .  ._. 2     .  .  . 1     .  .  . 0
Xbee扩展板插在TX2和RX2这排排母上。如图:
连接电脑,插上9V/1A适配器电源供电,打开Arduino IDE串口监视器就可以查看wifi运行状态了。如果是使用UNO,打开监视器后需要先按一下UNO板子上的重启键再按一下xbee扩展板上的重启键。此时才能看到串口监视信息。使用mega2560则无需操作。如果是出现“Module have no response”则只需要按一下mega板子侧边的重启键。
成功连接路由器后,我们就得到了WiFi模块的IP地址,串口打印信息如下:
                   ↑ UNO和MEGA串口打印的信息
接下来,就需要安装手机APK了。下载地址:http://pan.baidu.com/s/1nt7ND6x
该软件目前只支持4寸-7寸安卓智能手机或者平板,7寸平板的话排版可能会有空隙,不过不影响使用。
下载安装后,进入set up设置界面。在客户端输入我们刚刚获得的IP地址和端口号8080,如图:
点击“开始连接”,连接成功会显示:成功连接server。如图:
按键指令我们重新设置一下,下拉到最下面,将On和Off的指令改为CH0OFF和CH0ON(指令可以任意设置,只要跟代码里的指令一致就行),如果开关状态相反,把指令反过来即可,如图:
                                  ↑修改前                                 ↑修改后
输入完成后,点击“返回”到操作界面,此时点击On和Off就可以成功控制开关了!
                             关状态(UNO)                        开状态(UNO)                                    关状态(MEGA)                                     开状态(MEGA)
可以收到串口打印信息如下:                ↑ UNO串口打印信息                    ↑MEGA串口打印信息
---------------------------------------------以下是2014年10月15日发布----------------------------------
更新说明:由于固件升级,很多小伙伴们收到ESP8266模块后用我们的库调不通,在此诚挚道歉。发布此篇教程的时候使用的是旧版本固件,库文件设置的波特率是115200。如果调不通的话应该收到的是新版本,使用的波特率是9600。库文件我们已经在github上更新了http://pan.baidu.com/s/1sj2nUyT  请知悉,谢谢! 使用ESP8266+UNO测试局域网控制
上周终于写完ESP8266 wifi 模块的库了,测试OK!在此开出源码和实例教程,希望能帮到大家!
主要配件: 一张图介绍mini Rboard: 步骤:
1. 下载库文件
烧写程序之前,我们需要用到ESP8266库,下载地址为:
              http://pan.baidu.com/s/1sj2nUyT
温馨提示:ESP8266 wifi库文件是基于arduino IDE 1.0.5版本编译的,如遇编译不过,请尝试其他版本。
打开库中的uartWIFI.h文件,因为我们的mini RBoard使用的是跟UNO一样的芯片,所以要在H文件里去掉定义UNO的注释,注销掉MEGA。
#define UNO
//#define MEGA
然后把_DBG_RXPIN_和_DBG_TXPIN_引脚定义改为D9和D10.
#define _DBG_RXPIN_ 9          //A0
#define _DBG_TXPIN_ 10        //A1
然后保存uartWIFI.h文件。
烧写代码:
插上FOCA,板子的类型选择“Arduino UNO”,点击烧写程序。如下图: 代码:
[C] 纯文本查看 复制代码
001
002
003
004
005
006
007
008
009
010
011
012
013
014
015
016
017
018
019
020
021
022
023
024
025
026
027
028
029
030
031
032
033
034
035
036
037
038
039
040
041
042
043
044
045
046
047
048
049
050
051
052
053
054
055
056
057
058
059
060
061
062
063
064
065
066
067
068
069
070
071
072
073
074
075
076
077
078
079
080
081
082
083
084
085
086
087
088
089
090
091
092
093
094
095
096
097
098
099
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
/*
ESP8266 library
When you use with UNO board, uncomment the follow line in uartWIFI.h.
#define UNO
When you use with MEGA board, uncomment the follow line in uartWIFI.h.
#define MEGA
Connection:
When you use it with UNO board, the connection should be like these:
ESP8266_TX->D0
ESP8266_RX->D1
ESP8266_CH_PD->3.3V
ESP8266_VCC->3.3V
ESP8266_GND->GND
FTDI_RX->D3                        //The baud rate of software serial can"t be higher that 19200, so we use software serial as a debug port
FTDI_TX->D2
When you use it with MEGA board, the connection should be like these:
ESP8266_TX->RX1(D19)
ESP8266_RX->TX1(D18)
ESP8266_CH_PD->3.3V
ESP8266_VCC->3.3V
ESP8266_GND->GND
When you want to output the debug information, please use DebugSerial. For example,
DebugSerial.println("hello");
Note:        The size of message from ESP8266 is too big for arduino sometimes, so the library can"t receive the whole buffer because 
the size of the hardware serial buffer which is defined in HardwareSerial.h is too small.
Open the file from \arduino\hardware\arduino\avr\cores\arduino\HardwareSerial.h.
See the follow line in the HardwareSerial.h file.
#define SERIAL_BUFFER_SIZE 64
The default size of the buffer is 64. Change it into a bigger number, like 256 or more.
*/
#define SSID       "Itead_1(Public)"                //type your own SSID name
#define PASSWORD   "27955416"0                                //type your own WIFI password
#include "uartWIFI.h"
#include <SoftwareSerial.h>
WIFI wifi;
extern int chlID;        //client id(0-4)
void setup()
{
  pinMode(4,OUTPUT);
  pinMode(5,OUTPUT);
  pinMode(6,OUTPUT);
  pinMode(7,OUTPUT);
  wifi.begin();
  bool b = wifi.Initialize(STA, SSID, PASSWORD);
  if(!b)
  {
    DebugSerial.println("Init error");
  }
  delay(8000);  //make sure the module can have enough time to get an IP address
  String ipstring  = wifi.showIP();
  DebugSerial.println(ipstring);                //show the ip address of module
   
  delay(2000);
  wifi.confMux(1);
  delay(100);
  if(wifi.confServer(1,8080))
        DebugSerial.println("Server is set up");
         
}
void loop()
{
   
  char buf[100];
  int iLen = wifi.ReceiveMessage(buf);
  if(iLen > 0)
  {
    //mini Rboard D4 pin is relay,mini Rboard URL:[url=http://item.taobao.com/item.htm?spm=a1z10.3.w4002-2605688463.12.EMkeTJ&id=39334222369]http://item.taobao.com/item.htm? ... keTJ&id=39334222369[/url]
    if (strcmp(buf, "CH0ON") == 0)
    {
      digitalWrite(4,HIGH); 
          DebugSerial.println("CH0ON");
    }
    if (strcmp(buf, "CH0OFF") == 0)
    {
      digitalWrite(4,LOW);
          DebugSerial.println("CH0OFF");
    }
   /* the other 3 chanels below are for Rboard D5 D6 D7 , Rboard  URL:[url=http://item.taobao.com/item.htm?spm=a1z10.3.w4002-2605688463.12.EMkeTJ&id=39334222369]http://item.taobao.com/item.htm? ... keTJ&id=39334222369[/url]
if (strcmp(buf, "CH1ON") == 0)
    {
      digitalWrite(5,HIGH);    
          DebugSerial.println("CH1ON");         
    }
    if (strcmp(buf, "CH1OFF") == 0)
    {
      digitalWrite(5,LOW);    
          DebugSerial.println("CH1OFF");         
    }
    if (strcmp(buf, "CH2ON") == 0)
    {
      digitalWrite(6,HIGH);     
          DebugSerial.println("CH2ON");
    }
    if (strcmp(buf, "CH2OFF") == 0)
    {
      digitalWrite(6,LOW);
          DebugSerial.println("CH2OFF");     
    }
    if (strcmp(buf, "CH3ON") == 0)
    {
      digitalWrite(7,HIGH);
          DebugSerial.println("CH3ON");         
    }
    if (strcmp(buf, "CH3OFF") == 0)
    {
      digitalWrite(7,LOW);
          DebugSerial.println("CH3OFF");         
    }
    */
  }
}

黏贴代码到arduino IDE中,在SSID和PASSWORD宏定义中修改成自己的路由器WIFI名称和密码。
#define SSID      "Itead_1(Public)"        //type your own SSID name
#define PASSWORD  "27955416"            //type your own WIFI password
编译,烧写,OK!
接下来我们还需要用到foca来读取串口信息,查看wifi状态。
按照以下连接方式连接FOCA和ESP8266到mini Rboard上。 2015年1月29日修正:此图的foca串口接反了,TX应该接D9,RX接D10。
或者将库文件的9和10反过来。
#define _DBG_RXPIN_ 10                //A0
#define _DBG_TXPIN_ 9                //A1另外说明:如果使用UNO请提供额外9V/1A适配器供电。Arduino IDE编译版本使用1.0.6以上 硬件连接实物图:
Mini Rboard的引脚定义图: ESP8266的引脚定义图: 然后打开Serial监视器,按一下复位键,等待一段时间后,会看到串口显示它的ip地址:172.16.1.20,当然你也可以登陆路由器的管理后台查看到这个wifi模块的IP地址。 现在我们还需要下载一个软件来进行无线控制。
2. 下载UDP TCP Serverapp
打开手机的Google play,搜索UDP TCP Server,安装该软件。(不能翻墙和没有google账户和不能安装google play的小伙伴自行安装VPN和google play所需app)

打开该软件,点击右上角的settings,将Target IP设置为wifi的IP地址,本文为172.16.1.12,以每次分配的实际IP为准。UPD/TCP选择TCP,TargetPort设置为8080,TCP connectionbehavior设置为“Initiate connection,and keep open”。
然后返回上一级,点击Button Settings。设置buttons的数量为8个(适用于4通道的Rboard),分别在button的名字和命令上修改成:“CH0ON”, “CH1ON”, “CH2ON”, “CH3ON”, “CH0OFF”, “CH1OFF”, “CH2OFF”, “CH3OFF”。这分别代表设置对应继电器通道的开关状态。此次测试用的mini Rboard只需要用到“CH0ON”和“CH0OFF”这一个通道。 返回主页面,我们可以看到按钮的名称已改变,点击对应的按钮后,会看到miniRboard上对应的通道设置为按钮上的状态。 演示视频:
上一篇:小白咨询ARDUINO与普通单片机的问题下一篇:nano3 供电不能!
uno.png
(293.96 KB, 下载次数: 3)
ESP8266 wifi模块上传数据到yeelink和IoTgo平台
本帖最后由 ITEAD创易工作室 于 2015-2-11 23:02 编辑
更新说明:由于固件升级,很多小伙伴们收到ESP8266模块后用我们的库调不通,在此诚挚道歉。发布此篇教程的时候使用的是旧版本固件,库文件设置的波特率是115200。如果调不通的话应该收到的是新版本,使用的波特率是9600。库文件我们已经在github上更新了http://pan.baidu.com/s/1sj2nUyT 请知悉,谢谢!
ESP8266 wifi模块上传数据到yeelink平台
上期我们实现了局域网内的wifi控制,基于上面的库文件,我们今天给大家带来使用yeelink平台的upload教程,小伙伴还可以用手机随时随地观看数据变化情况。
所需配件:

步骤:
1. 硬件连接 硬件实物连接图
2. 注册Yeelink账号
在烧写程序之前,我们必须做一些准备工作:注册Yeelink账号,并获取属于自己的API
KEY和对应设备、传感器的ID地址值。ESP8266通过地址信息将DHT11的温度信息上传到服务器系统中唯一的标示图上,这样可以在Yeelink
的网页上实时观察到该传感器当前环境温度信息。
步骤如下:
第一步,注册用户。Yeelink的地址为:http://www.yeelink.net/
第二步,点击“账号”目录下的“我的账户设置”按钮,记下当前的API KEY,在本例中,API KEY为“7bf75e6c2c8a17351d557f206f89fa2e”。 第三步,点击“我的设备”目录下的“添加新设备”按钮,并按照如下内容范例填写,然后点击保存按钮。
第四步,添加新设备完毕后还需要为该设备增加一个或多个传感器(一个设备可以同时支持多个传感器)。点击“传感器”栏下的“+增加一个传感器”按钮,进入添加传感器的页面。按照如下内容范例填写,然后点击保存。
第五步,保存后,在管理设备页面的下方会出现一个数据曲线的图表。设备的ID值为数据曲线的URL中
device后面那串数字,而传感器的ID值为数据曲线的URL中sensor后面那串数字,记下该设备和传感器的ID值,在本例中温度的设备ID值为
3047,传感器ID值为4285; 湿度的设备ID值为3047,传感器ID值为26142。

完成上面的操作后,会得到相应的API KEY,设备的ID值和传感器的ID值。如果想了解更具体的步骤,请查看以下网页:http://www.yeelink.net/developer/doc/42 。

3.烧写程序,我们需要用到ESP8266库,下载地址为:http://pan.baidu.com/s/1sj2nUyT
温馨提示: ESP8266 wifi库文件是基于arduino IDE1.0.5版本编译的,如遇编译不过,请尝试其他版本。
把ESP8266库解压缩到\arduino\libraries目录下。
因为以太网的数据包比较大,我们需要把串口的环形缓冲区的大小改大才能正常显示所有数据。
用记事本打开arduino\hardware\arduino\cores\arduino\HardwareSerial.cpp文件,把第59行的SERIAL_BUFFER_SIZE数值改为500.如下:
#if (RAMEND< 1000)
  #define SERIAL_BUFFER_SIZE 16
#else
  #define SERIAL_BUFFER_SIZE 500
#endif
保存修改。
打开下载的ITEADLIB_ESP8266_master库文件里面的uartWIFI.H文件。确认以下两处是否如下:
    #define _DBG_RXPIN_ 2  //使用UNO的时候改为9
    #define _DBG_TXPIN_ 3  //使用UNO的时候改为10

    #define debugBaudRate 9600

   //#define UNO  //使用UNO的时候取消这行的注释
     #define MEGA //使用mega的时候注释掉这行
确认无误,保存。

复制以下demo代码到arduino IDE。
[C] 纯文本查看 复制代码
001
002
003
004
005
006
007
008
009
010
011
012
013
014
015
016
017
018
019
020
021
022
023
024
025
026
027
028
029
030
031
032
033
034
035
036
037
038
039
040
041
042
043
044
045
046
047
048
049
050
051
052
053
054
055
056
057
058
059
060
061
062
063
064
065
066
067
068
069
070
071
072
073
074
075
076
077
078
079
080
081
082
083
084
085
086
087
088
089
090
091
092
093
094
095
096
097
098
099
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
#define SSID       "Itead_1(Public)"                //type your own SSID name
#define PASSWORD   "27955416"                                //type your own WIFI password
  
  
#include "uartWIFI.h"
#include <SoftwareSerial.h>
WIFI wifi;
  
extern int chlID;        //client id(0-4)
  
// for yeelink api
#define APIKEY         "3a362e99d6f1daf974561163a8c99a85" // replace your yeelink api key here
  
//replace the device ID and sensor ID for temperature sensor.
#define DEVICEID0       15483 // replace your device ID
#define SENSORID0       26660 // replace your sensor ID
  
//replace the device ID and sensor ID for humidity sensor.
#define DEVICEID1       15483 // replace your device ID
#define SENSORID1       26661 // replace your sensor ID
  
char server[] = "api.yeelink.net";   // name address for yeelink API
  
unsigned long lastConnectionTime = 0;          // last time you connected to the server, in milliseconds
boolean lastConnected = false;                 // state of the connection last time through the main loop
const unsigned long postingInterval = 5*1000; // delay between 2 datapoints, 5s
String returnValue = "";
boolean ResponseBegin = false;
  
  
int DHT11PIN=25;                        //Connect D25 to data pin of DHT11
  
  
int humidity;
int temperature;
  
int post_number;
  
void setup()
{
  
  wifi.begin();
  bool b = wifi.Initialize(STA, SSID, PASSWORD);
  if(!b)
  {
    DebugSerial.println("Init error");
  }
  delay(8000);  //make sure the module can have enough time to get an IP address
  String ipstring  = wifi.showIP();
  DebugSerial.println(ipstring);                //show the ip address of module
  
  
  
  
}
void loop()
{
  char message[400];
   // if you"re not connected, and ten seconds have passed since
  // your last connection, then connect again and send data:
  if((millis() - lastConnectionTime > postingInterval)) {
  
  //read dht11
  int chk = dht11_read(DHT11PIN);
  if(chk==0)
  {
        if(post_number==0)
        {
                sendData(DEVICEID0,SENSORID0,temperature);
                post_number++;
        }
        else
        {
                post_number = 0;
                sendData(DEVICEID1,SENSORID1,humidity);
        }
  
  }
  
  }
  
  // if there"s incoming data from the net connection.
  // send it out the serial port.  This is for debugging
  // purposes only:
  if(wifi.ReceiveMessage(message))
  {
      DebugSerial.println(message);  
  }
  
  
  delay(10);
  
}
  
// this method makes a HTTP connection to the server:
void sendData(int device_id,int sensor_id,int thisData) {
  // if there"s a successful connection:
  if (wifi.ipConfig(TCP,server, 80)) {
    DebugSerial.println("connecting...");
    // send the HTTP PUT request:
    String cmd;
        cmd = "POST /v1.0/device/";
        cmd += String(device_id);
        cmd += "/sensor/";
        cmd += String(sensor_id);
        cmd += "/datapoints";
        cmd += " HTTP/1.1\r\n";
        cmd += "Host: api.yeelink.net\r\n";
        cmd += "Accept: *";
        cmd += "/";
        cmd += "*\r\n";
        cmd += "U-ApiKey: ";
        cmd += APIKEY;
        cmd += "\r\n";
        cmd += "Content-Length: ";
        int thisLength = 10 + getLength(thisData);
    cmd += String(thisLength);
        cmd += "\r\n";
        cmd += "Content-Type: application/x-www-form-urlencoded\r\n";
        cmd += "Connection: close\r\n";
        cmd += "\r\n";
        cmd += "{\"value\":";
        cmd += String(thisData);
        cmd += "}\r\n";
  
  
        DebugSerial.println(cmd);
  
    wifi.Send(cmd);
    // note the time that the connection was made:
    lastConnectionTime = millis();
  }
  else {
    // if you couldn"t make a connection:
    DebugSerial.println("connection failed");
    DebugSerial.println("disconnecting.");
    wifi.closeMux();
  }
}
  
int getLength(int someValue) {
  // there"s at least one byte:
  int digits = 1;
  // continually divide the value by ten,
  // adding one to the digit count for each
  // time you divide, until you"re at 0:
  int dividend = someValue /10;
  while (dividend > 0) {
    dividend = dividend /10;
    digits++;
  }
  // return the number of digits:
  return digits;
}
  
  
  
  
int dht11_read(int pin)
{
        // BUFFER TO RECEIVE
        int bits[5];
        int cnt = 7;
        int idx = 0;
  
        // EMPTY BUFFER
        for (int i=0; i< 5; i++)
        {bits[i]= 0;}
  
        // REQUEST SAMPLE
        pinMode(pin, OUTPUT);
        digitalWrite(pin, LOW);
        delay(18);
        digitalWrite(pin, HIGH);
        delayMicroseconds(40);
        pinMode(pin, INPUT);
  
        // ACKNOWLEDGE or TIMEOUT
        unsigned int loopCnt = 10000;
        while(digitalRead(pin) == LOW)
                if (loopCnt-- == 0) return -2;
  
        loopCnt = 10000;
        while(digitalRead(pin) == HIGH)
                if (loopCnt-- == 0) return -2;
  
        // READ OUTPUT - 40 BITS => 5 BYTES or TIMEOUT
        for (int i=0; i<40; i++)
        {
                loopCnt = 10000;
                while(digitalRead(pin) == LOW)
                        if (loopCnt-- == 0) return -2;
  
                unsigned long t = micros();
  
                loopCnt = 10000;
                while(digitalRead(pin) == HIGH)
                        if (loopCnt-- == 0) return -2;
  
                if ((micros() - t) > 40) bits[idx] |= (1 << cnt);
                if (cnt == 0)   // next byte?
                {
                        cnt = 7;    // restart at MSB
                        idx++;      // next byte!
                }
                else cnt--;
        }
  
        // WRITE TO RIGHT VARS
        // as bits[1] and bits[3] are allways zero they are omitted in formulas.
        humidity    = bits[0];
        temperature = bits[2];
  
        int sum = bits[0] + bits[2]; 
  
        if (bits[4] != sum) return -1;
        return 0;
}
在SSID和PASSWORD宏定义中修改成自己的WIFI名称和密码。
#define SSID      "Itead_1(Public)"        //type your own SSID name
#define PASSWORD  "27955416"            //type your own WIFI password
接着,把刚才所取得的APIKEY,设备的ID值和传感器的ID值替换到程序相应的位置中。设备的ID值替换代码中DEVICEID的值,传感器的ID值替换代码中SENSORID的值。
// for yeelink api
#define APIKEY         "7bf75e6c2c8a17351d557f206f89fa2e"// replace your yeelink api key here

//replace the device ID and sensor ID for temperature sensor.
#define DEVICEID0       3047 //replace your device ID
#define SENSORID0       4285 //replace your sensor ID

//replace the device ID and sensor ID for humidity sensor.
#define DEVICEID1       3047 // replaceyour device ID
#define SENSORID1       26142 //replace your sensor ID
修改完后,把该程序烧写到mega中去。
然后打开Serial monitor,等待一段时间后,会看到串口会显示它的ip地址,接着他就会每隔10s钟上传一次数据。
3. 查看数据图表
用网页打开yeelink平台,输入账号密码后,在用户中心的“我的设备”里可以看到温度和湿度的数据曲线。
手机还可以下载yeelink的客户端:http://www.yeelink.net/developer/tools
IoTgo:一个完全开源的物联网平台

于各种不可控因素,包括硬件固件、平台通信等,小伙伴们在使用我们前面教程提供的ESP8266库文件后,经常遇到编译出错的问题或者对物联网控制方面的
内部通信不了解,无法深度开发自己的项目。在此,ITEAD
Studio已经开发了一个现成的、完全开源的物联网平台,所有源码都可以在github下载,包括服务器搭建、web
APP、手机APP、桌面APP以及量身定制的Arduino库文件(ESP8266、W5x00、SIM900等)。当然,后续我们也会有详细操作教程
一一奉献给大家。
IoTgo项目的初衷是想让用户可以像部署zencart搭建博客,安装 phpbb创建论坛一样,通过部署IoTgo建立自己的云端服务器。服务器不仅仅是接口开放,而是全部代码开源。
项目介绍:http://www.leiphone.com/news/201502/ImM5BlLyyK4bEmQr.html
代码Github链接 :
物联网平台及webUI [webUI将会独立出来]:https://github.com/itead/IoTgo (请大家支持我们,为我们加个星星!谢谢!)
手机端app demo:https://github.com/itead/IoTgo_Android_App
Arduino库[物理层支持W5100/W5500(网线连接);SIM900(GPRS连接);esp8266(wifi连接):https://github.com/itead/ITEADLIB_Arduino_IoTgo
树莓派,CB等卡片式电脑SDK:https://github.com/itead/Segnix/tree/master/libraries/itead_IoTgo 免费版本:BETA版本通信协议层仅支持HTTP Websocket; 年后通信协议层会支持MQTT, CoAP
商业版本:通信协议层成使用 ARM授权的mbed ds
IoTgo 制作成了 Docker Image,发布到了 Docker Hub 上面:https://registry.hub.docker.com/u/humingchun/iotgo/
使用 IoTgo Docker Image,可以仅用 4 条命令在几分钟内部署 IoTgo 服务,详情请参考 IoTgo Github 文档。视频及图片教程等年后...
今天先简单介绍下如何在IoTgo这个平台获取API Key和设备ID。
我们搭建了两个服务器,版面是一样的,国内快速访问:http://iotgo.itead.cn    国外快速访问:http://iotgo.iteadstudio.com
更多内容可以一一进入其他导航页面查看。这里我们主要介绍下如何创建自己的DIY设备。
首先,我们需要在IoTgo平台上注册一个用户账号。在页面右上角点击“SING UP”即可进入注册页面。
注意:注册非常简单,填写的邮箱地址将作为你的登录账号,密码只确认一次,请牢记注册密码,暂时不提供密码找回功能。 点击“Sign Up”按钮,如果你的邮箱地址已经被注册过,将会提示“该邮箱地址已存在,请使用另一个邮箱”,这种情况应该很少,如果有的话就是你把密码忘记了。。。如果是第一次注册,成功后将会直接登入到系统后台。
在左边栏的个人账户中心有两个选项“My Profile(我的身份)”和“My Device(我的设备)”。 点开“我的身份”这个选项,可以看到自己的账户邮箱地址和API Key,以及修改密码功能。这里的重点是API Key,这个大家应该都懂的。 有了API Key以后,我们就可以创建自己的设备了。点开左边栏的“我的设备”选项,在右上角点击“Creat DIY Device(创建DIY设备)”。 “创建DIY 设备”旁边有个“AddIndie Device(添加成品设备)”按钮,这个是用于用户添加已经出厂就预设好API Key的成品,比如wifi智能开关,只需联网即可使用,不需要编程或者做任何修改,适合终端消费者,略过不谈。
接下来,在打开的添加DIY设备页面可以看到,目前用户可以添加的DIY设备分为4类:“01 Power
switch(电源开关)”、“02 Simple light(灯光控制)”、“03 Temperature and humidity
sensor(温湿度传感器)”和“04 Custom device type(定制类或自行开发设备)”。 我们先来创建一个温湿度数据上传的传感器设备。在设备名称我们输入“机房温湿度”,设备类型选择“03 Temperature and humidity sensor(温湿度传感器)”,在组名输入“1号机房”,最后点击“Creat”创建按钮。 创建完成后,在“我的设备”页面就可以看到这个新增的设备图标。 现在我们点击这个设备图标,就可以看到这个设备目前的状态和ID号以及修改、删除等操作按钮。 同理,我们可以创建另外三种DIY设备,并得到对应的设备ID。 每个组别可以添加多个设备,只需在创建设备的时候填入要放置的组名即可。
设备ID是该传感器设备在服务器系统的唯一标识,上传数据的时候必须经过设备ID和账户API Key进行有效性验证才能成功上传。
至此,我们就成功得到了上传数据所需的服务器验证。
今天关于IoTgo平台的介绍就先到这里。下期我们将开始连载基于这个开源平台的远程控制教程==================更新说明:由于固件升级,很多小伙伴们收到ESP8266模块后用我们的库调不通,在此诚挚道歉。发布此篇教程的时候使用的是旧版本固件,库文件设置的波
特率是115200。如果调不通的话应该收到的是新版本,使用的波特率是9600。库文件我们已经在github上更新了http://pan.baidu.com/s/1sj2nUyT 请知悉,谢谢!==========================2015年1月29日修正:此图的foca串口接反了,TX应该接D9,RX接D10。
或者将库文件的9和10反过来。
#define _DBG_RXPIN_ 10                //A0
#define _DBG_TXPIN_ 9                //A1另外说明:如果使用UNO请提供额外9V/1A适配器供电。Arduino IDE编译版本使用1.0.6以上

本文来源:https://www.shanpow.com/bg/457489/

《esp文件.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式

相关阅读
  • 求职简历制作范文(精选7篇) 求职简历制作范文(精选7篇)
  • 2023个人简历制作精选3篇 2023个人简历制作精选3篇
  • 月度职场简洁简历制作790字精选五篇 月度职场简洁简历制作790字精选五篇
  • 简历制作精选四篇 简历制作精选四篇
  • 简历制作的(锦集4篇) 简历制作的(锦集4篇)
  • 有哪些简历制作的精选六篇 有哪些简历制作的精选六篇
  • 优秀简历制作怎么做的(合集4篇) 优秀简历制作怎么做的(合集4篇)
  • 个人求职简历制作(合集4篇) 个人求职简历制作(合集4篇)
为您推荐
  • 2020年上半广告设计制作合同范本
    2020年上半广告设计制作合同范本
    甲方有权对乙方的设计提出建议和思路,以使乙方设计的作品更符合甲方的需求。本站今天为大家精心准备了2020年上半广告设计制作合同范本,希望对大家有所帮助!2020年上半广告设计制作合同范本甲方(需方):
  • 广告设计制作合同范本
    广告设计制作合同范本
    广告制作是一个很重要的环节,广告的好坏也决定了产品的销量。下面是本站为大家带来的广告设计制作合同范本,希望能帮助到大家!广告设计制作合同范本甲方:乙方:依据《中华人民共和国合同法》和有关法规的规定,乙
  • 《美国工厂》观后感3篇
    《美国工厂》观后感3篇
    《美国工厂》以2008年金融危机,通用汽车在俄亥俄州代顿工厂倒闭,整个社区陷入萧条为背景。讲述了中国福耀玻璃集团,接手美国俄亥俄州一座废弃的通用汽车工厂,将其改为玻璃制作工厂并雇请上千位蓝领美国员工的
  • 青少年科技创新小发明
    青少年科技创新小发明
    发明创造很难,要想象、设计、制作出一个全世界不曾有过的东西则更难;发明创造很简单,只要你基本功扎实,肯动脑筋,掌握了发明创造的方法和规律,其实发明创造一点也不难。本站精心为大家整理了青少年科技创新小发
  • 网课心得体会200字
    网课心得体会200字
    网课的学习过程超乎我的想象,屏幕的主体是制作精良的电子课件,老师可以在上面板书,还可以和同学们在线上答题,互动交流。以下是本站小编为大家带来的关于网课心得体会20
  • 看央视主持人大赛第八期观后感评价5篇最新精选
    看央视主持人大赛第八期观后感评价5篇最新精选
    《中央广播电视总台2020主持人大赛》是中央广播电视总台成立后推出的第一个电视大赛,也是集合了总台优势制作和传播资源推出的一个创新型融媒体产品。这里给大家分享一些观后感,供大家参考。央视主持人大赛观后
  • 2020快乐寒假的作文5篇大全
    2020快乐寒假的作文5篇大全
    寒假是每一个学生都十分期盼的假期的,寒假里不仅有热闹的新年,还有各种精彩的活动,大人精心制作的美食,在寒假里每个人都是快活的。那你知道快乐寒假的作文要怎么写吗?下面是小编为大家收集的关于2020快乐寒
  • 冬季好吃家常菜有哪些
    冬季好吃家常菜有哪些
    家常菜是家庭日常制作食用的菜肴。那么你知道适合冬季吃的家常菜有哪些吗?以下就是小编推荐的适合冬季吃的家常菜,希望对大家有所帮助。适合冬季吃的家常菜有哪些1、适合冬季吃的家常菜:红辣油拌腐竹做法:取腐竹
  • 战疫必胜中国加油手抄报创意绘画
    战疫必胜中国加油手抄报创意绘画
    同学们制作了精美的手抄报宣传防疫知识,积极传递战“疫”必胜的信心!向所有奋战在一线的工作人员致敬,向所有支援前线的人们致敬!下面是小编为
  • 2020央视主持人大赛第六期最新观后感5篇精选
    2020央视主持人大赛第六期最新观后感5篇精选
    时隔八年回归的央视主持人大赛备受关注,央视《主持人大赛》播出,凭借精良制作分分钟吊打地方台综艺节目,收到观众们的热捧。比赛被友们称是“神仙在打架,全程高能。甚至有友说自己看这个节目的视频