Projektowanie systemów wbudowanych na przykładzie rodziny SAM7S z rdzeniem ARM7TDMI - Jacek Augustyn.pdf
(
35661 KB
)
Pobierz
345489179 UNPDF
Jacek Augustyn
systemów wbudowanych
na przykładzie rodziny SAM7S
z rdzeniem ARM7TDMI
Wydawnictwo IGSMiE PAN • Kraków • 2007
Projektowanie
Spis treści
Wstęp
9
1. Informacje ogólne o procesorach rodziny AT91SAM7S
1
1
1.1. Typy procesorów SAM7S
1
1
1.2. Architektura procesorów SAM7S
1
1
1.3. Źródła zegara taktuj ącego
1
3
1.4. Funkcje wyprowadzeń zewnętrznych
1
4
1.5. Sygnały żądania przerwania
1
4
1.6. Mapa pamięci
1
5
1.7. Typowe struktury rejestrów urządzeń peryferyjnych
16
1.8. Ładowanie programu
1
7
2. Rdzeń ARM7TDMI
1
9
2.1. Architektura rdzenia
1
9
2.2. Tryby ARM i Thumb
2
1
2.3. Tryby operacyjne
2
2
2.4. Dostępne rejestry w zależności od trybu pracy
2
3
2.4.1. Rejestry stanu
2
3
2.4.2. Rejestry w trybie ARM
2
4
2.4.3. Rejestry w trybie Thumb
2
6
2.5. Omówienie listy instrukcji w trybie ARM
2
7
2.5.1. Wykonywanie warunkowe instrukcji
2
9
2.5.2. Rozkazy arytmetyczne, logiczne, MOV/MVN
3
0
2.5.3. Przesuwnik bitowy
3
1
2.5.4. Modyfikator uaktualniania rejestru CPSR
3
3
2.5.5. Rozkazy mnożenia
3
4
2.5.6. Rozkazy rozgałęzień
3
5
2.5.7. Rozkazy przesłań z lub do pamięci
3
7
2.5.8. Pseudoinstrukcja LDR Rd,=
4
1
2.5.9. Rozkazy przesłań wielu rejestrów
4
2
2.5.10.Rozkaz SWAP/SWAPB
4
5
2.5.11. Rozkazy MSR/MRS
4
5
2.5.12.Rozkaz SWI
4
6
2.5.13.Rozkazy opcjonalnych koprocesorów
47
2.6. Informacje o liście instrukcji w trybie Thumb
4
7
3. Plik startowy
4
9
3.1. Struktura pliku startowego
4
9
3.2. Mapa pamięci aplikacji
.... 50
3.3. Definicje stałych symbolicznych
5
1
3.4. Iriicjalizacja wektorów przerwań i wskaźników stosów
5
2
3.5. Przekazanie sterowania do dalszej części programu
5
5
3.6. Inicjalizacje podstawowych urządzeń peryferyjnych
56
3.6.1. Maskowanie przerwań w kontrolerze AIC
5
7
3.6.2. Konfiguracja wyprowadzenia NRST
5
7
3.6.3. Kontroler pamięci MC
5
7
4
Projektowanie systemów wbudowanych na przykładzie rodziny SAM7S z rdzeniem ARM7TDMI
3.6.4. Deaktywacja układu nadzorującego WDT
5
8
3.6.5. Konfiguracja i wybór zegara
5
8
3.6.6. Komenda REMAP
5
9
3.7. Szkielet aplikacji
6
1
3.8. Ładowanie programu
6
1
3.8.1. Wariant SAMBA_FLASH
6
1
3.8.2. Wariant JTAG_RAM
6
2
4. Wybrane techniki organizacji plików nagłówkowych w języku C
6
3
4.1. Pliki nagłówkowe
6
3
4.1.1. Zastosowania i zawartość plików nagłówkowych
6
3
4.1.2. Struktura pliku nagłówkowego
6
4
4.1.3. Organizacja hierarchii plików nagłówkowych
6
5
4.2. Nazewnictwo rejestrów i bitów urządzeń peryferyjnych oraz używana notacja
6
5
4.2.1. Rejestry urządzeń peryferyjnych
6
5
4.2.2. Bity rejestrów urządzeń peryferyjnych
6
7
4.3. Makra
6
9
4.4. Funkcje inline
6
9
5. Podstawowe urządzenia peryferyjne
7
1
5.1. Kontroler resetu RSTC
7
1
5.1.1. Interfejs użytkownika
7
2
5.1.2. Przykład funkcji konfigurującej kontroler RSTC
7
3
5.2. Kontroler pamięci MC
7
4
5.2.1. Przykład funkcji konfigurującej kontroler MC
7
5
5.2.2. Przykład komendy REMAP
7
5
5.3. Blok zegarów taktujących oraz kontroler PMC
7
6
5.3.1. Zegar SLOWCLK
7
7
5.3.2. Główny oscylator MAINCLK
7
7
5.3.3. Blok PLL
7
7
5.3.4. Rozprowadzanie sygałów zegarów taktujących, blok PMC
7
8
5.3.5. Interfejs użytkownika
7
9
5.3.6. Przykład funkcji konfigurującej zegar taktujący
8
3
5.3.7. Przykład funkcji załączającej i wyłączającej zegar taktujący dla urządzeń peryferyjnych 83
5.4. Obwód nadzorujący WDT
8
4
5.4.1. Interfejs użytkownika
8
5
5.4.2. Przykład funkcji konfigurującej obwód WDT
8
7
5.5. Inicjalizacja podstawowych urządzeń peryferyjnych w języku C
8
7
5.6. Szkielet aplikacji
8
8
6. Organizacja komponentów programowych
9
1
6.1. Dekompozycja systemu
9
1
6.2. Sterowniki urządzeń peryferyjnych
9
1
6.3. Podział sterowników
9
4
6.3.1. Sterowniki linii wejściowych i wyjściowych GPIO ogólnego przeznaczenia
9
4
6.3.2. Sterowniki timerów i timerów PWM
9
5
6.3.3. Sterowniki urządzeń komunikacyjnych
9
5
6.4. Sterowniki protokołów
9
7
6.5. Komponenty programowe
9
7
6.6. Zestawienie sterowników
9
8
7. Kontroler wyprowadzeń PIO
1
01
7.1. Funkcje wyprowadzeń zewnętrznych
1
01
7.2. Wybrane parametry elektryczne wyprowadzeń zewnętrznych
1
02
7.3. Struktura bloku PIO
1
02
7.3.1. Wybór trybu GPIO
104
7.3.2. Wybór urządzenia peryferyj nego A lub B
1
04
7.3.3. Konfiguracja wejścia lub wyjścia w trybie GPIO
1
04
Spis treści
5
7.3.4. Zapis i odczyt stanu wyprowadzenia
1
05
7.3.5. Konfiguracja wyjścia typu multi-drive
1
05
7.3.6. Rezystor podciągający
1
05
7.3.7. Filtr przeciwzakłóceniowy
1
05
7.3.8. Żądanie przerwania
.....
106
7.4. Interfejs użytkownika
1
06
7.5. Przykład sterowników kontrolera PIO
1
07
7.5.1. Funkcje konfigurujące i obsługujące tryb GPlO-wejście
1
08
7.5.2. Funkcje konfigurujące i obsługujące tryb GPlO-wyjście
1
08
7.5.3. Funkcje konfigurujące wyprowadzenia do trybu urządzenia peryferyjnego
1
09
7.5.4. Zaawansowana konfiguracja wyprowadzeń
1
10
7.5.5. Funkcje konfigurujące żądania przerwania
1
11
7.6. Przykład sterownika diod LED
1
11
7.7. Przykład funkcji opóźniającej
1
12
7.8. Przykład sterownika obsługującego mikrowyłączniki
1
13
7.9. Przykład zastosowania sterowników LED i SW
1
14
7.10. Przykład sterownika klawiatury w trybie odpytywania
1
15
7.10.1.Definicje stałych symbolicznych
1
16
7.10.2.Funkcje składowe
1
16
7.10.3. Przykład aplikacji wykorzystującej sterownik KB
1
18
7.11. Przykład sterownika dla wyświetlacza HD44780
1
19
7.11.1. Zapis wartości do wyświetlacza
1
19
7.11.2. Definicje stałych symbolicznych dla komend wyświetlacza
1
21
7.11.3.Funkcje składowe sterownika LCD
1
22
7.11.4. Przykład użycia sterownika LCD
1
24
8. Sterownik hierarchicznego menu
125
8.1. Założenia
1
25
8.2. Organizacja plików
1
27
8.3. Organizacja danych
1
28
8.3.1. Definicje struktur danych
1
29
8.3.2. Umieszczenie struktur danych w pamięci FLASH
1
31
8.4. Treść funkcji stowarzyszonych z pozycjami menu
1
31
8.5. Przykład sterownika hierarchicznego menu
1
32
8.6. Przykład użycia sterownika MNU
1
36
9. System przerwań
1
37
9.1. Pojęcia podstawowe
1
37
9.2. Typowe zastosowania systemu przerwań
1
37
9.3. Struktura systemu przerwań w procesorach SAM7S
1
39
9.4. Obsługa żądań przerwania przez rdzeń ARM7TDMI
1
39
9.4.1. Szczegóły przyjęcia przerwania IRQ
1
40
9.4.2. Szczegóły przyjęcia przerwania FIQ
1
41
9.5. Sygnały żądań przerwania od urządzeń peryferyjnych
141
9.5.1. Numerowanie urządzeń peryferyjnych
1
41
9.5.2. Grupa żądań przerwania pochodząca od bloku systemowego
1
42
9.5.3. Sygnały żądań IRQ0, IRQ1 oraz FIQ
1
42
9.6. Struktura wewnętrzna kontrolera przerwań AIC
1
43
9.6.1. Obwód konfiguracji żądania przerwania
1
43
9.6.2. Obwód wektoryzacji
1
44
9.6.3. Fałszywe przerwanie
1
46
9.7. Interfejs użytkownika
1
46
9.8. Sterownik kontrolera przerwań AIC
1
49
9.8.1. Funkcje składowe
1
49
9.8.2. Szkielet procedury obsługi przerwania IRQ bez zagnieżdżeń
1
51
Plik z chomika:
xp7
Inne pliki z tego folderu:
Programowanie mikrokontrolerów z serii 8x51 w języku C - Majewski, Kardach(1).pdf
(13453 KB)
Przystawka do programowania microsterowników AVR - (RE 5 - 2005).pdf
(60 KB)
Programowanie mikrokontrolera 8051 kurs EdW.pdf
(6116 KB)
Mikrokontrolery z rdzeniem ARM.pdf
(12159 KB)
Podstawy programowania mikrokontrolera 8051 - Piotr Gałka, Paweł Gałka(1).pdf
(17641 KB)
Inne foldery tego chomika:
C%MOS
Mikrokontrolery ARM
Mikrokontrolery AVR
Mikrokontrolery dla początkujących - Piotr Górecki
Mikrokontrolery to takie proste - EDW
Zgłoś jeśli
naruszono regulamin