概述
以可爱的,大小适中的wifi微控制器以您喜欢的价格将internet添加到您的下一个项目中! espressif的esp8266处理器是一个80 mhz微控制器,具有完整的wifi前端(作为客户端和访问点)以及具有dns支持的tcp/ip堆栈。尽管该芯片非常流行,但也很难使用。大多数低成本模块都不适合面包板,没有板载500ma 3.3v稳压器或电平转换,也没有经过ce或fcc发射器认证。。..立即更新! p》
我们设计了huzzah esp8266突破口,使使用此芯片超级容易且非常有趣。我们采用了带有机载天线和大量引脚的经过认证的模块,并将其焊接到我们设计的分线pcb上。我们添加了:
重置按钮
用户按钮,该按钮还可以使芯片进入引导加载模式,
红色led可以闪烁
uart和复位引脚上的电平转换
3.3v输出,500ma稳压器(您需要假设esp8266可以吸收最大250ma的电流,因此预算相应)
两个二极管保护的电源输入(一个用于usb电缆,另一个用于电池)
该模块本身已通过fcc认证,并包含esp8266芯片,具有64 kib的指令ram,96 kib的数据ram和4 mb的qio flash(32兆位)
两侧的两个平行的,面包板友好的分支使您可以访问:
1 x模拟输入(最大1.0v)
9 x gpio(3.3v逻辑),也可以用于i2c或spi
2 x uart引脚
2 x 3-6v电源输入,复位,启用,禁用ldo的3.3v输出
最后一个分支具有“ ftdi”引脚,因此您可以插入ftdi o r控制台电缆,用于通过uart上传软件和读取/写入调试信息。完成编码后,请拔下电缆,然后将这个小模块嵌入到您的项目框中。
每个模块都预装有nodemcu的lua解释器(nodemcu 0.9.5 build 20150318/lua 5.1.4是具体来说),您可以运行命令,并使用usb串行转换器电缆将lua程序直接“保存”到模块的flash中。
但是,如果您愿意,可以跳过lua并直接转到使用arduino ide。下载esp8266内核后,您可以将其像微控制器+ wifi板一样对待,不需要其他处理器!
每个订单都附带一块经过组装和测试的huzzah esp8266接线板,以及一根可焊接的0.1”接头并将分线插入面包板。这是必需的,并且不包括在内。您还需要usb串行电缆,例如usb控制台电缆(仅windows) ),ftdi friend(任何操作系统)或ftdi电缆(任何操作系统)将软件上传到huzzah esp8266!
别忘了访问esp8266.com了解esp8266最新消息,软件和八卦!
插脚
esp8266采用3.3v电源和逻辑供电,除非另有说明指定,gpio引脚不是5v安全!模拟引脚的最大电压也为1.0v!
与mini esp-01模块相比,此esp8266分支具有大量可用引脚。在lua中或通过arduino ide编程中断时,您可以控制这些i/o引脚来点亮led,读取按钮,与传感器对话等。还有许多用于电源和控制的引脚。
电源引脚
esp8266需要3.3v电源电压,并在短时间内峰值电流在500ma左右时间。您可能想假设esp8266可以消耗高达250ma的电流,因此需要相应的预算。为了简化供电,我们在板上放置了一个具有大电流能力的3.3v稳压器。它可以接受3.4-6v的电压,但由于wifi开启时esp8288的电流消耗很高,因此您应该坚持使用4-6v。
调节器有两个输入, v + 和 vbat 。两者都具有肖特基二极管,因此您可以在不同的电压下连接,稳压器将简单地从较高的电压供电。 v + 引脚也位于底部边缘的ftdi/串行接头上。
我们建议将lipoly或aa电池组直接连接到 vbat 和然后在连接ftdi电缆时不使用 v + 。您还可以使用额外的 v + 引脚从ftdi连接器获取5v usb电源,以用于伺服器,neopixels等!
调节器上还有3.3v输出 3v 引脚
序列图钉
rx 和 tx 是串行控制和引导加载引脚,它们是您将大部分时间用于与esp模块通信的方式。
tx 引脚是模块的输出,并且是3.3v逻辑。
rx 引脚是输入 into 模块,并且兼容5v(该引脚上有一个电平转换器)
该引脚有两个位置,一组位于右侧的分支中。相同的引脚也位于“ ftdi/串行”分支的底部
gpio引脚
此中断具有9个gpio:#0,#2,#4,#5,#12,#13,#14,#15,#16 所有gpio均为3.3v逻辑电平输入和输出,并且不兼容5v。 阅读完整的规格表,以了解有关gpio引脚限制的更多信息,但请注意,每个引脚的最大电流为 12ma 。
这些引脚是通用的,可以用于任何类型的输入或输出。大多数还具有打开内部上拉电阻的能力。许多具有特殊功能:
gpio#0 ,它不具有内部上拉电阻,并且还连接到微型触觉开关和红色led。 esp8266使用此管脚来确定何时启动到引导加载程序。如果在加电期间该引脚保持低电平,它将开始引导加载!也就是说,您始终可以将其用作输出,并使红色led闪烁。
gpio#2 ,也用于检测启动模式。它还连接到wifi天线附近的蓝色led。它具有连接的上拉电阻,您可以将其用作任何输出(如#0)并使蓝色led闪烁。
gpio#15 ,也用于检测启动模式。它连接了一个下拉电阻,确保启动时该引脚未拉高。您始终可以将其用作输出
gpio#16 ,可以将其从深度睡眠模式中唤醒,您需要将其连接到reset引脚
gpio #4 和#5 分别在arduino ide上默认分别用于i2c sda和scl。我们建议如果您使用的是arduino,请在此处连接i2c设备!
该板的版本a交换了gpio#4和#5(模块更改了我们的引脚排列),因此如果#4/#5不起作用为您服务,请尝试进行交换!
模拟引脚
也有一个模拟输入引脚为 a 。该引脚的最大电压约为1.0v,因此,如果您要读取的模拟电压更高,则必须将其分压至0-1.0v范围
其他控制引脚
我们还有一些用于控制esp8266的引脚
ldo -这是调节器的使能引脚。默认情况下,它被拉高,接地时会关闭3.3v稳压器,这是一种切断整个设置电源的简便方法。 v + 或 vbat 电压较高的设备都会产生10k上拉电阻。 (如果不清楚,请参阅原理图)
rst -这是esp8266的复位引脚,默认情况下拉高。暂时下拉至地面时,它将重置esp8266系统。此引脚兼容5v。
en(ch_pd)-这是esp8266的使能引脚,默认情况下拉高。暂时下拉至地面时,它将重置esp8266系统。该引脚仅是3.3v逻辑
程序集
《表class =“ build-table”》
准备标题栏:
如有必要,将两条条切成一定长度。如果将其插入面包板,则焊接会更容易-长按针脚
添加分线板:
将分线板放在插针上,以便短插针穿过分线垫
焊接!
请确保焊接所有引脚以确保可靠的电接触。
首先焊接板的一侧
(有关焊接的技巧,请务必查看我们的 优秀焊接指南 )。
翻转面包板以焊接其他条
您完成了!目视检查焊点,然后继续进行下一步
如果您打算使用ftdi或控制台电缆进行编程,则在一端焊接6个引脚以方便插入是很方便的。
如有必要,再切成6针长条。将其插入面包板-长按
将突破放在面朝下的面包板上
焊接所有6个引脚!
您已完成!目视检查焊点,然后继续进行下一步
使用nodemcu lua
我们发现lua最适合用于输入短命令为了进行测试,我们建议您使用arduino ide,以获得最好的和最受测试的编程接口!
每个huzzah esp8266突破口都已使用nodemcu的lua解释器进行了预编程。在撰写本文时,我们随附了由lua 5.1.4支持的 nodemcu 0.9.5内部版本20150318 ,但可能是较新的
lua仍在开发中,因此我们强烈建议您访问nodemcu,并将您的lua版本更新为最新版本,因为它们可以为您提供最新的连续构建版本。然后按照他们的指南更新lua!
lua解释器运行在esp8266上,您可以键入命令并通过串行读出结果。串行控制台电缆是完美的选择!使用ftdi电缆或任何控制台电缆,由于rx引脚上存在电平转换,您可以使用3v或5v逻辑和电源。
don别忘了访问esp8266.com,以了解esp8266最新消息,软件和八卦消息!
esp8266消耗大量电流,因此,如果您遇到不稳定现象,请确保将控制台电缆插入主板usb端口或有源usb集线器。请勿使用显示器或键盘上的“额外” usb端口。
连接usb串行电缆
连接控制台电缆或ftdi电缆。如果使用ftdi,请确保黑线连接到gnd(接地)引脚
如果使用控制台电缆,则将黑线接地,将红线连接至 v + ,将白线连接至 tx ,绿线连接到 rx
加电时,您会看到板上的红色和蓝色led闪烁,但它们不会保持点亮状态。
打开串行控制台
接下来,在计算机上,使用串行控制台程序,例如 coolterm (mac)或 putty (windows)或屏幕(linux)。 teraterm似乎不喜欢来自esp8266的初始115.2kbps数据流,因此您可以尝试一下,但可能需要重置终端软件。
连接到电缆使用的com或串行端口,确保波特率为9600
请确保您已关闭任何硬件握手或流控制
还请确保将行尾设置为crlf“ \ r \ n“如果要粘贴大量代码,则可能还需要打开字符间延迟。每个终端软件的设置都不相同,请查看所用软件的手册!
i》
一旦连接了终端软件,请单击huzzah esp板上的 reset (重置)按钮以将其重置并打印出欢迎消息:
如果未收到此消息,请先检查按下复位按钮时红色/蓝色指示灯是否闪烁。如果没有,请确保通过 v + 或 vbat 为开发板供电。如果它们确实闪烁,请确保已在软件(9600)中选择了正确的波特率,并且rx/tx/gnd引脚正确连接
hello world!
好,我们现在可以打开一个led。每块板上都有一个红色led,连接到 gpio#0
i》 nodemcu的引脚排列与arduino/gcc引脚排列不同。我们在板上打印arduino引脚排列,请当心!
该板的版本a交换了gpio#4和#5(模块更改了我们的引脚排列),因此如果#4/#5不适用于您,请尝试交换!我们将在下一次pcb运行中修复
pin notes p》pcb/arduinonodemcu/lua
没有上拉!03
24
39
41
52
911
1012
126
137
145
158
160
因此,要先打开和关闭引脚0的led,请通过键入(而不是复制和粘贴)使其成为输出
下载:文件
复制代码
gpio.mode(3, gpio.output) gpio.mode(3, gpio.output)
通过键入(而不是复制和粘贴)打开led
下载:文件
复制代码
gpio.write(3, gpio.low) gpio.write(3, gpio.low)
并通过键入(不是复制和粘贴)关闭
下载:文件
复制代码
gpio.write(3, gpio.high) gpio.write(3, gpio.high)
您可以通过运行更长的脚本来使其自动化一些。
对于更长的文本,粘贴可能会很困难,因为lua解释器在字符之间需要一些延迟时间,并且还需要cr-lf设置。因此,您可能需要粘贴每行,然后手动按回车键。
下载:文件
复制代码
gpio.mode(3, gpio.output)
while 1 do
gpio.write(3, gpio.high)
tmr.delay(1000000) -- wait 1,000,000 us = 1 second
gpio.write(3, gpio.low)
tmr.delay(1000000) -- wait 1,000,000 us = 1 second
end gpio.mode(3, gpio.output)
while 1 do
gpio.write(3, gpio.high)
tmr.delay(1000000) -- wait 1,000,000 us = 1 second
gpio.write(3, gpio.low)
tmr.delay(1000000) -- wait 1,000,000 us = 1 second
end
led现在将闪烁。
请注意,由于它处于循环状态,因此无法获取通过解释器停止。要停止它,请再次单击重置按钮!
此代码可在tmr.delay期间暂停处理器,这是使led闪烁的更智能方法是使用计时器功能来关闭led控件(代码从这里开始)
下载:文件
复制代码
-- pin definition
local pin = 3
local status = gpio.low
local duration = 1000 -- 1 second duration for timer
-- initialising pin
gpio.mode(pin, gpio.output)
gpio.write(pin, status)
-- create an interval
tmr.alarm(0, duration, 1, function ()
if status == gpio.low then
status = gpio.high
else
status = gpio.low
end
gpio.write(pin, status)
end) -- pin definition
local pin = 3
local status = gpio.low
local duration = 1000 -- 1 second duration for timer
-- initialising pin
gpio.mode(pin, gpio.output)
gpio.write(pin, status)
-- create an interval
tmr.alarm(0, duration, 1, function ()
if status == gpio.low then
status = gpio.high
else
status = gpio.low
end
gpio.write(pin, status)
end)
扫描并连接到wifi
我们将继续快速扫描并扫描wifi和连接。
一旦您回来在lua提示符下,使用
将esp8266设置为wifi client模式 download:file
复制代码
wifi.setmode(wifi.station) wifi.setmode(wifi.station)
然后,您可以运行扫描仪并打印出可用的ap
下载:文件
复制代码
-- print ap list
function listap(t)
for k,v in pairs(t) do
print(k.。“ : ”。.v)
end
end
wifi.sta.getap(listap) -- print ap list
function listap(t)
for k,v in pairs(t) do
print(k.。“ : ”。.v)
end
end
wifi.sta.getap(listap)
或更详细。..。..
下载:文件
复制代码
-- print ap list
function listap(t)
for ssid,v in pairs(t) do
authmode, rssi, bssid, channel =
string.match(v, “(%d),(-?%d+),(%x%x:%x%x:%x%x:%x%x:%x%x:%x%x),(%d+)”)
print(ssid,authmode,rssi,bssid,channel)
end
end
wifi.sta.getap(listap) -- print ap list
function listap(t)
for ssid,v in pairs(t) do
authmode, rssi, bssid, channel =
string.match(v, “(%d),(-?%d+),(%x%x:%x%x:%x%x:%x%x:%x%x:%x%x),(%d+)”)
print(ssid,authmode,rssi,bssid,channel)
end
end
wifi.sta.getap(listap)
我们可以使用 wifi.sta.config 和连接到接入点wifi.sta.connect -需要一两秒钟才能完成连接,您可以通过 wifi.sta.status()查询模块以询问状态-当您获得5表示连接已完成且dhcp成功完成
下载:文件
复制代码
wifi.sta.config(“accesspointname”,“yourpassword”)
wifi.sta.connect()
tmr.delay(1000000) -- wait 1,000,000 us = 1 second
print(wifi.sta.status())
print(wifi.sta.getip())
wifi.sta.config(“accesspointname”,“yourpassword”)
wifi.sta.connect()
tmr.delay(1000000) -- wait 1,000,000 us = 1 second
print(wifi.sta.status())
print(wifi.sta.getip())
webclient示例
获得ip地址后,例如,您可以连接到adafruit,然后阅读网页并打印出来:
下载:文件
复制代码
sk=net.createconnection(net.tcp, 0)
sk:on(“receive”, function(sck, c) print(c) end )
sk:connect(80,“104.236.193.178”)
sk:send(“get /testwifi/index.html http/1.1 host: wifitest.adafruit.com connection: keep-alive accept: */* ”) sk=net.createconnection(net.tcp, 0)
sk:on(“receive”, function(sck, c) print(c) end )
sk:connect(80,“104.236.193.178”)
sk:send(“get /testwifi/index.html http/1.1 host: wifitest.adafruit.com connection: keep-alive accept: */* ”)
您还可以让该模块为您执行dns,只需为其指定主机名而不是ip地址即可:
下载:文件
复制代码
sk=net.createconnection(net.tcp, 0)
sk:on(“receive”, function(sck, c) print(c) end )
sk:connect(80,“wifitest.adafruit.com”)
sk:send(“get /testwifi/index.html http/1.1 host: wifitest.adafruit.com connection: keep-alive accept: */* ”) sk=net.createconnection(net.tcp, 0)
sk:on(“receive”, function(sck, c) print(c) end )
sk:connect(80,“wifitest.adafruit.com”)
sk:send(“get /testwifi/index.html http/1.1 host: wifitest.adafruit.com connection: keep-alive accept: */* ”)
这只是测试huzzah esp突破的简要概述!有关更多信息,请查看nodemcu的文档页面https://nodemcu.readthedocs.io/,以获取有关可用功能的详细信息,以及http://www.lua.org,以了解有关lua脚本语言的更多信息。
使用arduino ide
尽管huzzah esp8266突破口已经使用nodemcu的lua解释器进行了预编程,但您不必使用它!相反,您可以使用可能更熟悉的arduino ide。 这将直接写入固件,擦除nodemcu固件,因此,如果您想返回lua,请使用flasher重新安装它
以上传代码连接到esp8266并使用串行控制台,您将需要一个usb到串行转换器!使用ftdi电缆或任何控制台电缆,可以使用3v或5v逻辑和电源,因为rx引脚上存在电平转换。
别忘了访问esp8266.com,了解esp8266最新,最出色的新闻,软件和八卦!
esp8266消耗大量电流,因此如果您出现不稳定现象,请确保将控制台电缆插入主板usb端口或供电的usb集线器。请勿使用显示器或键盘上的“额外” usb端口。
连接usb串行电缆
连接控制台电缆或ftdi电缆。如果使用ftdi,请确保黑线连接到gnd(接地)引脚
如果使用控制台电缆,则将黑线接地,将红线连接至 v + ,将白线连接至 tx ,绿线连接到 rx
加电时,您会看到板上的红色和蓝色led闪烁,但它们不会保持点亮状态。
安装arduino ide 1.6.4或更高版本
从arduino ide下载arduino.cc(1.6.4或更高版本)-不要使用1.6.2!如果已经安装了现有ide,则可以使用它。
如果代理给您带来了问题,您还可以尝试从esp8266-arduino项目下载现成的包
安装esp8266开发板包
输入 http://arduino.esp8266.com/stable/package_esp8266com_index.json进入arduino v1.6.4 +首选项中的其他board manager urls 字段。
请参阅我们的指南,以了解如何向arduino 1.6.4+ ide添加新板
下一步,使用 board manager 安装esp8266软件包。
设置esp8266支持
重新启动后,从中选择 adafruit feather huzzah esp8266 工具-》板下拉菜单。请注意,即使这是huzzah突破,它也与feather相同,因此请使用它!
80 mhz 作为cpu频率(您可以稍后尝试160 mhz超频)
115200波特上传速度是一个不错的起点-稍后您可以尝试更高的速度,但115200是一个不错的起点。如果遇到上传问题,可以降低到较低的速度,或者如果设置稳定,则可以加快速度以加快上传速度!
与您的ftdi或usb串行电缆匹配的com/串行端口
您不必设置 programmer ,因为它将始终使用串行端口,只需忽略该菜单项即可!
眨眼测试
我们将从简单的眨眼测试开始
将其输入到草图窗口中(并保存因为您必须这样做)
下载:文件
复制代码
void setup() {
pinmode(0, output);
}
void loop() {
digitalwrite(0, high);
delay(500);
digitalwrite(0, low);
delay(500);
} void setup() {
pinmode(0, output);
}
void loop() {
digitalwrite(0, high);
delay(500);
digitalwrite(0, low);
delay(500);
}
现在,您需要将开发板置于引导加载模式。您必须在每次上传之前执行此操作。 bootload模式没有超时,因此您不必着急!
按住 gpio0 按钮,红色led会点亮
按住 gpio0 的同时,单击 reset 按钮
释放 reset ,然后释放 gpio0
释放reset按钮时,红色led会变暗,这表示它已可以引导加载
esp板处于引导加载模式后,通过ide上传草图
如果上传成功,则应该以以下消息结尾:
下载:文件
复制代码
hard resetting via rts pin.。. hard resetting via rts pin.。.
看到后,按 reset 按钮,然后将运行草图。
通过wifi连接
确定led闪烁一次,确定i ng,让我们直接进入有趣的部分,连接到web服务器。使用以下代码创建新草图:
下载:文件
复制代码
/*
* simple http get webclient test
*/
#include
const char* ssid = “yourssid”;
const char* password = “yourpassword”;
const char* host = “wifitest.adafruit.com”;
void setup() {
serial.begin(115200);
delay(100);
// we start by connecting to a wifi network
serial.println();
serial.println();
serial.print(“connecting to ”);
serial.println(ssid);
wifi.begin(ssid, password);
while (wifi.status() != wl_connected) {
delay(500);
serial.print(“。”);
}
serial.println(“”);
serial.println(“wifi connected”);
serial.println(“ip address: ”);
serial.println(wifi.localip());
serial.print(“netmask: ”);
serial.println(wifi.subnetmask());
serial.print(“gateway: ”);
serial.println(wifi.gatewayip());
}
int value = 0;
void loop() {
delay(5000);
++value;
serial.print(“connecting to ”);
serial.println(host);
// use wificlient class to create tcp connections
wificlient client;
const int httpport = 80;
if (!client.connect(host, httpport)) {
serial.println(“connection failed”);
return;
}
// we now create a uri for the request
string url = “/testwifi/index.html”;
serial.print(“requesting url: ”);
serial.println(url);
// this will send the request to the server
client.print(string(“get ”) + url + “ http/1.1 ” +
“host: ” + host + “ ” +
“connection: close ”);
delay(500);
// read all the lines of the reply from server and print them to serial
while(client.available()){
string line = client.readstringuntil(‘ ’);
serial.print(line);
}
serial.println();
serial.println(“closing connection”);
} /*
* simple http get webclient test
*/
#include
const char* ssid = “yourssid”;
const char* password = “yourpassword”;
const char* host = “wifitest.adafruit.com”;
void setup() {
serial.begin(115200);
delay(100);
// we start by connecting to a wifi network
serial.println();
serial.println();
serial.print(“connecting to ”);
serial.println(ssid);
wifi.begin(ssid, password);
while (wifi.status() != wl_connected) {
delay(500);
serial.print(“。”);
}
serial.println(“”);
serial.println(“wifi connected”);
serial.println(“ip address: ”);
serial.println(wifi.localip());
serial.print(“netmask: ”);
serial.println(wifi.subnetmask());
serial.print(“gateway: ”);
serial.println(wifi.gatewayip());
}
int value = 0;
void loop() {
delay(5000);
++value;
serial.print(“connecting to ”);
serial.println(host);
// use wificlient class to create tcp connections
wificlient client;
const int httpport = 80;
if (!client.connect(host, httpport)) {
serial.println(“connection failed”);
return;
}
// we now create a uri for the request
string url = “/testwifi/index.html”;
serial.print(“requesting url: ”);
serial.println(url);
// this will send the request to the server
client.print(string(“get ”) + url + “ http/1.1 ” +
“host: ” + host + “ ” +
“connection: close ”);
delay(500);
// read all the lines of the reply from server and print them to serial
while(client.available()){
string line = client.readstringuntil(‘ ’);
serial.print(line);
}
serial.println();
serial.println(“closing connection”);
}
不要忘记更新
const char* ssid = “yourssid”;
const char* password = “yourpassword”;
到您的访问点和密码,然后以相同的方式上传:进入引导加载模式,然后通过ide上传代码
以115200波特打开ide串行控制台,以查看连接和网页打印输出!
如果它说这是cc3000模块的测试。我们在2013年写了这个小网页,但更新不多! :)
就是这样,很简单!
此页面只是为了帮助您入门和测试模块。有关更多信息,请查看esp8266 port github存储库以获取更多最新文档!
其他选项
您可以将micropython加载到esp8226上并用python编写代码!它是官方的micropython核心,并且得到了很好的支持。我们甚至还有大量的项目和入门指南!
您还可以尝试使用embedxcode,它具有带xcode的esp8266模板,
esp-open-sdk是一个工具链,让您直接对esp8266处理器进行编程(更多信息,请访问esp8266.com wiki)
下载
数据表
esp8266规格表
esp8266数据表v4.3
spx3819板载用于rev a的3.3v线性稳压器
ap2112k-3.3线性稳压器机载版本c及更高版本
此突破使用的模块的fcc测试报告
此突破使用的模块的ce测试报告
cad文件
adafruit fritzing库中的框对象
eaglecad pcb文件
更多信息!
http://www.esp8266.com/社区论坛上的大量信息!
nodemcu(esp8266的lua)网页,其中包括示例和说明文件lua框架
对esp8266的arduino ide支持
nodemcu pyflasher-跨平台esp刷新工具
不要或访问esp8266.com,了解esp8266最新,最棒的新闻,软件和八卦信息!
示意图
ldo稳压器在版本c中从spx3819更改为ap2112 ,现在最大为6v(但压降更低),最大600ma输出
布料打印
尺寸以毫米和英寸为单位
esp8266常见问题解答
将东西连接到某些引脚时,huzzah停止工作。这是怎么回事?
esp8266使用一些管脚作为‘boot模式”引脚,因此在启动时必须将它们设置为特定值:
ch_pd(en)应始终拉为高电平(如果为低电平则将禁用整个模块)
rst 应始终被拉高(如果为低电平,它将禁用整个模块)
gpio 0 设置是否引导加载程序如果处于活动状态,则必须在上电/复位期间将其拉为高电平,以便运行用户程序。如果将其拉低,它将激活引导加载程序。 #0上的内置红色led将其上拉
gpio 2 ,必须在上电/复位时将其拉高。
gpio 15 必须在上电/复位时拉低。
我的huzzah板不断崩溃并重置,怎么办?
最常见的崩溃原因是电源故障。确保使用〜5v良好的电源为huzzah供电,如果使用的是usb串行电缆,则应将其插入计算机的主板或通过带电的集线器!
我似乎在计算机上找不到feather huzzah的串行端口?
别忘了为您的计算机安装cp2104 vcp驱动程序,这是必需的!
我似乎仍然无法在计算机上找到feather huzzah的串行端口!
许多便宜的电子产品都带有仅可充电的usb电缆,这会在以后引起头痛。确保使用正确的数据/同步usb电缆。如果您发现仅使用充电电缆(也不能用于数据/同步),则将其丢弃,以免再次遇到相同的问题。
,我在mac上为esp8266编译时遇到“没有这样的文件”错误
如果您的错误消息如下所示:
fork/exec/users/xxxxxxx/library/arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/1.20.0 -26-gb404fb9-2/bin/xtensa-lx106-elf-g ++:没有此类文件或目录
错误编译。
解决此问题,请执行以下操作:
在arduino ide中打开boards manager
卸载esp8266支持
转到您的〜library文件夹(在finder中) ,选择“转到::转到文件夹:,然后输入〜library )。找到文件夹arduino15。
在arduino15文件夹中,进入软件包,并删除文件夹 esp8266
返回到arduino ide,并安装esp8266开发板支持。
现在返回finder,并检查路径 arduino15/packages中是否有xtensa-lx106-elf-g ++文件。/esp8266/tools/xtensa-lx106-elf-gcc/1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-g ++
就是这样!
每当我启动或重置esp8226时,串行控制台上都会出现一堆“乱码”
这是rom调试消息,它以74880波特传输,因此您很少在适当的“ ascii输出”中看到它-而是通常会损坏成一群奇怪的字符。
我在使用arduino ide上传到huzzah时遇到困难
请确保您使用的是高质量的usb/串行电缆。也安装该电缆的官方驱动程序!我们还注意到基于pl2303的电缆由于某些原因在mac上不起作用。基于ftdi或cp210x的芯片组效果最好
我尝试过,但是在使用arduino ide上传时仍然遇到困难
有时,它有助于将电路板类型切换为“通用esp8266模块”。将重置方法设置为“ nodemcu”
参见此论坛帖子
我处于引导加载程序模式,无法上传
您说您的led卡在了昏暗的地方,尝试上传时出错了?并且您确定串行电缆已连接并且可以正常工作吗?好吧,这是一个潜在的解决方法:通过220欧姆电阻将gpio0引脚连接到gnd。上传时保持连接状态。您可能需要尝试几次,但最终应将其上传并从引导加载方式中删除huzzah!然后,您可以删除电阻器连接,之后您的huzzah将会感到高兴!
如何理解智慧仓储,它能为我们带来多大便利
神经介入治疗技术与市场
两款简单的充电式LED台灯电路图
IGBT稳态输出特性及其工作原理
5G发展驶入快车道,还有哪些挑战亟待突破?
HUZZAH ESP8266突破口的使用
电脑内存占用过高加内存条起作用吗
国产机器人到日本物流市场展身手
开鸿智谷亮相2023数博会,共话数实相融,算启无限可能
中国机床工具行业利润总额上升,金属切削机床产量有所回升
基于信令优化的用户感知体系
直流电动机正反转控制线路的工作原理
三极管的工作状态的判断
N4391A光调制分析仪+DSOX92004A示波器的优势
msp430程序丢失问题分析及解决方法
德索LVDS连接器镀金时需考虑的几个事项
小米6确认4月19日发布,黑科技够不够“黑”我们拭目以待
区分绝缘导线的种类
揭秘冰雪盛会中的商汤“黑科技” 广濑电机开发IPX4防水新插座
一图读懂英特尔云原生开源技术