دسترسی نامحدود
برای کاربرانی که ثبت نام کرده اند
برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید
در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید
برای کاربرانی که ثبت نام کرده اند
درصورت عدم همخوانی توضیحات با کتاب
از ساعت 7 صبح تا 10 شب
ویرایش:
نویسندگان: Tomasz Francuz
سری:
ISBN (شابک) : 9788324637324
ناشر: Helion
سال نشر: 2011
تعداد صفحات: 566
زبان: Polish
فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود)
حجم فایل: 7 مگابایت
در صورت تبدیل فایل کتاب Język C dla mikrokontrolerów AVR به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.
توجه داشته باشید کتاب زبان C برای میکروکنترلرهای AVR نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.
Spis treści Wstęp Kody przykładów Schematy Wymagane części Rozdział 1. Instalacja środowiska i potrzebnych narzędzi Instalacja WinAVR Instalacja AVR Studio Systemy GNU/Linux AVR Studio Pierwsza aplikacja Dodawanie plików do projektu Programy narzędziowe Linker Program avr-size Program avr-nm Program avr-objcopy Program make Pliki wynikowe Biblioteki Projekt biblioteki Tworzenie biblioteki Dołączanie biblioteki do programu Funkcje „przestarzałe” Nadpisywanie funkcji bibliotecznych Usuwanie niepotrzebnych funkcji i danych Rozdział 2. Programowanie mikrokontrolera Podłączenie — uwagi ogólne Problemy Programatory ISP Budowa programatora Programator USBASP Kilka procesorów w jednym układzie Programatory JTAG Programator JTAGICE Programator JTAGICE mkII Kilka procesorów w jednym układzie AVR Dragon Programatory HW i równoległe Tryb TPI Programowanie procesora w AVR Studio Programowanie przy pomocy narzędzi dostarczonych przez firmę Atmel Program AVRDUDE Program PonyProg Fusebity i lockbity w AVR-libc Lockbity Fusebity Sygnatura Lockbity w AVR-libc Fusebity w AVR-libc Rozdział 3. Podstawy języka C na AVR Arytmetyka Proste typy danych Arytmetyka stałopozycyjna Arytmetyka zmiennopozycyjna Operacje bitowe Reprezentacja binarna liczb Operacja iloczynu bitowego Operacja sumy bitowej Operacja sumy wyłączającej Operacja negacji bitowej Operacje przesunięć bitowych Zasięg zmiennych Zmienne globalne Zmienne lokalne Modyfikator const Wskaźniki Tablice Funkcje Przekazywanie parametrów przez wartość i referencję Wywołanie funkcji Rekurencyjne wywołania funkcji Słowa kluczowe Operatory Instrukcje sterujące Preprocesor Dyrektywa #include Dyrektywy kompilacji warunkowej Dyrektywa #define Pliki nagłówkowe i źródłowe Definicja a deklaracja Słowo kluczowe static Słowo kluczowe extern Dyrektywa inline Modyfikator register Rozdział 4. Sekcje programu Sekcje danych Sekcja .text Sekcja .data Sekcja .bss Sekcja .eeprom Sekcje zawierające kod programu Podsekcje .init[0-9] Podsekcje .fini[0-9] Sekcje specjalne Sekcje tworzone przez programistę Umieszczanie sekcji pod wskazanym adresem Rozdział 5. Kontrola rdzenia i zarządzanie poborem energii Źródła sygnału RESET Power-on Reset Zewnętrzny sygnał RESET Brown-out Detector Układ Watchdog Zarządzanie poborem energii Usypianie procesora Wyłączanie układu BOD Wyłączanie podsystemów procesora Preskaler zegara Inne sposoby minimalizowania poboru energii Rozdział 6. Dynamiczna alokacja pamięci Alokacja pamięci w bibliotece AVR-libc Funkcja malloc Funkcja calloc Funkcja realloc Funkcja free Wycieki pamięci i błędne użycie pamięci alokowanej dynamicznie Jak działa alokator Wykrywanie kolizji sterty i stosu Metoda I — własne funkcje alokujące pamięć Metoda II — sprawdzanie ilości dostępnej pamięci Metoda III — marker Metoda IV — wzór w pamięci Metoda V — wykorzystanie interfejsu JTAG Rozdział 7. Wbudowana pamięć EEPROM Zapobieganie uszkodzeniu zawartości pamięci EEPROM Kontrola odczytu i zapisu do pamięci EEPROM Odczyt zawartości komórki pamięci Zapis do komórki pamięci Dostęp do EEPROM z poziomu AVR-libc Deklaracje danych w pamięci EEPROM Funkcje realizujące dostęp do pamięci EEPROM Inne funkcje operujące na EEPROM Techniki wear leveling Rozdział 8. Dostęp do pamięci FLASH Typy danych związane z pamięcią FLASH Odczyt danych z pamięci FLASH Dostęp do pamięci FLASH >64 kB Rozdział 9. Interfejs XMEM Wykorzystanie zewnętrznej pamięci SRAM w programie Konfiguracja I — w pamięci zewnętrznej jest tylko sekcja specjalna Konfiguracja II — wszystkie sekcje w pamięci zewnętrznej, stos w pamięci wewnętrznej Konfiguracja III — w pamięci zewnętrznej umieszczona jest tylko sterta Konfiguracja IV — w pamięci zewnętrznej sterta i segment zdefiniowany przez programistę Konfiguracja V — w pamięci zewnętrznej znajduje się stos Pamięć ROM jako pamięć zewnętrzna Rozdział 10. Dostęp do 16-bitowych rejestrów IO Dostęp do 16-bitowego rejestru ADC Dostęp do 16-bitowych rejestrów timerów Rozdział 11. Opóźnienia Rozdział 12. Dostęp do portów IO procesora Konfiguracja pinu IO Manipulacje stanem pinów IO Zmiana stanu portu na przeciwny Ustawianie linii IO Zerowanie linii IO Makrodefinicja _BV() Użycie pól bitowych Synchronizator Przykłady praktyczne Sterowanie wyświetlaczem 7-segmentowym Podłączenie przycisków Enkoder obrotowy Klawiatura matrycowa Rozdział 13. Rejestry IO ogólnego przeznaczenia Wykorzystanie innych rejestrów jako GPIOR Rozdział 14. Przerwania Obsługa przerwań sei()/cli() Atrybut naked i obsługa przerwań w asemblerze Modyfikator volatile Atomowość dostępu do danych Funkcje reentrant Przykłady praktyczne Wyświetlanie multipleksowane Wyświetlanie multipleksowane z regulacją jasności wyświetlacza Obsługa przycisków Obsługa enkodera Klawiatura matrycowa Rozdział 15. Przetwornik analogowo-cyfrowy Wybór napięcia referencyjnego Multiplekser Przetwornik ADC Tryb pojedynczej konwersji Tryb ciągłej konwersji Wejścia pojedyncze i różnicowe Wynik Wyzwalacze Blokowanie wejść cyfrowych Przerwania ADC Precyzyjne pomiary przy pomocy ADC Nadpróbkowanie Uśrednianie Decymacja i interpolacja Przykłady Termometr analogowy LM35 Klawisze Rozdział 16. Komparator analogowy Funkcje dodatkowe Blokowanie pinów Wyzwalanie zdarzeń timera Wybór wejścia komparatora Wyzwalanie przetwornika ADC Rozdział 17. Timery Sygnał taktujący Wewnętrzny sygnał taktujący Zewnętrzny sygnał taktujący Licznik Układ porównywania danych Wpływ na piny IO Moduł przechwytywania zdarzeń zewnętrznych Eliminacja szumów Komparator jako wyzwalacz zdarzenia ICP Tryby pracy timera Tryb prosty Tryb CTC Tryby PWM Układ ochronny Modulator sygnału wyjściowego Miernik częstotliwości i wypełnienia Realizacja RTC przy pomocy timera Realizacja sprzętowa Realizacja programowa Rozdział 18. Obsługa wyświetlaczy LCD Obsługa wyświetlaczy alfanumerycznych Funkcje biblioteczne Definiowanie własnych znaków Przykład — menu Obsługa wyświetlaczy graficznych Rozdział 19. Interfejs USART Interfejsy szeregowe Interfejs USART Interfejs USART mikrokontrolera AVR Przykłady Połączenie mikrokontroler – komputer PC RS485 Rozdział 20. Interfejs SPI Inicjalizacja interfejsu Ustawienie pinów IO Zegar taktujący Procesor w trybie Master SPI Procesor w trybie slave SPI Przykłady Połączenie AVR-AVR Połączenie AVR – rejestr szeregowy Interfejs USART w trybie SPI Taktowanie magistrali SPI Tryb pracy SPI Format ramki danych Konfiguracja interfejsu Rozdział 21. Interfejs TWI Tryb multimaster Inicjalizacja interfejsu Procesor w trybie I2C master Bity START i STOP Podstawowe funkcje do współpracy z I2C Współpraca z zewnętrzną pamięcią EEPROM Współpraca z zewnętrzną pamięcią FRAM Umieszczanie zmiennych w zewnętrznej pamięci EEPROM Współpraca z zegarem RTC Obsługa ekspandera IO PCF8574 Procesor w trybie I2C slave Przykład Rozdział 22. Interfejs USI 4-bitowy licznik i zegar Przerwania USI Zmiana pozycji pinów Wykorzystanie interfejsu USI w trybie SPI Tryb SPI master Tryb SPI slave Rozdział 23. Interfejs USB Zasilanie Sygnały danych VID i PID Interfejs USB realizowany przy pomocy konwertera Interfejs USB realizowany programowo Połączenie elektryczne Dostęp na PC Programowy interfejs USB na AVR Sprzętowy interfejs USB Rozdział 24. Interfejs 1-wire Realizacja master 1-wire na AVR Realizacja master 1-wire przy pomocy pinów IO Realizacja master 1-wire przy pomocy interfejsu USART Wysokopoziomowe funkcje obsługi 1-wire Termometr cyfrowy DS1820 Rozdział 25. Bootloader Pamięć NRWW i RWW Bity konfiguracyjne bootloadera Konfiguracja lockbitów z poziomu aplikacji Programowanie pamięci FLASH Wykorzystanie przerwań w kodzie bootloadera Usuwanie tablicy wektorów przerwań Skrócenie tablicy wektorów przerwań Start bootloadera Wykorzystanie dodatkowego przycisku/zworki Wykorzystanie markerów w pamięci EEPROM Oczekiwanie na specjalny znak w wybranym kanale komunikacji Start aplikacji Współdzielenie kodu aplikacji i bootloadera Wywoływanie funkcji bootloadera w procesorach ATMega256x Wywoływanie funkcji obsługi przerwań zawartych w kodzie bootloadera Współdzielenie zmiennych pomiędzy aplikacją a bootloaderem Mikrokontrolery AVR z wbudowanym bootloaderem Rozdział 26. Kontrola integralności programu Suma kontrolna CRC Automatyczne generowanie CRC Rozdział 27. Bezpieczeństwo kodu Metody łamania zabezpieczeń Bezpieczne uaktualnianie aplikacji Nota AVR231 — AES Bootloader Ustawienie bitów konfiguracyjnych Przygotowanie aplikacji Wczytywanie uaktualnienia Rozdział 28. Łączenie kodu w C i asemblerze Słowo kluczowe asm Typy operandów Dostęp do portów IO Dostęp do danych wielobajtowych Dostęp do wskaźników Lista modyfikowanych rejestrów Wielokrotne użycie wstawki asemblerowej Pliki .S Wykorzystanie rejestrów w asemblerze Przykłady Rozdział 29. Optymalizacja i debugowanie programu Optymalizacja programu Opcje kompilatora związane z optymalizacją Atrybuty optymalizacji Debugowanie programu Rozpoczęcie sesji debugera Zaawansowane sterowanie przebiegiem wykonywanej aplikacji Skorowidz