Ten samouczek pokazuje, jak pracować z typami danych i monitorem szeregowym w kontekście programowania Arduino, w szczególności z użyciem ESP32. Zrozumienie typów danych jest kluczowe dla efektywnego zarządzania pamięcią i bezpiecznego przetwarzania danych. Monitor szeregowy to cenne narzędzie do debugowania, weryfikacji i praktycznych zastosowań. Ten projekt umożliwi Ci tworzenie różnych aplikacji obejmujących rejestrowanie danych, odczyty czujników i zdalne sterowanie.
Oto kilka pomysłów na projekty, które możesz zbudować, korzystając z koncepcji poznanych w tym samouczku:
Prosty rejestrator danych, który zapisuje odczyty czujników i znaczniki czasu.
Zdalny system monitorowania środowiska, który przesyła dane bezprzewodowo.
System zdalnego sterowania urządzeniami domowymi za pomocą aplikacji mobilnej.
Sprzęt/Komponenty
Samouczek wykorzystuje zestaw SunFounder ESP32 IoT, który zawiera mikrokontroler ESP32 z wbudowanym Wi-Fi i Bluetooth, baterię litowo-jonową 18650 z wbudowaną ładowarką oraz kompletny zestaw komponentów (na filmie w 00:10).
Wyjaśnienie kodu
Dostarczony kod demonstruje użycie różnych typów danych i monitora szeregowego. Przyjrzyjmy się kluczowym częściom:
int age = 24; // Deklaruje zmienną całkowitą 'age' i inicjalizuje ją wartością 24.
void setup() {
Serial.begin(115200); // Inicjalizuje komunikację szeregową z prędkością 115200 bodów. Ta prędkość musi odpowiadać ustawieniu w monitorze szeregowym (na filmie w 16:02).
}
void loop() {
Serial.println(12, BIN); // Drukuje liczbę dziesiętną 12 w formacie binarnym.
Serial.println(12, HEX); // Drukuje liczbę dziesiętną 12 w formacie szesnastkowym.
Serial.println(age); // Drukuje wartość zmiennej 'age'.
Serial.println(age, BIN); // Drukuje wartość 'age' w formacie binarnym.
delay(500);
}
Funkcja Serial.begin(115200) inicjalizuje komunikację szeregową. Prędkość transmisji (115200) musi odpowiadać ustawieniu w monitorze szeregowym (na filmie w 16:02). Funkcja Serial.println() drukuje dane w monitorze szeregowym. Drugi argument określa format wyjściowy (BIN dla binarnego, HEX dla szesnastkowego). Funkcja delay(500) wprowadza 500-milisekundową pauzę.
Projekt na żywo/Demonstracja
Film demonstruje użycie różnych typów danych (int, char, float, string, boolean) oraz ich deklarację w kodzie Arduino (na filmie w 09:00). Pokazuje również, jak używać monitora szeregowego do drukowania zmiennych różnych typów, w tym sformatowanego wyjścia (dziesiętnego, szesnastkowego, binarnego) (na filmie w 15:04).
Rozdziały
[00:00] Wprowadzenie do typów danych i monitora szeregowego
[00:10] Wprowadzenie do zestawu SunFounder ESP32
[01:33] Przegląd typów danych
[03:32] Zrozumienie bitów i bajtów
[05:20] Typy danych: całkowity, znakowy, zmiennoprzecinkowy
[08:02] Typy danych: liczba całkowita bez znaku, łańcuch, wartość logiczna
790-ESP32 Tutorial 4/55 - Data Type and using Serial Monitor with Arduino
Język: C++
int age= 24;
void setup() {
Serial.begin(115200); // open the serial port at 115200 bps:
}
void loop() {
Serial.println(12, BIN);//this will print 1100
Serial.println(12, HEX);//this will print C
Serial.println(age);//this will print 24
Serial.println(age, BIN);//this will print 00011000
delay(500)
}