рдирдорд╕реНрддреЗ! рдпрджрд┐ рдЖрдк рдЕрдкрдиреЗ рд╣рд╛рдереЛрдВ рдореЗрдВ ESP32 рдорд╛рдЗрдХреНрд░реЛрдХрдВрдЯреНрд░реЛрд▓рд░ рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рднрд╛рдЧреНрдпрд╢рд╛рд▓реА рд╣реИрдВ (рдореИрдВ рдЪреАрдиреА рдХрдВрдкрдирд┐рдпреЛрдВ ESPRESSIF рд╕реЗ рдЕрдзрд┐рдХ рднрд╛рдЧреНрдпрд╢рд╛рд▓реА рдерд╛ рдФрд░ рдореЗрд░реЗ рд╣рд╛рдереЛрдВ рдореЗрдВ M5Stack рд╣реИ), рддреЛ рдпрд╣ рдкреЛрд╕реНрдЯ рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддреА рд╣реИред

рдРрд╕реА рд╕реНрдерд┐рддрд┐ рд╣реЛрддреА рд╣реИ рдЬрдм рдЧреИрд░-рд╡рд╛рд╖реНрдкрд╢реАрд▓ рдореЗрдореЛрд░реА рдореЗрдВ рдХреБрдЫ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рд╕рд╣реЗрдЬрдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реЛрддрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП: рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рдкреВрд░реЗ рд╕рдордп рдХреЗ рд▓рд┐рдП рдЪрд╛рд▓реВ рдХрд░рдиреЗ рдпрд╛ рд╡рд╛рдИ-рдлрд╛рдИ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рд╕рд╣реЗрдЬрдиреЗ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреА рдЧрдгрдирд╛ рдХрд░реЗрдВ)ред рдпрд╣ рд╡рд░реАрдпрддрд╛рдПрдБ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд╛ рдЙрдкрдпреЛрдЧ рдЖрд╕рд╛рдиреА рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рд╣рдо рдкреНрд░реЗрдлрд░реЗрдВрд╕ рдХреНрд▓рд╛рд╕ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдШреЛрд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рд╡рд╣рд╛рдВ рд╣рдо рджреЗрдЦреЗрдВрдЧреЗ ...
рдкрд╣рд▓реА рдЪреАрдЬрд╝ рдЬреЛ рд╣рдореЗрдВ рдХрд░рдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИ, рд╡рд╣ рд╢реБрд░реБрдЖрддреА рдкрджреНрдзрддрд┐ рдХреЛ рддрд░реНрдХреЛрдВ рдХреА рдПрдХ рдЬреЛрдбрд╝реА (рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рдкрд╣рд▓реЗ рдПрдХ рдХреЗ рд╕рд╛рде) рдХрд╣рдХрд░ рдПрдХ рдЪрд╛рдмреА рдХрд╛ рдЧреБрдЪреНрдЫрд╛ рдмрдирд╛рдиреЗ рдХреА рд╣реИ: рдХрд┐рдЪреЗрди рдХрд╛ рдирд╛рдо рдФрд░ рд░реАрдб-рдУрдирд▓реА рдлреНрд▓реИрдЧред
рд╕реНрдореГрддрд┐ рдореЗрдВ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдорд╛рди рдХреЛ рд╕рд╣реЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдХреБрдВрдЬреА рдФрд░ рдорд╛рди рдХреЛ рдПрдХ рд╡рд┐рдзрд┐ рд╕реЗ рдкрд╛рд╕ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЬрд┐рд╕рдХреЗ рдирд╛рдо рдореЗрдВ рджреЛ рднрд╛рдЧ рд╣реИрдВ: рдкрд╣рд▓рд╛ рдбрд╛рд▓рд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рджреВрд╕рд░рд╛ рдПрдХ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдирд╛рдо рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП: рд╕реНрдЯреНрд░рд┐рдВрдЧ ред рд╕рдм рдХреБрдЫ рд╕реНрдкрд╖реНрдЯ рдФрд░ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред рд╕рдЪ рд╣реИ, рдЕрднреА рднреА рдХрдЪреНрдЪреЗ рдмрд╛рдЗрдЯреНрд╕ рд╣реИрдВ рдмрд┐рдирд╛ рднреВрдиреЗрдВ рдХрд┐ рдХреЛрдИ рднреА рдПрдХ рдкреНрд░рдХрд╛рд░ рдХреЛ рдЕрд╕рд╛рдЗрди рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рд╡рд┐рдзрд┐ рдЗрди рдмрд╛рдЗрдЯреНрд╕ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд╕рд╛рде рддреАрд╕рд░рд╛ рддрд░реНрдХ рднреА рд▓реЗрддреА рд╣реИред рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рд╕рд╛рде, рд╕рдм рдХреБрдЫ рд╣реЛрдиреЗ рд▓рдЧрддрд╛ рд╣реИред
рдорд╛рди рд▓рд┐рдЦреЗ рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдк рдЗрд╕реЗ рд╡рд┐рдзрд┐ (рдЬрд┐рд╕рдХрд╛ рдирд╛рдо рдкрд┐рдЫрд▓реЗ рд╡рд╛рд▓реЗ рдХреЗ рд╕рдорд╛рди рд╣реИ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ , рдЬрд╣рд╛рдВ рдкрд╣рд▓рд╛ рднрд╛рдЧ рдорд┐рд▓реЗрдЧрд╛ ред рдпрд╣ рд╡рд┐рдзрд┐ рд╕рдВрдмрдВрдзрд┐рдд рдкреНрд░рдХрд╛рд░ рдХреА рдХреБрдВрдЬреА рдХреЗ рд▓рд┐рдП рдорд╛рди рд▓реМрдЯрд╛рддреА рд╣реИред рдмрд╛рдЗрдЯ рдХреЗрд╕ рдпрд╛рдж рд╣реИ? рдпрджрд┐ рдЖрдкрдХреЛ рдкрддрд╛ рдирд╣реАрдВ рд╣реИ (рдпрд╛ рдпрд╛рдж рдирд╣реАрдВ рд╣реИ) рдХреБрдВрдЬреА рдкрд░ рдХрд┐рддрдиреЗ рдмрд╛рдЗрдЯ рд╣реИрдВ, рддреЛ getBytesLength рд╡рд┐рдзрд┐ рдХреЛ рдПрдХ рддрд░реНрдХ рдХреЗ рд╕рд╛рде рдЦреАрдВрдЪреЗрдВ - рдХреБрдВрдЬреА, рдпрд╣ рд╕рдм рдХреБрдЫ рдХреА рдЧрдгрдирд╛ рдХрд░реЗрдЧрд╛ рдФрд░ size_t рдореЗрдВ рд░рд╛рд╢рд┐ рд╡рд╛рдкрд╕ рдХрд░реЗрдЧрд╛ред
рдпрджрд┐ рдЖрдк рдХрд┐рдЪреЗрди рд╕реЗ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХреБрдВрдЬреА рдирд┐рдХрд╛рд▓рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕реЗ рд╣рдЯрд╛рдиреЗ рдХреА рд╡рд┐рдзрд┐ рдХрд╛ рдПрдХрдорд╛рддреНрд░ рддрд░реНрдХ рджреЗрдВ ред
рдХреНрдпрд╛ рдЖрдк рдПрдХ рдЕрд╕рд▓реА рдорд╛рд░реНрдлрд╝реЗрдЯ рд▓рд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдФрд░ рдкреВрд░реЗ рдЭреБрдВрдб рдХреЛ рд╕рд╛рдлрд╝ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ? рдмрд┐рдирд╛ рдХрд┐рд╕реА рддрд░реНрдХ рдХреЗ рд╕реНрдкрд╖реНрдЯ рдкрджреНрдзрддрд┐ рдХреЛ рдмреБрд▓рд╛рдУ!
рдЬрдм рдЖрдк рдмрдВрдбрд▓ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рд╕рдорд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдмрд┐рдирд╛ рдХрд┐рд╕реА рддрд░реНрдХ рдХреЗ рдЕрдВрддрд┐рдо рд╡рд┐рдзрд┐ рдХреЛ рдХреЙрд▓ рдХрд░реЗрдВред
рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдирд┐рдореНрди рдкреНрд░рдХрд╛рд░ рд╕рдорд░реНрдерд┐рдд рд╣реИрдВ: рдЪрд╛рд░ , UChar , рд▓рдШреБ , UShort , Int , UInt , Long , ULong , Long64 , ULong64 , Float , Double , Bool , String рдФрд░ рдмрд╛рдЗрдЯреНрд╕ ред
рдореИрдВ рд╕рдордЭ рдЧрдпрд╛ рдХрд┐ рдореБрдЭреЗ рдХреНрдпрд╛ рдЪрд╛рд╣рд┐рдП рдХреБрдЫ рдХреЛрдб, рдЗрд╕рд▓рд┐рдП рдпрд╣рд╛рдБ рд╕реНрдХреЗрдЪ рд╣реИред рдПрдХ рд╕реНрдХреЗрдЪ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рдШреБрдорд╛рд╡реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдЧрд┐рдирддрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рдбрд┐рд╕реНрдкреНрд▓реЗ рдкрд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ:
#include <M5Stack.h> #include <Preferences.h> Preferences preferences; const char* key = "OnOff"; uint32_t count; void setup() { m5.begin(); preferences.begin("MyKeyChain"); count = preferences.getUInt(key); preferences.putUInt(key, count + 1); M5.Lcd.setTextSize(3); M5.Lcd.setTextColor(TFT_WHITE); M5.Lcd.println("Hello, Habr!"); M5.Lcd.setTextSize(2); M5.Lcd.println("M5Stack Turned On:"); M5.Lcd.setTextSize(3); M5.Lcd.setTextColor(TFT_RED); M5.Lcd.println(count); M5.Lcd.setTextColor(TFT_WHITE); M5.Lcd.setTextSize(2); M5.Lcd.println("times"); } void loop() { }
рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд╛ рдПрдХ рд╕рдВрджрд░реНрдн рд╕рдВрд▓рдЧреНрди рд╣реИ ред