reklama - zainteresowany?

AVR. Praktyczne projekty - Helion

AVR. Praktyczne projekty
ebook
Autor: Tomasz Francuz
ISBN: 978-83-246-8493-9
stron: 632, Format: ebook
Data wydania: 2013-09-26
Księgarnia: Helion

Cena książki: 64,50 zł (poprzednio: 129,00 zł)
Oszczędzasz: 50% (-64,50 zł)

Dodaj do koszyka AVR. Praktyczne projekty

Tagi: Elektronika | Mikrokontrolery

Programowanie mikrokontrolerów to nic trudnego! Czas siÄ™ o tym przekonać!

  • Poznaj mikrokontrolery AVR z rodziny XMEGA
  • Naucz siÄ™ praktycznie programować je w jÄ™zyku C
  • ZdobÄ…dź doÅ›wiadczenie w stosowaniu ukÅ‚adów AVR

UkÅ‚ady AVR przebojem wdarÅ‚y siÄ™ na rynek mikrokontrolerów. Szybko zdobyÅ‚y serca hobbystów i profesjonalistów - zdecydowaÅ‚y o tym niska cena, ogromne możliwoÅ›ci i wydajność obliczeniowa oraz prostota używania i dostÄ™pność darmowych narzÄ™dzi, które uÅ‚atwiajÄ… programowanie tych ukÅ‚adów. Szczególnie dużym uznaniem wÅ›ród użytkowników mikrokontrolerów cieszÄ… siÄ™ ukÅ‚ady należące do rodziny XMEGA, jednak do tej pory brak byÅ‚o na polskim rynku publikacji opisujÄ…cych ich architekturÄ™, programowanie i zastosowanie.

LukÄ™ tÄ™ doskonale wypeÅ‚nia książka „AVR. Praktyczne projekty ”, której autor postawiÅ‚ sobie za cel szczegóÅ‚owe omówienie problemów zwiÄ…zanych z programowaniem mikrokontrolerów XMEGA, z uwzglÄ™dnieniem moduÅ‚ów, które nie wystÄ™pujÄ… w ukÅ‚adach należących do innych rodzin AVR. JeÅ›li posiadasz już podstawowe umiejÄ™tnoÅ›ci w zakresie programowania mikrokontrolerów, pozycja ta umożliwi Ci praktyczne rozwiniÄ™cie talentów w tej dziedzinie - samodzielnie zrealizujesz m.in. projekt zegara, analizatora logicznego i wiele innych!

To doskonaÅ‚a pozycja zarówno dla czytelników pierwszej książki Tomasza Francuza „JÄ™zyk C dla mikrokontrolerów AVR. Od podstaw do zaawansowanych aplikacji”, jak i dla osób, które opanowaÅ‚y podstawy programowania mikrokontrolerów we wÅ‚asnym zakresie.

  • Architektura ukÅ‚adów AVR XMEGA
  • Warsztat pracy programisty mikrokontrolerów
  • Tworzenie projektów i zarzÄ…dzanie nimi
  • Sposoby pisania efektywnego kodu
  • Korzystanie z różnych typów danych
  • Wykonywanie operacji wejÅ›cia-wyjÅ›cia
  • ZarzÄ…dzanie pamiÄ™ciÄ… mikrokontrolera
  • Sterowanie pracÄ… zegara
  • ObsÅ‚uga przerwaÅ„ i system zdarzeÅ„
  • Używanie timerów i liczników
  • Sterowanie urzÄ…dzeniami zewnÄ™trznymi
  • Praktyczne przykÅ‚ady zastosowaÅ„ mikrokontrolerów

Dowiedz siÄ™, co można osiÄ…gnąć za pomocÄ… jÄ™zyka C i ukÅ‚adów AVR!

 

Przeczytaj kompleksową recenzję książki na portalu Mikrokontrolery.blogspot.com >>

 

Dodaj do koszyka AVR. Praktyczne projekty

 

Osoby które kupowały "AVR. Praktyczne projekty", wybierały także:

  • Tajemnice sieci
  • Przygoda z elektronikÄ…
  • Arduino. Kurs video. Poziom pierwszy. Podstawowe techniki dla wÅ‚asnych projektów elektronicznych
  • Tajemnice sieci
  • Elektronika bez oporu. Schematy elektroniczne od podstaw

Dodaj do koszyka AVR. Praktyczne projekty

Spis treści

AVR. Praktyczne projekty eBook -- spis tre¶ci

Rozdzia³ 1. Wstêp, czyli nowi cz³onkowie rodziny AVR (11)

  • Przyk³ady do ksi±¿ki (12)
  • Mikrokontrolery XMEGA (12)
    • Errata (14)
  • XMEGA a inne AVR-y (15)
    • Kompilator (15)
    • Nowe peryferia (16)

Rozdzia³ 2. Jak zacz±æ, czyli instalacja ¶rodowiska (21)

  • Xplained jako p³yta rozwojowa (22)
    • Instalacja Xplained w systemie (22)
    • Instalacja XMEGA z bootloaderem klasy DFU (25)
  • Programowanie uk³adów XMEGA (25)
    • Wczytywanie firmware za pomoc± FLIP (26)
    • Bootloader firmy Atmel (28)
    • Podstawowe opcje programu batchisp (28)
    • Interfejs JTAG (32)
    • Programowanie z wykorzystaniem interfejsu PDI (34)
  • Programatory (34)
    • AVRISP mkII (35)
    • JTAGICE mkII (35)
    • JTAGICEIII (36)
    • AVROne! (36)
    • AVR Dragon (36)
  • Programowanie i debugowanie procesorów XMEGA (43)
  • Odsprzêganie zasilania (44)
  • Instalacja potrzebnego oprogramowania (44)
    • Atmel Studio 6 - podstawy (45)
  • Programowanie z poziomu AS6 - dlaczego warto korzystaæ z plików w formacie elf (53)

Rozdzia³ 3. Organizacja i zarz±dzanie projektem (55)

  • Komentarze (55)
  • Nazewnictwo (57)
    • Litera³y (59)
  • Podzia³ kodu na pliki (61)
    • Widoczno¶æ funkcji (66)
    • Widoczno¶æ zmiennych (66)
    • Podkatalogi (67)
    • Podzia³ funkcji (69)
  • Zmienne globalne (70)
  • Systemy wersjonowania (74)
    • Serwer SVN na w³asnym komputerze (75)
    • Jak korzystaæ z SVN (78)
    • Praca z SVN (81)
    • Uwagi koñcowe (84)
  • Inne u³atwienia (85)
  • Jak pisaæ lepsze programy? (86)

Rozdzia³ 4. Jak tworzyæ lepszy i efektywniejszy kod (89)

  • W³±czenie optymalizacji (90)
  • D³ugo¶æ typów (91)
  • Zmienne globalne i zmienne lokalne (93)
  • Modyfikator register (94)
  • U¿ycie globalnych rejestrów ogólnego przeznaczenia (97)
    • Wykorzystanie innych rejestrów jako GPIOR (99)
  • Inicjalizacja zmiennych globalnych (99)
  • Po³o¿enie zmiennych w pamiêci (99)
  • Optymalizacja pêtli (100)
  • Optymalizacja funkcji (101)
    • Optymalizacja funkcji main (101)
    • Optymalizacja prologów i epilogów funkcji (101)
    • Optymalizacja przekazywania parametrów funkcji (102)
    • Optymalizacja zwracania wyników funkcji (105)
    • Dodatkowe atrybuty funkcji (106)
    • Inne (110)
  • Eliminacja martwego kodu (111)
  • Konstruktory i destruktory (114)

Rozdzia³ 5. Jak uporz±dkowaæ chaos, czyli z³o¿one typy danych i listy (117)

  • Tablice (118)
  • Struktury (119)
    • Deep copy i shallow copy (123)
    • Wska¼niki i struktury (126)
    • Struktury anonimowe (127)
    • Inicjalizacja pól struktury (128)
    • Unie (129)
    • Pola bitowe (130)
    • Struktury a optymalizacja programu (131)
  • Listy (135)
    • Listy jednokierunkowe (136)
    • Listy dwukierunkowe (140)
    • Listy XOR (142)
  • Bufory (148)
    • Bufor pier¶cieniowy (149)
    • Kolejki FIFO/LIFO (152)
    • Stos (152)

Rozdzia³ 6. Koniec ba³aganu, czyli o nazwach rejestrów i uk³adów peryferyjnych (155)

  • Struktury opisuj±ce mikrokontrolery XMEGA (159)
  • Nazwy rejestrów (162)
  • Nazwy bitów (162)

Rozdzia³ 7. Lepiej i pro¶ciej, czyli porty IO procesora na sterydach (167)

  • Piny wej¶ciowe i wyj¶ciowe (168)
  • Konwersja poziomów logicznych pomiêdzy uk³adami pracuj±cymi z ró¿nymi napiêciami zasilaj±cymi (171)
    • £±czenie wyj¶cia procesora z uk³adem pracuj±cym z napiêciem 5 V (171)
    • Zastosowanie aktywnego konwertera (174)
    • Konwersja z napiêcia wy¿szego na ni¿sze (174)
    • Dzielnik rezystorowy (176)
    • U¿ycie do konwersji napiêæ buforów scalonych (177)
    • Bufor dwukierunkowy stosowany w magistralach typu open drain (178)
  • Kontrola nad portami procesora (181)
  • Piny wej¶ciowe i wyj¶ciowe (182)
  • Synchronizator (184)
  • Konfiguracja sterownika pinu (186)
    • Konfiguracja totem-pole (186)
    • Konfiguracja Pull up/down (187)
    • Konfiguracja bus keeper (188)
    • Konfiguracja wired-AND (189)
    • Konfiguracja wired-OR (191)
    • Odwracanie wyj¶æ IO (192)
    • Kontrola szybko¶ci opadania i narastania zboczy (193)
    • Kontrola zdarzeñ zwi±zanych z pinem (193)
    • Rejestr kontrolny portu (194)
  • Atomowa modyfikacja stanu pinów i wsparcie dla RMW (196)
  • Alternatywne funkcje pinu (199)
  • Porty wirtualne (200)
  • Przekazywanie rejestru jako parametru funkcji (202)
  • Remapowanie wyj¶æ IO (203)

Rozdzia³ 8. Kontroler NVM - jak prosto i przyjemnie dobraæ siê do pamiêci (205)

  • Pamiêæ EEPROM i zwi±zane z ni± operacje (206)
    • Dostêp do EEPROM z poziomu AVR-libc (208)
    • Dostêp do EEPROM za pomoc± bezpo¶redniego dostêpu do kontrolera NVM (213)
  • Techniki wear leveling (219)
    • Rozdzielenie kasowania i zapisu pamiêci (221)
    • Dostêp do EEPROM z wykorzystaniem tokenów (224)
    • EEPROM i awaria zasilania (232)
    • Problem atomowo¶ci przy dostêpie do EEPROM (244)
    • Zapis do EEPROM z u¿yciem przerwañ (244)
  • Zapobieganie uszkodzeniu zawarto¶ci pamiêci EEPROM (246)
  • Dostêp do pamiêci FLASH (246)
    • Typy danych zwi±zane z pamiêci± FLASH (248)
    • Odczyt danych z pamiêci FLASH (250)
  • Dostêp do FLASH w kompilatorze avr-gcc 4.7 i wy¿szych - named address spaces (252)
    • Wska¼niki wykorzystuj±ce przestrzenie adresowe (254)
  • Typy 24-bitowe (258)

Rozdzia³ 9. Potrzebujê wiêcej mocy - s³ów kilka o konfiguracji zegara (259)

  • Rejestry kontrolne zegarów (260)
  • Konfiguracja zegara (262)
    • ¬ród³a zegara (263)
    • Odblokowywanie ¼ród³a zegara (270)
    • Uk³ad PLL (270)
    • DFLL (272)
    • Uk³ad monitorowania zegara zewnêtrznego (275)
    • Zmiana ¼ród³a zegara i jego czêstotliwo¶ci (277)
    • Blokowanie ustawieñ zegara (277)
    • Preskalery zegara (278)
  • Uwagi (281)
    • Kondensatory odsprzêgaj±ce (282)

Rozdzia³ 10. Przerwania i kontroler przerwañ (285)

  • Przerwania (285)
    • Czym s± przerwania? (285)
    • Przerwania maskowalne (286)
    • Przerwania niemaskowalne (287)
    • ¬ród³a przerwañ (287)
  • Konfiguracja i obs³uga przerwañ (288)
    • Czas odpowiedzi na ¿±danie przerwania (288)
    • Funkcja obs³ugi przerwania (289)
    • Wektory przerwañ (290)
    • Puste wektory przerwañ (292)
    • Puste przerwania (293)
    • Wspó³dzielenie kodu przez przerwania (294)
    • Atrybut naked i obs³uga przerwañ w asemblerze (295)
    • Poziomy przerwañ (297)
    • Przerywanie przerwañ (300)
  • Priorytety przerwañ (302)
    • Priorytet dynamiczny (302)
    • Globalna flaga zezwolenia na przerwanie (303)
  • Przerwanie niemaskowalne (304)
  • Rejestr stanu kontrolera przerwañ (304)
  • Modyfikator volatile (305)
    • Zmiana kolejno¶ci instrukcji (307)
  • Atomowo¶æ dostêpu do danych (308)
    • Instrukcje atomowej modyfikacji pamiêci (311)
    • Dostêp do wielobajtowych rejestrów IO (314)
  • Funkcje reentrant (314)
  • Rejestry IO ogólnego przeznaczenia (316)

Rozdzia³ 11. System zdarzeñ (319)

  • Rejestr multipleksera kana³u zdarzeñ (320)
  • Zaawansowane funkcje kana³u zdarzeñ (322)
    • Filtr cyfrowy (322)
    • Dekoder kwadraturowy (322)
    • Enkoder kwadraturowy z indeksem (331)
    • Programowe sterowanie zdarzeniami (332)
  • Zdarzenia jako sygna³y steruj±ce uk³adami zewnêtrznymi (333)
    • Inne funkcje rejestru (334)

Rozdzia³ 12. Timery i liczniki (337)

  • Co to jest licznik? (337)
  • ¬ród³a zegara i preskaler (338)
  • Typy i funkcje liczników (340)
    • Licznik typu 0/1 (341)
  • Piny wyj¶ciowe licznika (350)
    • Licznik typu 2 (351)
    • Timery typu 4/5 (353)
  • Buforowanie (354)
  • Kontrola nad licznikiem (357)
  • Kaskadowe ³±czenie liczników (358)
  • Rejestr tymczasowy TEMP (359)
  • Wykorzystanie PWM do generowania sygna³ów analogowych (361)
    • Przyk³ad - generowanie napiêcia o zmiennej amplitudzie (363)
    • Przyk³ad - generowanie dowolnego przebiegu (364)
    • PWM i przerwania (369)
    • A mo¿e DMA? (371)
  • Rozszerzenie zwiêkszaj±ce rozdzielczo¶æ (374)
    • Tryb HiRes dla licznika typu 2 (377)

Rozdzia³ 13. Kontroler DMA (379)

  • Przesy³anie pamiêæ-pamiêæ (383)
    • Odwracanie danych (384)
    • Przesy³anie nak³adaj±cych siê bloków pamiêci (385)
    • Wype³nianie pamiêci wzorcem (388)
  • Przesy³anie pamiêæ-rejestr IO (389)
  • Wyzwalacze (392)
  • Praca buforowa (395)
  • Priorytety kana³ów DMA (396)
  • Przerwania DMA (397)
    • B³±d transmisji DMA (397)
    • Przerwanie koñca transakcji (398)

Rozdzia³ 14. LED-y - co z nich mo¿na wycisn±æ? (399)

  • Ta¶my LED-owe (399)
    • Trochê o w³a¶ciwo¶ciach oka, czyli RGB w praktyce (403)
    • Program steruj±cy (404)
  • Wy¶wietlacze LED 7-segmentowe (407)
    • Licznik LED (412)
  • Matryce LED (416)
    • Projekt PCB i zasilanie (421)
    • Dobór napiêcia zasilaj±cego matrycê (422)
    • Regulacja pr±du diod (423)
    • Uk³ad z matryc± dwukolorow± (423)
    • Sterowanie matryc± (425)
    • PWM inaczej, czyli jak uzyskaæ odcienie kolorów (433)

Rozdzia³ 15. Uk³ady zegarowe w praktyce (437)

  • RTC czy... RTC? (438)
  • 16-bitowy uk³ad RTC (438)
    • Synchronizacja dostêpu do rejestrów RTC (441)
    • Rejestry PER i COMP (442)
    • RTC w trybie u¶pienia (445)
  • 32-bitowy uk³ad RTC (445)
    • Generator sygna³u zegarowego (445)
    • Rejestry PER i COMP (445)
    • Rejestr CNT (446)
  • Przyk³adowy program kalendarzowy (446)
    • Linuksowy marker czasowy (447)
    • Konwersja czasu (447)
  • Czas drog± radiow±, czyli DCF77 (451)
    • Trochê wiêcej o DCF77 (452)
    • Dekodowanie danych (454)
    • Modu³ odbiornika DCF77 (454)
    • Przyk³ad (455)
  • Uk³ad podtrzymywania zasilania (462)
    • Dobór ¼ród³a zasilania awaryjnego (463)
    • Wykorzystanie baterii (463)
    • Superkondensatory (463)
    • Akumulatory (464)
    • Podtrzymanie zasilania dla ca³ego procesora (465)
    • Uk³ad zapasowego zasilania bateryjnego (465)

Rozdzia³ 16. Budujemy zegar z budzikiem, czyli skoñczona maszyna stanów w praktyce (469)

  • FSM oparta na switch/case (471)
  • FSM oparta na tablicach (474)
  • Zegar z alarmem (477)
  • Jeszcze o maszynach stanu (489)

Rozdzia³ 17. Komunikacja na ró¿ne sposoby, czyli USART w praktyce (491)

  • Elektryczna realizacja interfejsu USART (492)
  • Format transmisji danych (494)
  • Szybko¶æ transmisji (496)
    • Terminal (496)
    • Podgl±d transmisji danych (497)
  • Wirtualny port szeregowy (499)
  • Konfiguracja interfejsu (500)
    • Konfiguracja pinów IO (501)
    • Konfiguracja formatu ramki danych (502)
    • Funkcje dodatkowe interfejsu (502)
    • Ustawienie szybko¶ci interfejsu (503)
    • Kontrola poprawno¶ci danych (508)
  • Transmisja danych (509)
    • Realizacja transmisji przez pooling (509)
    • Wykorzystanie przerwañ (512)
    • Wykorzystanie DMA (517)
    • Równoczesny dostêp do USART z wielu "w±tków" (525)
  • Dostêp do USART z wykorzystaniem strumieni (527)
    • Metoda get (528)
    • Metoda put (528)
    • Otwieranie strumienia (529)
  • Tryb MPCM (530)

Rozdzia³ 18. Wizualizacja danych (535)

  • Atmel Data Visualizer (535)
    • Format danych (537)
    • Struktury wykorzystywane przez ADV (540)
  • Ultrad¼wiêkowy pomiar odleg³o¶ci (543)
    • Modu³y cyfrowe (544)
    • W³asny modu³ (548)
  • Budujemy analizator stanów logicznych (550)
    • Sprzêt (551)
    • Protokó³ komunikacji (553)
    • Implementacja protoko³u (555)
    • Jak szybko próbkowaæ? (560)
    • Klient (564)
    • Uwagi praktyczne (566)

Rozdzia³ 19. Wykorzystanie podczerwieni do transmisji danych (569)

  • Modulacja IR (570)
  • Porozmawiajmy z pilotem TV (572)
    • Czê¶æ sprzêtowa, czyli odbiornik IR (572)
    • Czê¶æ programowa, czyli standardy kodowania (574)
    • Standard NEC i pokrewne (575)
    • RC5 i Motorola (581)
    • Kod RC5 (587)
    • Inne standardy kodowania (592)
  • Nadajnik IR (592)
    • In¿ynieria odwrotna - dekodujemy sygna³ pilota aparatu Canon (595)
  • Transmisja danych (597)
    • Budujemy pakiet danych (600)
  • Sprzêtowy generator CRC (602)
    • CRC liczone programowo (604)
  • Transmisja pakietowa (605)
  • Uniwersalny pilot (608)
  • Interfejs IrDA i IRCOM (613)

Skorowidz (615)

Dodaj do koszyka AVR. Praktyczne projekty

Code, Publish & WebDesing by CATALIST.com.pl



(c) 2005-2023 CATALIST agencja interaktywna, znaki firmowe należą do wydawnictwa Helion S.A.