Opis książki #
Wprowadzenie do mikrokontrolerów AVR. Od elektroniki do programowania, to licząca 504 strony monografia poświęcona zarówno programowaniu mikrokontrolerów z rodziny AVR, jak również podstawom elektroniki. Przygodę zaczynamy od omówienia podstawowych pojęć i praw z dziedziny elektroniki wraz z omówieniem poszczególnych elementów elektronicznych i ich właściwości. Z książki dowiesz się także jak czytać schematy elektroniczne i noty katalogowe, a także jak wykonywać pomiary i posługiwać się multimetrami czy oszacować błąd pomiaru. W kolejnej części skupiamy się już na elektronice związanej z samymi mikrokontrolerami, czyli z zapewnieniem im odpowiedniego zasilania, podłączenia mikrokontrolera, a także programatora. W rozdziale 4. rozpoczyna się zgłębianie programowania, zaczynamy od podstaw, aby przejść do bardziej zaawansowanych technik. Omawiamy tak proste, ale jakże przydatne zagadnienia jak porty wejścia wyjścia, jak również wszystkie popularne magistrale takie jak SPI, I2C (TWI), USART czy 1-wire. Rozdział 5. natomiast to już przykłady konkretnych zastosowań. Książka przeznaczona jest zarówno dla osób początkujących, jak i średnio-zaawansowanych w dziedzinie programowania mikrokontrolerów AVR. Przedstawione w książce przykłady i kody źródłowe zostały przygotowane dla mikrokontrolerów ATmega16/32, jak również ATmega8, ATmega168/328, a w niektórych przypadkach także dla mikrokontrolerów z rodziny ATTiny.
Gdzie kupić? #
Naszą książkę możesz kupić bezpośrednio na stronie Wydawnictwa Helion.
Aby przejść do księgarni kliknij w poniższy przycisk.
PRZEJDŹ DO KSIĘGARNI HELIONAby dowiedzieć się więcej o naszej książce zachęcamy do obejrzenia poniższego filmu
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)