Programowanie mikrokontrolerów 8051 w języku C - pierwsze kroki.
Opis
Mikrokontrolery z rodziny MCS51, mimo upływu lat, nadal cieszą się dużą popularnością. Nowe odmiany procesorów z coraz bardziej rozbudowanymi modułami peryferyjnymi oraz potrzeba tworzenia aplikacji w krótkim czasie powodują, że coraz częściej do pisania oprogramowania dla mikrokontrolerów są wykorzystywane języki wysokiego poziomu. W tej dziedzinie niekwestionowanym liderem jest język C. Wszystkie przykłady zamieszczone w książce były pisane z wykorzystaniem kompilatora Keil C, który w ciągu ostatnich kilkunastu lat stał się solidnym (i co bardzo ważne: stabilnym) standardem. Większość przedstawionych w książce projektów można kompilować i symulować w wersji demonstracyjnej kompilatora Keil C (ograniczenie wielkości kodu wynikowego do 2 kB).
Po części objaśniającej wykorzystanie różnorodnych modułów peryferyjnych mikrokontrolera, zaprezentowanych jest kilkanaście praktycznych aplikacji (np. biblioteka funkcji do obsługi wyświetlacza LCD, kalkulator numeryczny, odtwarzanie melodii). Do wszystkich przykładów zamieszczono kompletne listingi oraz schematy. Jedną z największych zalet języka C jest względnie łatwa przenośność programów na różne platformy sprzętowe, tak więc zamieszczone w książce przykłady mogą stanowić punkt wyjściowy do wykonania podobnych aplikacji z wykorzystaniem innych mikrokontrolerów.
Książka jest przeznaczona dla wszystkich miłośników techniki mikroprocesorowej, którzy zamierzają wykorzystywać język C. Wiele informacji zawartych w książce może być przydatnych studentom wydziałów elektroniki, automatyki i informatyki wyższych uczelni technicznych, jak również inżynierom-konstruktorom systemów mikroprocesorowych.
Spis treściWstęp ..............................................................................................................................................11. Zasada działania mikrokontrolera...............................................................51.1. Budowa komputera ........................................................................................................... 61.2. Jak działa mikrokontroler typu '51 ................................................................................ 121.2.1. Wewnętrzna pamięć mikrokontrolera '51 ...................................................................... 161.2.2. Obszar rejestrów SFR ..................................................................................................... 171.2.3. Program w języku wewnętrznym ................................................................................... 212. Zestaw uruchomieniowy ZL2MCS51...................................................... 25Program Flip ......................................................................................................... 293.
Środowisko uruchomieniowe Keil 7 ......................................................... 354.5. Pierwsze programy w języku C .................................................................. 435.1. Sterowanie diodą LED.................................................................................................... 445.2. Generowanie dźwięku..................................................................................................... 495.3. Licznik w kodzie binarnym ............................................................................................ 545.4. Licznik pieścieniowy ...................................................................................................... 585.5. Licznik pierścieniowy – jeszcze raz ............................................................................... 616. Rdzeń procesora typu '51 .............................................................................. 676.1. Kontroler przerwań ......................................................................................................... 686.1.1. Jak działają przerwania ................................................................................................... 686.1.2. System przerwań procesora '51xD2............................................................................... 696.1.3. Przerwanie zewnętrzne od przycisku ............................................................................. 726.1.4. Obsługa dwóch przerwań z priorytetami ....................................................................... 746.2. Układy odmierzania czasu .............................................................................................. 766.2.1. Jak działają układy odmierzania czasu........................................................................... 766.2.2. Układy Timer0 i Timer1 ................................................................................................. 776.2.3. Program odmierzania czasu .......................
