Programowanie mikrokontrolerów LPC2000 w języku C - pierwsze kroki
- Dodaj recenzję:
- Kod: 5841
- Producent: BTC
- Autor: Jacek Majewski
- Rok wydania: 2009
- ISBN: 978-83-60233-36-8
- Liczba stron: 240
- Oprawa: twarda
- Format: B5
-
Dostępność:
Jest
-
- Cena netto: 103,81 zł 109,00 zł
- szt.
Opis
Książka jest praktycznym przewodnikiem po rodzinie mikrokontrolerów LPC2000 (rdzeń ARM7TDMI) oraz sposobach ich programowania w języku C. Omówiono w niej zarówno budowę i działanie bloków peryferyjnych, jak i sposoby obsługi elementów oraz urządzeń peryferyjnych dołączanych do mikrokontrolera, np.: wyświetlaczy LCD, klawiatury matrycowej, interfejsów komunikacyjnych, przetworników A/C i C/A, generatorów PWM itp. Przedstawiono także dziesięć kompletnych projektów w języku C pokazujących wzajemną współpracę bloków peryferyjnych mikrokontrolerów LPC2000 oraz ich współpracę z typowymi urządzeniami zewnętrznymi. W książce przedstawiono także zestaw narzędzi programowych i sprzętowych, niezbędnych do skompilowania i ewentualnego modyfikowania przykładowych opisanych programów.
Książka jest przeznaczona dla inżynierów, studentów kierunków technicznych wyższych uczelni, a także amatorów chcących poznać od strony praktycznej możliwości mikrokontrolerów LPC2000 firmy NXP (dawniej Philips Semiconductor).
Spis treści
Wstęp / 5
1. Mikrokontrolery z rodziny LPC2100 – wprowadzenie / 7
1.1. Budowa i działanie mikrokontrolerów z serii LPC214x / 7
1.2. Programowanie w języku asembler / 15
2. Sprzętowa platforma ewaluacyjna / 21
2.1. Eksperymentalny mikrokomputer dipARM214x / 21
3. Obsługa programu Flash Magic / 27
4. Środowisko uruchomieniowe Keil μVision3 / 29
5. Proste przykłady w języku C / 39
5.1. Obsługa linii I/O / 39
5.2. Sterowanie diody LED / 40
5.3. Generacja dźwięków / 46
5.4. Licznik zliczający w kodzie binarnym / 50
5.5. Licznik zliczający w kodzie 1 z n / 54
5.6. Licznik zliczający w kodzie Johnsona / 58
6. Interfejs komunikacjny UART / 61
6.1. Interfejs UART w mikrokontrolerach LPC214x / 61
6.2. Przykładowy program obsługi interfejsu UART / 66
7. System przerwań / 69
7.1. Kontroler VIC / 69
7.2. Przerwania zewnętrzne / 73
7.3. Szybkie przerwania FIQ / 74
7.4. Przerwania wektorowe IRQ / 76
7.5. Przerwania niewektorowe / 79
7.6. Przerwania programowe / 80
8. Programowalne liczniki Timer0 i Timer1 / 83
8.1. Budowa liczników Timer0 i Timer1 / 83
8.2. Generowanie sygnału prostokątnego / 84
8.2. Zliczanie impulsów zewnętrznych / 86
8.3. Pomiar szerokości impulsów / 87
9. Generacja impulsów PWM / 91
9.1. Wbudowany generator-modulator PWM / 91
9.2. Generacja sygnału PWM z regulowanym położeniem jednego zbocza / 93
9.3. Generacja sygnału PWM z regulowanym położeniem dwóch zboczy / 95
10. Przetwornik analogowo-cyfrowy ADC / 97
10.1. Budowa przetworników ADC / 97
10.2. Obsługa przetwornika ADC w trybie odpytywania / 100
10.3. Obsługa przetwornika ADC w trybie przerwań / 101
11. Przetwornik cyfrowo-analogowy DAC / 103
11.1. Obsługa przetwornika DAC / 103
12. Dobór częstotliwości taktowania / 105
12.1. Plik startowy Startup.s / 106
12.2. Działanie pętli PLL / 109
12.3. Dzielnik częstotliwości taktowania układów peryferyjnych / 112
12.4. Działanie układu MAM / 112
12.5. Szybki dostęp do układów wejścia-wyjścia GPIO / 114
12.6. Tryby obniżonego poboru prądu / 115
13. Obsługa alfanumerycznego wyświetlacza LCD / 121
13.1. Sterowanie alfanumerycznego wyświetlacza LCD / 125
13.2. Biblioteka modułów sterujących wyświetlacza LCD / 126
14. Zegar i kalendarz RTC / 135
15. Układ dozorujący watchdog / 141
16. Interfejs szeregowy SPI / 143
17. Interfejs I²C / 153
17.1. Komunikacja po magistrali I2C / 153
17.2. Interfejsy I²C w mikrokontrolerach LPC214x / 156
17.3. Obsługa transmisji I²C bez korzystania z przerwań / 158
17.4. Obsługa transmisji I²C z przerwaniami / 163
18. Obsługa pamięci Flash / 169
18.1. Programowanie ISP pamięci Flash / 169
18.2. Programowanie IAP pamięci Flash / 172
19. Obsługa klawiatur matrycowych / 177
19.1. Procedura _getkey dla klawiatury skaningowej / 179
19.2. Bufor danych w obsłudze klawiatury skaningowej / 182
19.3. Obsługa klawiatury telefonu komórkowego / 184
20. Programy przykładowe / 187
20.1. Odtwarzanie melodii z zapisu nutowego / 187
20.2. Programowe odmierzanie czasu / 189
20.3. Sterowanie multipleksowanego wyświetlacza LED / 192
20.4. Zegar i kalendarz z systemu Linux / 195
20.5. Programowy generator szumu / 199
20.6. Programowa weryfikacja CRC / 204
20.7. Bufory kołowe w transmisji szeregowej / 206
20.8. Transmisja danych w standardzie MODBUS / 212
20.9. Obsługa magistrali 1-Wire / 218
20.10. Odtwarzanie dźwięku z karty MMC / 223
Dodatek A. Opis budowy interfejsu USB<->RS232 na przykładzie modułu ZL1USB / 233
Dodatek B. Konwersja przykładów w CARM na RealView / 234
Dodatek C. Zestaw ZL9ARM + ZL10ARM / 237
Informacje o bezpieczeństwie produktu Informacje o producencie
Zadaj pytanie dotyczące produktu. Nasz zespół z przyjemnością udzieli szczegółowej odpowiedzi na zapytanie.