1. Wstęp Różnice pomiędzy mikrokontrolerami ST7 a ST7LITE Rdzeń mikrokontrolerów ST7FLITE... 15

Podobne dokumenty
Spis treœci. Co to jest mikrokontroler? Kody i liczby stosowane w systemach komputerowych. Podstawowe elementy logiczne

2. Architektura mikrokontrolerów PIC16F8x... 13

Wstęp Architektura... 13

1. Wprowadzenie Programowanie mikrokontrolerów Sprzęt i oprogramowanie... 33

Szkolenia specjalistyczne

Szkoła programisty PLC : sterowniki przemysłowe / Gilewski Tomasz. Gliwice, cop Spis treści

MIKROKONTROLERY AVR JĘZYK C WYDAWNICTWO ATNEL PODSTAWY PROGRAMOWANIA. Miros aw Kardaś. Szczecin Mojej Żonie Kasi

1.2. Architektura rdzenia ARM Cortex-M3...16

Mikrokontroler ATmega32. Język symboliczny

MIKROKONTROLERY I MIKROPROCESORY

Architektura komputerów

Wykład 4. Przegląd mikrokontrolerów 16-bit: - PIC24 - dspic - MSP430

Zagadnienia zaliczeniowe z przedmiotu Układy i systemy mikroprocesorowe elektronika i telekomunikacja, stacjonarne zawodowe

Charakterystyka mikrokontrolerów. Przygotowali: Łukasz Glapiński, Mateusz Kocur, Adam Kokot,

Kurs Zaawansowany S7. Spis treści. Dzień 1

Programator ICP mikrokontrolerów rodziny ST7. Full MFPST7. Lite. Instrukcja użytkownika 03/09

Kurs STARTER S5. Spis treści. Dzień 1. III Budowa wewnętrzna, działanie i obsługa sterownika (wersja 0504)

Kurs Elektroniki. Część 5 - Mikrokontrolery. 1/26

Wstęp Podstawy programowania QBASIC Budowa mikroprocesora Zestaw uruchomieniowy Porty wejścia/wyjścia...

LABORATORIUM - ELEKTRONIKA Układy mikroprocesorowe cz.2

System czasu rzeczywistego

1. Podstawowe wiadomości Możliwości sprzętowe Połączenia elektryczne Elementy funkcjonalne programów...

Architektura komputerów. Asembler procesorów rodziny x86

3. Sygnały zegarowe i ich konfiguracja, mechanizmy bezpieczeństwa... 47

2. Code Composer Studio v4 zintegrowane środowisko projektowe... 41

ZL3ST7. Zestaw uruchomieniowy dla mikrokontrolerów

Układy czasowo-licznikowe w systemach mikroprocesorowych

ARCHITEKTURA PROCESORA,

ZL15AVR. Zestaw uruchomieniowy dla mikrokontrolerów ATmega32

Kurs Podstawowy S7. Spis treści. Dzień 1

ZL16AVR. Zestaw uruchomieniowy dla mikrokontrolerów ATmega8/48/88/168

LITEcomp. Zestaw uruchomieniowy z mikrokontrolerem ST7FLITE19

STM32Butterfly2. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

2. Budowa układów procesorowych rodziny TMS320C

Struktura i działanie jednostki centralnej

ZL5PIC. Zestaw uruchomieniowy dla mikrokontrolerów PIC16F887

Adresowanie obiektów. Adresowanie bitów. Adresowanie bajtów i słów. Adresowanie bajtów i słów. Adresowanie timerów i liczników. Adresowanie timerów

Liczniki, rejestry lab. 08 Mikrokontrolery WSTĘP

o Instalacja środowiska programistycznego (18) o Blink (18) o Zasilanie (21) o Złącza zasilania (22) o Wejścia analogowe (22) o Złącza cyfrowe (22)

1.2 Schemat blokowy oraz opis sygnałów wejściowych i wyjściowych

AVREVB1. Zestaw uruchomieniowy dla mikrokontrolerów AVR. Zestawy uruchomieniowe

O autorze... 9 Wprowadzenie... 11

Mikrokontroler AVR ATmega32 - wykład 9

Wykład Mikroprocesory i kontrolery

Spis treści. Wykaz ważniejszych skrótów Wprowadzenie Rdzeń Cortex-M Rodzina mikrokontrolerów XMC

Kurs SIMATIC S7-300/400 i TIA Portal - Podstawowy. Spis treści. Dzień 1. I System SIEMENS SIMATIC S7 - wprowadzenie (wersja 1503)

Spis treúci. Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 1. Przedmowa Wstęp... 11

MOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW

Spis treści. Dzień 1. I Konfiguracja sterownika (wersja 1312) II Tryby pracy CPU (wersja 1312) III Bloki funkcyjne (wersja 1312)

Mikrokontroler ATmega32. System przerwań Porty wejścia-wyjścia Układy czasowo-licznikowe

Układ wykonawczy, instrukcje i adresowanie. Dariusz Chaberski

Pośredniczy we współpracy pomiędzy procesorem a urządzeniem we/wy. W szczególności do jego zadań należy:

Poradnik programowania procesorów AVR na przykładzie ATMEGA8

Język FBD w systemie Concept

Arduino dla początkujących. Kolejny krok Autor: Simon Monk. Spis treści

dokument DOK wersja 1.0

ZL25ARM. Płyta bazowa dla modułów diparm z mikrokontrolerami STR912. [rdzeń ARM966E-S]

Jednym z najlepszych sposobów poznawania nowego typu mikrokontrolera

Zastosowanie procesorów AVR firmy ATMEL w cyfrowych pomiarach częstotliwości

Podstawowe urządzenia peryferyjne mikrokontrolera ATmega8 Spis treści

Mikroprocesory i Mikrosterowniki

System mikroprocesorowy i peryferia. Dariusz Chaberski

ZL4PIC. Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC

ISBN Copyright by Wydawnictwo BTC Legionowo 2008

PLC2: Programowanie sterowników logicznych SIEMENS SIMATIC S7-300/400 - kurs zaawansowany

Architektura typu Single-Cycle

1.1. Wymogi bezpieczeństwa Pomoc techniczna TIA Portal V13 instalacja i konfiguracja pakietu...18

Mikroprocesory i Mikrosterowniki

Systemy Wbudowane. Arduino, AVR. Arduino. Arduino. Arduino. Oprogramowanie. Mikrokontroler. Mikrokontroler Platforma Arduino. Arduino IDE: Arduino C:

Architektura komputera. Dane i rozkazy przechowywane są w tej samej pamięci umożliwiającej zapis i odczyt

Księgarnia PWN: Włodzimierz Stanisławski, Damian Raczyński - Programowanie systemowe mikroprocesorów rodziny x86

PLC1: Programowanie sterowników logicznych SIEMENS SIMATIC S7-300/400 - kurs podstawowy

E-TRONIX Sterownik Uniwersalny SU 1.2

Podstawy programowania sterowników SIMATIC S w języku LAD / Tomasz Gilewski. Legionowo, cop Spis treści

Technika mikroprocesorowa. W. Daca, Politechnika Szczecińska, Wydział Elektryczny, 2007/08

Technika cyfrowa i mikroprocesorowa. Zaliczenie na ocenę. Zaliczenie na ocenę

ZL29ARM. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

Ćwiczenie 5 Zegar czasu rzeczywistego na mikrokontrolerze AT90S8515

Systemy wbudowane. Wprowadzenie. Struktura. Mikrokontrolery AVR. Wprowadzenie do programowania w C

2. PORTY WEJŚCIA/WYJŚCIA (I/O)

Przedmiot : Programowanie w języku wewnętrznym. Ćwiczenie nr 4

ZL2ARM easyarm zestaw uruchomieniowy dla mikrokontrolerów LPC2104/5/6 (rdzeń ARM7TDMI-S)

Programowanie w językach asemblera i C

Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów AVR

ZL27ARM. Zestaw uruchomieniowy dla mikrokontrolerów STM32F103

start Program mikroprocesorowego miernika mocy generowanej $crystal = deklaracja

Technika Mikroprocesorowa

Sprawozdanie z projektu MARM. Część druga Specyfikacja końcowa. Prowadzący: dr. Mariusz Suchenek. Autor: Dawid Kołcz. Data: r.

ZL15AVR. Zestaw uruchomieniowy dla mikrokontrolerów ATmega32

2.1 Porównanie procesorów

Systemy wbudowane. Uniwersytet Łódzki Wydział Fizyki i Informatyki Stosowanej. Witold Kozłowski

Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

ZL9ARM płytka bazowa dla modułów diparm z mikrokontrolerami LPC213x/214x

Kod produktu: MP01611-ZK

Organizacja typowego mikroprocesora

PRYWATNA WYŻSZA SZKOŁA BUSINESSU, ADMINISTRACJI I TECHNIK KOMPUTEROWYCH S Y L A B U S

Architektura Systemów Komputerowych. Jednostka ALU Przestrzeń adresowa Tryby adresowania

ZL28ARM. Zestaw uruchomieniowy dla mikrokontrolerów AT91SAM7XC

Programowanie Mikrokontrolerów

Programowanie Układów Logicznych kod kursu: ETD6203. Szczegóły realizacji projektu indywidualnego W dr inż.

Transkrypt:

3 1. Wstęp... 9 2. Różnice pomiędzy mikrokontrolerami ST7 a ST7LITE... 11 3. Rdzeń mikrokontrolerów ST7FLITE... 15 3.1. Jednostka centralna...16 3.2. Organizacja i mapa pamięci...19 3.2.1. Pamięć RAM...20 3.2.2. Pamięć EEPROM...20 3.2.3. Pamięć Flash...22 3.3. Organizacja stosu mikrokontrolera...22 3.4. Tryby adresowania pamięci...23 3.4.1. Adresowanie proste...24 3.4.2. Adresowanie natychmiastowe...25 3.4.3. Adresowanie bezpośrednie z adresem 8- lub 16-bitowym...26 3.4.4. Adresowanie indeksowe bez przesunięcia...27 3.4.5. Adresowanie indeksowe z przesunięciem 8- lub 16-bitowym...28 3.4.6. Adresowanie pośrednie ze wskaźnikiem 8- lub 16-bitowym...30 3.4.7. Adresowanie pośrednie ze wskaźnikiem 8- lub 16-bitowym i rejestrem indeksowym X lub Y...31 3.4.8. Adresowanie bezpośrednie względne z przesunięciem 8-bitowym...33 3.4.9. Adresowanie względne ze wskaźnikiem 8-bitowym...34 3.4.10. Adresowanie bitów...35 3.5. Rejestry i ich funkcje...36 3.5.1. Akumulator (A)...36 3.5.2. Rejestry indeksowe X i Y...36 3.5.3. Licznik rozkazów PC...36 3.5.4. Rejestr kodów warunkowych CCR, flagi...37 3.5.5. Wskaźnik stosu SP...38 3.6. Obsługa przerwań...39 3.6.1. Priorytety przerwań...40 3.6.2. Źródła sygnałów przerwań...42 3.6.3. Wektory przerwań...42 4. Porty wejścia/wyjścia...45 4.1. Budowa, działanie i tryby pracy...47 4.2. Zasady konfiguracji portów wejścia/wyjścia...47 4.3. Porty I/O jako wejścia przerwań zewnętrznych...52 5. Tryby oszczędzania energii...53 5.1. Tryb SLOW...54 5.2. Tryb WAIT...55

4 5.3. Tryb HALT...55 5.4. Tryb ACTIVE-HALT...56 5.5. Automatyczne wyjście z trybu HALT (Auto Wake Up)...57 6. Rejestr kontroli integralności systemu... 59 7. Układy peryferyjne...61 7.1. Generator sygnału zegarowego...62 7.1.1. Praca z generatorem zewnętrznym...63 7.1.2. Współpraca z rezonatorem kwarcowym...64 7.1.3. Kalibracja generatora RC...64 7.1.4. Wewnętrzne generatory PLL synchronizowane przebiegiem zegarowym... 65 7.2. Generator sygnału zerującego...65 7.3. Sprzętowa kontrola poprawności pracy programu: timer-watchdog (WDG)...67 7.4. 12-bitowy Timer AT2 i tryby jego pracy...68 7.4.1. Wybór źródła sygnału zegarowego dla Timera AT2...69 7.4.2. Generowanie sygnałów PWM...70 7.4.3. Funkcja przechwytywania (Input Capture) Timera AT2...73 7.5. Timer Lite 2 i tryby jego pracy...73 7.6. 10-bitowy przetwornik analogowo-cyfrowy...75 7.6.1. Pomiary napięcia z wykorzystaniem przetwornika A/C...76 7.7. Interfejs SPI...77 7.8. Przetwornik A/C mikrokontrolerów ST7FLITE0...78 7.9. Analogowy komparator napięcia...80 7.10. Podwójny 12-bitowy Timer 3 (AT3)...83 7.11. Szeregowy interfejs LINSCI...86 8. Programowanie mikrokontrolerów ST7 z wykorzystaniem asemblera... 91 8.1. Tryby adresowania i sposoby ich użycia...93 8.2. Lista poleceń asemblera...93 8.2.1. Rozkazy ładowania i przesyłania...97 8.2.2. Operacje na stosie...100 8.2.3. Inkrementacja i dekrementacja...102 8.2.4. Porównania i testy wartości...104 8.2.5. Operacje logiczne...107 8.2.6. Testowanie bitów stanu oraz skoki... 112 8.2.7. Operacje arytmetyczne... 113 8.2.8. Przesunięcia i rotacje... 117 8.2.9. Skoki i wywołania podprogramów...123 8.2.10. Skoki warunkowe...128

5 8.2.11. Obsługa przerwań...129 8.2.12. Modyfikacja stanu flag warunkowych...131 8.3. Lista dyrektyw kompilatora...132 8.3.1. BELL...132 8.3.2. BYTE...132 8.3.3. BYTES...133 8.3.4. CEQU...133 8.3.5. CTRL...133 8.3.6. DATE...133 8.3.7. DC.B...134 8.3.8. DC.W...134 8.3.9. DC.L...135 8.3.10. #DEFINE...136 8.3.11. DS.B...137 8.3.12. DS.W...137 8.3.13. DS.L...137 8.3.14. END...138 8.3.15. EQU...138 8.3.16. EXTERN...138 8.3.17. #ELSE...139 8.3.18. #ENDIF...139 8.3.19. FCS...139 8.3.20. FORM...139 8.3.21. GROUP...140 8.3.22. #IF...140 8.3.23. #IF1...141 8.3.24. #IF2...141 8.3.25. #IFB...141 8.3.26. #IFIDN...142 8.3.27. #IFDEF...142 8.3.28. #IFLAB...142 8.3.29. #INCLUDE...143 8.3.30. INTEL...143 8.3.31. INTERRUPT...143 8.3.32. LALL...144 8.3.33. LIST...144 8.3.34. #LOAD...144 8.3.35. LOCAL...144 8.3.36. LONG...145 8.3.37. LONGS...145

6 8.3.38. MACRO...145 8.3.39. MEND...146 8.3.40. MOTOROLA...146 8.3.41. NEAR...146 8.3.42. NOCHANGE...147 8.3.43. NOLIST...147 8.3.44. %OUT...147 8.3.45. PAGE...147 8.3.46. PUBLIC...148 8.3.47. REPEAT...148 8.3.48. SALL...148 8.3.49. SEGMENT...149 8.3.50. SETDP...150 8.3.51. SKIP...150 8.3.52. STRING...151 8.3.53. SUBTTL...151 8.3.54. TAB...151 8.3.55. TEXAS...152 8.3.56. TITLE...152 8.3.57. UNTIL...152 8.3.58. WORD...153 8.3.59. WORDS...153 8.3.60. XALL...153 8.3.61. ZILOG...154 9. Narzędzia programowe i sprzętowe...155 9.1. ST7 Visual Develop...156 9.1.1. Informacje zawarte w menu pomocy...156 9.1.2. Tworzenie folderu roboczego (workspace)...157 9.1.3. Dodawanie do projektu plików z kodami źródłowymi...160 9.1.4. Kompilowanie programu...162 9.1.5. Uruchamianie programu, menu Debug...163 9.2. ST7 Visual Programmer...167 9.2.1. Tworzenie nowego zbioru projektu...168 9.2.2. Zapis danych do pamięci mikrokontrolera...170 9.2.3. Odczyt i weryfikacja zawartości programowanej pamięci...170 9.2.4. Uwagi na temat użytkowania ST7VP...170 9.3. Kompilatory języków C, C++ i asembler...171 9.3.1. Cosmic C...171 9.3.1.1. Obsługa pakietu...171

7 9.3.1.2. Kompilowanie programu...173 9.3.1.3. Uruchamianie programu aplikacji dla mikrokontrolera...173 9.4. Programator ST7STICK i programowanie mikrokontrolerów ST7LITE w aplikacji...174 9.5. Opis zestawu ZL1ST7...178 9.6. Inne narzędzia sprzętowe...178 10. Przykłady...181 10.1. Podstawowe działania arytmetyczne...182 10.1.1. Dzielenie całkowite dwóch liczb 1-bajtowych bez znaku...182 10.1.2. Mnożenie całkowitych liczb 1-bajtowych bez znaku...184 10.1.3. Mnożenie całkowitych liczb 2-bajtowych bez znaku...185 10.1.4. Dzielenie całkowite liczby 4-bajtowej przez 2-bajtową...187 10.1.5. Dodawanie dwóch liczb 2-bajtowych bez znaku...189 10.1.6. Odejmowanie dwóch liczb 2-bajtowych bez znaku...190 10.1.7. Sprawdzenie, czy liczba 2-bajtowa bez znaku mieści się w podanym zakresie...191 10.1.8. Sprawdzenie odchylenia od środkowej liczby 2-bajtowej...192 10.1.9. Konwersja liczb binarnych na dziesiętne...195 10.2. Przykładowy program do obsługi modułu wyświetlacza LCD o organizacji 2 linie 20 znaków w konfiguracji z interfejsem 4-bitowym... 196 10.3. Pomiar napięcia na wejściu AIN4. Wykorzystanie procedury obsługi wyświetlacza i procedur matematycznych...204 10.3.1. Opis programu głównego...205 10.3.2. Pomiar napięcia (volts)...205 10.3.3. Konwersja liczby binarnej na dziesiętną (bin_2_dec)...206 10.3.4. Konwersja na postać ASCII i formatowanie wyniku...208 10.4. Dyskryminator okienkowy, czyli mikroprocesorowy czujnik oświetlenia...217 10.5. Sterowanie rejestrami przesuwnymi z wykorzystaniem interfejsu SPI na przykładzie 6-cyfrowego wyświetlacza LED...224 10.5.1. Wysyłanie danych przez SPI...226 10.5.1.2. Obsługa przerwania timera B...228 10.5.1.3. Wyświetlanie wartości program główny...229 10.5.1.4. Nastawy mikrokontrolera: makra...229 10.6. Wyświetlanie wyniku pomiaru napięcia z wykorzystaniem wyświetlacza LED...233 10.7. Wykorzystanie ekspandera portów MCP23S08...239 10.7.1. Opis funkcjonalny układu MCP23S08...240 10.7.2. Odczyt i zapis danych...241 10.7.3. Przykład programu wyświetlającego liczbę binarną na diodach LED... 242

8 10.7.4. Diodowa skala LED. Zapis do MCP23S08 bez autoinkrementacji adresu...247 10.8. Wykorzystanie generatora PWM do regulacji prędkości obrotowej silnika prądu stałego małej mocy...255 10.8.1. Podstawowe informacje na temat generatora PWM...255 10.8.2. Opis programu sterującego...256 10.8.3. Inne przykłady wykorzystania generatora PWM...261 10.9. Programowy interfejs UART...264 10.9.1. Komunikacja przez UART...264 10.9.2. Komunikacja mikrokontrolera z komputerem PC...265 10.9.3. Programowy UART dla ST7FLITE...265 10.10. Obsługa konwertera SPI<->RS232 (układ MAX3100)...274 Dodatki...281 Dodatek A. Dokumentacja uproszczonego programatora ICP dla mikrokontrolerów ST7...282 Dodatek B. Tabela kodów ASCII...285 Dodatek C. Tabela kodów znakowych sterownika LCD HD44870...287 Dodatek D. Wybrane parametry elektryczne i czasowe mikrokontrolerów z rodziny ST7FLITE...289 Dodatek E. Wyprowadzenia mikrokontrolerów ST7LITE...292 Dodatek F. Bajty opcji (Option Bytes)...295