Wprowadzenie do mikrokontrolerów AVR. Od elektroniki do programowania - ebook
Wprowadzenie do mikrokontrolerów AVR. Od elektroniki do programowania - ebook
Interesujesz się elektroniką? Marzysz o konstruowaniu zaawansowanych urządzeń, w których migają wyświetlacze, furkoczą serwomechanizmy i silniki krokowe? Dopiero zaczynasz przygodę w tej dziedzinie, a może jesteś weteranem, który chce poszerzyć swoją wiedzę? Ta książka jest właśnie dla Ciebie! Dla kogoś, kto chce się rozwijać, kto zamierza od podstaw, gruntownie poznać i opanować jedną z najważniejszych umiejętności XXI wieku, jaką jest programowanie mikrokontrolerów. Dziś niemal wszystkie urządzenia bazują na układach programowalnych. Należą do nich 8-bitowe mikrokontrolery AVR, które w ostatnich latach zyskały sporą popularność. To o nich opowiadamy w tej książce.
Znajdziesz tu między innymi:
- Opis podstawowych elementów elektronicznych i ich oznaczeń
- Porady, jak czytać noty katalogowe i schematy elektroniczne, a także jak rozwiązywać problemy
- Wskazówki, jak poprawnie wykonywać pomiary multimetrem i oszacować błędy pomiarowe
- Instrukcje, jak lutować i rozlutowywać elementy, wykonać zasilanie, podłączyć programator i taktować mikrokontroler
- Charakterystykę środowisk programistycznych
- Omówienie modułów mikrokontrolera (rejestry, liczniki, magistrale komunikacyjne I2C, SPI, USART, przetwornik analogowo-cyfrowy ADC, obsługa pamięci EEPROM), a także magistrali 1-Wire
- Podstawy programowania mikrokontrolerów (przesunięcia bitowe, system heksadecymalny, typy danych, kod uzupełnień do dwójki itp.)
- Kody źródłowe w języku C dla mikrokontrolerów ATmega8/16/32, ATmega48/88/168/328, a czasami nawet dla ATtiny13
- Podpowiedzi, jak szukać błędów w programie (debugowanie) oraz omówienie komunikatów o błędach
- 14 gotowych zastosowań wraz z pełnymi kodami źródłowymi (wyświetlacze LCD, 7-segmentowe, silniki krokowe, serwomechanizmy, czujniki gazów, temperatury i wilgotności, zegary czasu rzeczywistego RTC)
- Techniczny słowniczek angielsko-polski
Zachęcamy również do odwiedzenia prowadzonego przez autorów kanału naukowego Sala Science na platformie YouTube!
Spis treści
Słowo wstępne (9)
1. Wprowadzenie (13)
-
- 1.1. Czym są mikrokontrolery AVR? (13)
- 1.2. Jak to wszystko działa? (14)
- 1.3. Bezpieczeństwo (16)
- 1.4. Często zadawane pytania (22)
2. Podstawy elektroniki (26)
- 2.1. Prawo Ohma (26)
- 2.2. Pierwsze prawo Kirchhoffa (27)
- 2.3. Moc (28)
- 2.4. Elementy elektroniczne (30)
- 2.4.1. Rezystory (30)
- 2.4.2. Potencjometry (38)
- 2.4.3. Elementy indukcyjne (39)
- 2.4.4. Kondensatory (43)
- 2.4.5. Diody (57)
- 2.4.6. Diody świecące (LED) (61)
- 2.4.7. Tranzystory (64)
- 2.4.8. Układy scalone (69)
- 2.4.9. Przekaźniki (74)
- 2.4.10. Termistory (77)
- 2.4.11. Silniki krokowe (80)
- 2.4.12. Przełączniki (88)
- 2.4.13. Prototypowe płytki uniwersalne (91)
- 2.4.14. Prototypowe płytki stykowe (92)
- 2.4.15. Obudowy elementów elektronicznych (94)
- 2.5. Jak czytać schematy elektroniczne (96)
- 2.6. Jak czytać noty katalogowe (100)
- 2.7. Dobór elementów elektronicznych (102)
- 2.8. Lutowanie i rozlutowywanie (108)
- 2.9. Podstawowe pomiary multimetrem (117)
- 2.9.1. Zakres pomiarowy (118)
- 2.9.2. Podłączenie przewodów (119)
- 2.9.3. Napięcie (121)
- 2.9.4. Natężenie (122)
- 2.9.5. Rezystancja, pojemność, indukcyjność (122)
- 2.9.6. Pomiar temperatury za pomocą termopary (123)
- 2.9.7. Pomiar ciągłości obwodu (124)
- 2.9.8. Odczytywanie wartości (125)
- 2.9.9. Błędy pomiarowe (129)
- 2.10. Analizator stanów logicznych (132)
- 2.11. Oprogramowanie wspomagające projektowanie (133)
3. Elektronika mikrokontrolerów (139)
- 3.1. Poziomy napięć i wydajność prądowa (139)
- 3.2. Taktowanie (140)
- 3.3. Zasilanie (143)
- 3.4. Podłączenie programatora i zasilania (152)
- 3.5. Reset (155)
- 3.6. Płytka testowa (155)
- 3.7. Porady praktyczne (156)
4. Programowanie (162)
- 4.1. Środowisko programistyczne (162)
- 4.1.1. WinAVR i Makefile (163)
- 4.1.2. Kompilator avr-gcc (166)
- 4.1.3. Edytory kodu (172)
- 4.1.4. Atmel Studio (dawniej AVR Studio) (173)
- 4.1.5. Biblioteki avr-libc (174)
- 4.2. Programatory (175)
- 4.3. AVRDUDE (177)
- 4.4. JTAG (180)
- 4.5. Fusebity i lockbity (181)
- 4.6. Typy danych (186)
- 4.6.1. Typy całkowite (187)
- 4.6.2. Typy zmiennoprzecinkowe float oraz double (189)
- 4.6.3. Łańcuchy (strings) (190)
- 4.6.4. Konwersja typów (194)
- 4.7. Kod uzupełnień do dwóch (199)
- 4.8. Obszary pamięci w mikrokontrolerach (201)
- 4.8.1. Pamięć programu (flash) (202)
- 4.8.2. Pamięć danych (203)
- 4.8.3. EEPROM (208)
- 4.9. System binarny (208)
- 4.10. System heksadecymalny (209)
- 4.11. Przesunięcia bitowe (211)
- 4.12. Operatory logiczne i bitowe. Maskowanie (213)
- 4.13. Priorytet operatorów w języku C (216)
- 4.14. Rejestry (218)
- 4.15. Pierwszy program (226)
- 4.16. Sterowanie portami wejścia-wyjścia I/O (233)
- 4.17. Obsługa przycisków. Drgania styków (239)
- 4.18. Opóźnienia (delay) (254)
- 4.19. Tworzenie własnych bibliotek (256)
- 4.20. Nazwy funkcji bibliotek i zmiennych (261)
- 4.21. Przerwania (264)
- 4.22. Liczniki (276)
- 4.22.1. Tryb porównania (CTC) (279)
- 4.22.2. Modulacja szerokości impulsu (PWM) (285)
- 4.22.3. Taktowanie licznika źródłem zewnętrznym (294)
- 4.23. Magistrale komunikacyjne (295)
- 4.23.1. SPI (297)
- 4.23.2. TWI/TWSI (I2C) (305)
- 4.23.3. 1-Wire (314)
- 4.23.4. USART (321)
- 4.24. Obsługa pamięci EEPROM (341)
- 4.25. Przetwornik ADC (346)
- 4.26. Moduły nadzorujące (358)
- 4.27. Pisanie programów i poszukiwanie błędów (364)
5. Przykłady zastosowań (376)
- 5.1. Sterowanie diodami LED (376)
- 5.2. Sterowanie brzęczykiem (380)
- 5.3. Czujnik ruchu PIR (382)
- 5.4. Silnik krokowy (386)
- 5.5. Serwomechanizmy (392)
- 5.6. Klawiatury (396)
- 5.7. Wyświetlacz 7-segmentowy (400)
- 5.8. Sterownik MAX7219 (matryce LED i wyświetlacze segmentowe) (412 )
- 5.9. Wyświetlacz LCD (HD44780) (419)
- 5.10. Czujnik temperatury DS18B20 (442)
- 5.11. Czujnik temperatury i wilgotności DHT11 (451)
- 5.12. Termistor jako czujnik temperatury (455)
- 5.13. Czujniki gazów (461)
- 5.14. Zegary czasu rzeczywistego DS1307, DS3231, PCF8563 (473)
A. Dodatek (479)
- A.1. Przedrostki (479)
- A.2. Konwersja jednostek (480)
- A.3. Systemy liczbowe (481)
- A.4. AVRDUDE (parametr -p) (482)
- A.5. Wyznaczanie współczynników charakterystyki czujników (484)
- A.6. Słowniczek angielsko-polski (486)
Skorowidz (494)
Kategoria: | Hardware |
Zabezpieczenie: |
Watermark
|
ISBN: | 978-83-283-8852-9 |
Rozmiar pliku: | 59 MB |