Opis
Informatyka | W pewnych kwestiach nic się nie zmienia – Arduino pozostaje praktycznym, tanim mikrokontrolerem, który może komunikować się ze światem zewnętrznym i obsługiwać przeróżne urządzenia elektroniczne. Daje też pole do popisu licznym amatorom i hobbystom. Środowisko programistyczne wciąż ma prosty interfejs, a programowanie płytki samo w sobie jest łatwym zadaniem nawet dla ludzi bez doświadczenia w pisaniu kodu. Zmiany w świecie Arduino dotyczą większych możliwości oraz sukcesywnie dodawanych funkcjonalności, takich jak obsługa bibliotek, czy kolejnych interfejsów.To drugie, starannie zaktualizowane wydanie przewodnika po programowaniu Arduino, przeznaczonego dla osób, które opanowały podstawy i chcą zdobyć umiejętności na wyższym, profesjonalnym poziomie. W książce dodatkowo ujęto zagadnienia wykorzystania Arduino do komunikacji z urządzeniami szeregowymi oraz z internetem rzeczy (IoT). Dowiesz się również, jak używać środowiska programistycznego Arduino do programowania kompatybilnych płytek. Prezentowane treści zostały zilustrowane praktycznymi przykładami stosowania omówionych technik. Nie zabrakło licznych kodów do pobrania, które ułatwią Ci pracę z nawet bardzo ambitnymi projektami.Dzięki książce dowiesz się, jak:konfigurować Arduino IDE i tworzyć efektywne szkicepoprawić wydajność pracy przy zmniejszeniu natężenia prądu pobieranego przez Arduinopracować z różnymi interfejsami: I2C, 1-Wire, SPI, a także z układem TTL, USB i UARTkorzystać z Ethernetu, Bluetootha i DSP oraz z zasobów internetutworzyć i udostępniać własne bibliotekiZostań mistrzem Arduino!Spis treści:O autorze 9Podziękowania 10Przedmowa 11Wstęp 13Rozdział 1. Programowanie Arduino 17Czym jest Arduino 17Instalacja i środowisko programistyczne 20Instalacja środowiska programistycznego 20Blink 20Wycieczka po płytce Arduino 23Zasilanie 23Złącza zasilania 24Wejścia analogowe 24Złącza cyfrowe 24Płytki Arduino 25Uno i pochodne 25Duże płytki Arduino 26Małe płytki Arduino 27Nieoficjalne płytki Arduino 28Język programowania 29Modyfikacja szkicu Blink 29Zmienne 31If 32Pętle 32Funkcje 34Wejścia cyfrowe 35Wyjścia cyfrowe 37Monitor portu szeregowego 37Tablice i macierze 39Wejścia analogowe 40Wyjścia analogowe 42Korzystanie z bibliotek 44Typy danych obsługiwane przez Arduino 46Polecenia Arduino 47Podsumowanie 49Rozdział 2. Pod maską 51Krótka historia Arduino 51Anatomia Arduino 52Procesory AVR 52ATmega328 53ATmega32u4 53ATmega2560 55AT91SAM3X8E 55Arduino i Wiring 55Od szkicu do Arduino 59AVR Studio 61Instalacja programu rozruchowego 62Instalacja programu rozruchowego za pomocą aplikacji AVR Studio i programatora 63Instalacja programu rozruchowego za pomocą zintegrowanego środowiska programistycznego Arduino i drugiej płytki Arduino 64Podsumowanie 66Rozdział 3. Kiedy Arduino to nie Arduino? 67Rozszerzalna architektura Arduino IDE 67Adafruit Circuit Playground Express 68NodeMCU 71ESP32 73Mikrokontrolery ATtiny 73ATtiny44 73Arduino jako programator 74Instalacja ATtinyCore w IDE 75Zegary, kryształy i bezpieczniki 76Minimalne Arduino 77Podsumowanie 77Rozdział 4. Przerwania i zegary 79Przerwania sprzętowe 79Piny przerwań 82Tryby przerwań 83Aktywacja wbudowanego rezystora podciągającego 83Procedury obsługi przerwań 84Zmienne ulotne 84Podsumowanie wiadomości na temat procedur obsługi przerwań 85Włączanie i wyłączanie obsługi przerwań 85Zegary i przerwania 86Podsumowanie 89Rozdział 5. Przyspieszanie Arduino 91Jak szybko działa Twoje Arduino? 91Porównanie płytek Arduino 92Przyspieszanie wykonywania operacji arytmetycznych 93Czy naprawdę musisz stosować wartości typu float? 93Przeglądanie kontra obliczanie 94Szybkie wejścia-wyjścia 96Podstawowa optymalizacja kodu 97Bajty i bity 98Porty układu ATmega328 98Bardzo szybkie działanie wyjść cyfrowych 100Szybkie wejścia cyfrowe 100Przyspieszanie wejść analogowych 102Podsumowanie 103Rozdział 6. Arduino i mały pobór prądu 105Płytki Arduino i pobór prądu 105Prąd i akumulatory 107Zmniejszenie częstotliwości taktowania 108Wyłączanie komponentów 109Usypianie Arduino opartych na ATmega 111Biblioteka Narcoleptic 111Budzenie za pomocą zewnętrznych przerwań 113Usypianie ESP8266 115Usypianie ESP32 116Ograniczanie pobieranego prądu za pomocą wyjść cyfrowych 118Podsumowanie 120Rozdział 7. Pamięć 121Pamięć Arduino 121Korzystanie z minimalnej ilości pamięci RAM 123Korzystanie z właściwych struktur danych 123Przechowywanie w pamięci flash stałych będących łańcuchami 124Rozpowszechnione błędne przekonania 124Pomiar wolnej pamięci 124Korzystanie z minimalnej ilości pamięci flash 125Korzystaj ze stałych 125Usuwaj zbędne elementy szkicu 125Pomiń program rozruchowy 126Statyczna i dynamiczna alokacja pamięci 126Łańcuchy 127Tablice elementów typu char 128Biblioteka Arduino StringObject 130Korzystanie z pamięci EEPROM 131Przykład korzystania z pamięci EEPROM 132Korzystanie z biblioteki avr/eeprom.h 134Ograniczenia pamięci EEPROM 136Korzystanie z pamięci Flash 136Zapisywanie danych na kartach SD 138Podsumowanie 139Rozdział 8. Interfejsy Arduino 141System binarny 141Typy danych Arduino i system binarny 142System szesnastkowy 143Maskowanie bitów 144Przesunięcie bitowe 145Dane przesyłane szeregowo 146Podsumowanie 150Rozdział 9. Korzystanie z magistrali I2C 151Warstwa sprzętowa 153Protokół magistrali I2C 154Biblioteka Wire 155Inicjacja magistrali I2C 155Wysyłanie danych przez urządzenie nadrzędne 155Odbieranie danych przez urządzenie nadrzędne 155Przykład działania magistrali I2C 156Radio FM TEA5767 156Przesyłanie danych pomiędzy dwoma płytkami Arduino 158Płytki z diodami LED 161Zegar czasu rzeczywistego DS1307 162Podsumowanie 163Rozdział 10. Praca z urządzeniami wyposażonymi w interfejs 1-Wire 165Sprzęt obsługujący interfejs 1-Wire 166Protokół 1-Wire 166Biblioteka OneWire 167Inicjalizowanie biblioteki OneWire 167Skanowanie magistrali 167Korzystanie z układu DS18B20 168Podsumowanie 171Rozdział 11. Praca z urządzeniami wyposażonymi w interfejs SPI 173Operowanie bitami 173Sprzęt obsługujący magistralę SPI 174Protokół SPI 175Biblioteka SPI 175Przykład komunikacji za pomocą interfejsu SPI 177Podsumowanie 180Rozdział 12. Szeregowa transmisja danych za pośrednictwem układu UART 183Sprzęt służący do szeregowej transmisji danych 183Protokół obsługujący szeregową transmisję danych 186Polecenia służące do obsługi szeregowej transmisji danych 186Biblioteka SoftwareSerial 189Przykłady szeregowej transmisji danych 190Komunikacja pomiędzy komputerem a Arduino za pośrednictwem interfejsu USB 190Komunikacja pomiędzy dwoma płytkami Arduino 192Moduł GPS 194Podsumowanie 197Rozdział 13. Obsługa interfejsu USB 199Emulacja klawiatury i myszy 199Emulacja klawiatury 200Przykład emulacji klawiatury 201Emulacja myszy 201Przykład emulacji myszy 202Host USB płytki Arduino Due 202Podsumowanie 205Rozdział 14. Obsługa sieci oraz internet rzeczy 207Sprzęt sieciowy 207Płytka rozszerzeń wyposażona w kontroler sieci Ethernet 207Arduino Ethernet i Arduino EtherTen 208Biblioteka Ethernet 209Nawiązywanie połączenia 209Stawianie serwera sieci Web 211Tworzenie żądań 211Przykład szkicu korzystającego z biblioteki Ethernet 212Sprzętowy serwer sieci Web 212Pobieranie danych w formacie JSON 216Oficjalna biblioteka Arduino do obsługi WiFi 219Nawiązywanie połączenia 219Funkcje zdefiniowane w bibliotece WiFi 220Przykładowy szkic korzystający z sieci Wi-Fi 220Przykład ESP8266/ESP32 WiFi 221Internet rzeczy 223dweet.io 224Programowanie NodeMCU lub Wemos D1 Mini 225Podłączanie TMP36 226Strona internetowa wyświetlająca temperaturę 226Podsumowanie 228Rozdział 15. Cyfrowe przetwarzanie sygnałów 229Wprowadzenie do cyfrowego przetwarzania sygnałów 229Uśrednianie odczytów 230Wstęp do filtrowania 232Prosty filtr dolnoprzepustowy 233Cyfrowe przetwarzanie sygnałów przez Arduino Uno 234Cyfrowe przetwarzanie sygnałów przez Arduino Due 235Generowanie kodu filtrującego 238Transformacja Fouriera 241Analizator spektrum 241Pomiar częstotliwości 244Podsumowanie 244Rozdział 16. Praca z użyciem tylko jednego procesu 247Zmiana skali 247Dlaczego wątki są zbędne 248Funkcje setup i loop 248Najpierw wykrywaj, a dopiero później reaguj 248Pauza, która nie blokuje mikrokontrolera 249Biblioteka Timer 250Diagramy stanów 251Automaty skończone w Arduino 253Podsumowanie 254Rozdział 17. Tworzenie bibliotek 255Kiedy należy tworzyć biblioteki? 255Stosowanie klas i metod 256Przykładowa biblioteka TEA5767 Radio 256Określ interfejs programistyczny 257Utwórz plik nagłówkowy 258Utwórz plik implementacji 259Utwórz plik ze słowami kluczowymi 259Utwórz folder z przykładami 260Testowanie biblioteki 260Publikacja biblioteki 261Publikacja biblioteki na GitHubie 261GitHub 261Tworzenie repozytorium 262Podsumowanie 264Dodatek A. Podzespoły 265Płytki Arduino 265Komponenty i moduły 265Dystrybutorzy 266Zestawy startowe Arduino 267O autorze: Dr Simon Monk – jest cybernetykiem, informatykiem, autorem książek i konstruktorem. Kilka lat był pracownikiem akademickim, później zajął się rozwijaniem firmy programistycznej Momote Ltd. Elektronika jest jego ukochanym hobby od wczesnej młodości. Dr Monk jest autorem ok. dwudziestu książek dla pasjonatów elektroniki i majsterkowania. Zachęcony ich popularnością w 2015 roku wraz z żoną Lindą założył spółkę MonkMakes Ltd., gdzie zajmuje się projektowaniem nowych produktów i… parzeniem świetnej herbaty dla swoich gości. |
---|---|
testosteron na mase , dynia hokkaido kcal , trójglicerydy za niskie , kawior co to , pdh biochemia , rodzaje stekow , cholesterol w jajkach , w jakich tłuszczach rozpuszcza się witamina d |
|
najlepsza yerba | |