Ви не увійшли.
Сторінки 1
Почему esp32 сразу после загрузки скетча, нажимаю EN и прога работает, на порту что то там отображается.
Но если я просто вытянул питание usb, а потом включил питание usb, то ничего не происходит, и кнопа EN не всегда помогает.
Я хочу что бы подалось питание, и сразу пошла работа.
Что я упустил?
Неактивний
Схему в студию. А пока погадаю на хрустальном шаре - задействовали пины которые заганяют есп в режим прошивки.
#include <WiFi.h>
#include <Adafruit_MCP23X17.h>
#include <SPI.h>
#include <SD.h>
#include "FS.h"
String wifi_ssid;
String wifi_pass;
#define LED_PIN_1 0 // MCP23XXX pin LED is attached to
#define LED_PIN_2 0 // MCP23XXX pin LED is attached to
Adafruit_MCP23X17 mcp1; // mcp23017 разширение GPIO
Adafruit_MCP23X17 mcp2; // mcp23017 разширение GPIO
String readFile(fs::FS &fs, String path){
String str = "";
File file = fs.open(path);
if(!file){
return "";
}
while(file.available()){
str += (char)file.read();
}
file.close();
return str;
}
boolean writeFile(fs::FS &fs, String path, String message){
boolean flag;
File file = fs.open(path, FILE_WRITE);
if(!file){
flag = false;
}
if(file.print(message)){
flag = true;
} else {
flag = false;
}
file.close();
return flag;
}
void setup() {
Serial.begin(9600);
SDInit();
mcpInit();
wifiConnect();
}
void loop() {
mcp1.digitalWrite(LED_PIN_1, HIGH);
delay(1000);
mcp1.digitalWrite(LED_PIN_1, LOW);
delay(1000);
mcp2.digitalWrite(LED_PIN_2, HIGH);
delay(1000);
mcp2.digitalWrite(LED_PIN_2, LOW);
delay(1000);
}
// Инициализация mcp23017 разширение GPIO (цифровых выходов)
void mcpInit()
{
mcp1.begin_I2C(0x20);
mcp2.begin_I2C(0x21);
// configure pin for output
mcp1.pinMode(LED_PIN_1, OUTPUT);
mcp2.pinMode(LED_PIN_2, OUTPUT);
}
// Инициализация подключение до wifi с помощью SmartConfig первый раз и записываем на microSD, потом будем считывать от туда
void wifiConnect()
{
wifi_ssid = readFile(SD, "/wifi_ssid");
wifi_pass = readFile(SD, "/wifi_pass");
if(wifi_ssid == "" or wifi_pass == ""){
Serial.println("SmartConfig start");
WiFi.mode(WIFI_AP_STA);
/* start SmartConfig */
WiFi.beginSmartConfig();
/* Wait for SmartConfig packet from mobile */
Serial.println("Waiting for SmartConfig.");
while (!WiFi.smartConfigDone()) {
delay(500);
Serial.print(".");
}
Serial.println("");
Serial.println("SmartConfig done.");
/* Wait for WiFi to connect to AP */
Serial.println("Waiting for WiFi");
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("WiFi Connected.");
Serial.print("IP Address: ");
Serial.println(WiFi.localIP());
wifi_ssid = WiFi.SSID();
wifi_pass = WiFi.psk();
writeFile(SD, "/wifi_ssid", wifi_ssid);
writeFile(SD, "/wifi_pass", wifi_pass);
} else {
Serial.println("vars get in files");
}
// Установить соединение с wifi
const char *ssid = wifi_ssid.c_str();
const char *pass = wifi_pass.c_str();
WiFi.begin(ssid, pass);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("WIFI connected!");
}
// Инициализация SD карты
void SDInit()
{
Serial.print("Initializing SD card...");
if (!SD.begin(5)) {
Serial.println("initialization SD card failed!");
while (1);
}
Serial.println("initialization SD card done.");
}
Неактивний
Посмотри какой уровень в момент старта на 5 пине
Проблема с питанием
х.з. Может быть все что угодно - шнур, некачественный БП, отсутствие/плохой контакт в макетке.
да
Сторінки 1