Programowanie mikrokontrolerów LPC2000 w języku C.
Opis
Programowanie mikrokontrolerów LPC2000 w języku C. Pierwsze krokiBTC -Korporacja Paweł ZbysińskiEAN 9788360233368 ISBN 9788360233368Autor Jacek MajewskiOprawa twardaRok wydania 2010Format B-5Stron 240format: B5
stron: 240
oprawa: twarda
rok wydania: 2010
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 51. 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 152. Sprzętowa platforma ewaluacyjna 21
2.1. Eksperymentalny mikrokomputer dipARM214x 213. Obsługa programu Flash Magic 274. Środowisko uruchomieniowe Keil μVision3 295. 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 586. Interfejs komunikacyjny UART 61
6.1. Interfejs UART w mikrokontrolerach LPC214x 61
6.2. Przykładowy program obsługi interfejsu UART 667. 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 808. 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 879. 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 9510. 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ń 10111. Przetwornik cyfrowo-analogowy DAC 103
11.1. Obsługa przetwornika DAC 10312. 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 11513. 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 12614. Zegar i kalendarz RTC 13515. Układ dozorujący watchdog 14116. Interfejs szeregowy SPI 14317. Interfejs I2C 153
17.1. Komunikacja po magistrali I2C 153
17.2. Interfejsy I2C w mikrokontrolerach LPC214x 156
17.3. Obsługa transmisji I2C bez korzystania z przerwań 158
17.4. Obsługa transmisji I2C z przerwaniami 16318. Obsługa pamięci Flash 169
18.1. Programowanie ISP pamięci Flash 169
18.2. Programowanie IAP pamięci Flash 17219. 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 18420. 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 223Dodatek A. Opis budowy interfejsu USBRS232 na przykładzie modułu ZL1USB 233
Dodatek B. Konwersja przykładów w CARM na RealView 234
Dodatek C. Zestaw ZL9ARM + ZL10ARM 237
