Wstęp...9. 1. Architektura... 13



Podobne dokumenty
2. Architektura mikrokontrolerów PIC16F8x... 13

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

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

MIKROKONTROLERY I MIKROPROCESORY

ZL4PIC. Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC

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

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

ZL4PIC uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC (v.1.0) Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC

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

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

STM32Butterfly2. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

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

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

Uniwersalny zestaw uruchomieniowy ZL4PIC

SigmaDSP - zestaw uruchomieniowy dla procesora ADAU1701. SigmaDSP - zestaw uruchomieniowy dla procesora ADAU1701.

STM32 Butterfly. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

dokument DOK wersja 1.0

Szkolenia specjalistyczne

ZL4PIC. Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC

System mikroprocesorowy i peryferia. Dariusz Chaberski

SML3 październik

XXXII Olimpiada Wiedzy Elektrycznej i Elektronicznej. XXXII Olimpiada Wiedzy Elektrycznej i Elektronicznej

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

Zestaw uruchomieniowy z mikrokontrolerem LPC1114 i wbudowanym programatorem ISP

WPROWADZENIE Mikrosterownik mikrokontrolery

Opis funkcjonalny i architektura. Modu³ sterownika mikroprocesorowego KM535

Jednym z najlepszych sposobów poznawania nowego typu mikrokontrolera

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

Ćwiczenie 5 Zegar czasu rzeczywistego na mikrokontrolerze AT90S8515

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

Systemy wbudowane. Paweł Pełczyński

Technika Mikroprocesorowa

Wykład Mikroprocesory i kontrolery

Układy zegarowe w systemie mikroprocesorowym

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)

ZL29ARM. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

LITEcompLPC1114. Zestaw ewaluacyjny z mikrokontrolerem LPC1114 (Cortex-M0) Sponsorzy:

Generator przebiegów pomiarowych Ex-GPP2

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

Układ wykonawczy, instrukcje i adresowanie. Dariusz Chaberski

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

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

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

ZL10PLD. Moduł dippld z układem XC3S200

ZL5PIC. Zestaw uruchomieniowy dla mikrokontrolerów PIC16F887

Zaliczenie Termin zaliczenia: Sala IE 415 Termin poprawkowy: > (informacja na stronie:

Systemy uruchomieniowe

Laboratorium 1: Wprowadzenie do środowiska programowego. oraz podstawowe operacje na rejestrach i komórkach pamięci

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

Wyjścia analogowe w sterownikach, regulatorach

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

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

LABORATORIUM - ELEKTRONIKA Układy mikroprocesorowe cz.2

O autorze... 9 Wprowadzenie... 11

Wykład Mikrokontrolery i mikrosystemy Cele wykładu:

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

3.2. Zegar/kalendarz z pamięcią statyczną RAM 256 x 8

Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów AVR

Porty wejścia/wyjścia w układach mikroprocesorowych i w mikrokontrolerach

ZL9AVR. Płyta bazowa dla modułów ZL7AVR (ATmega128) i ZL1ETH (RTL8019)

IC200UDR002 ASTOR GE INTELLIGENT PLATFORMS - VERSAMAX NANO/MICRO

MCAR Robot mobilny z procesorem AVR Atmega32

Mikroprocesory i Mikrosterowniki

LITEcomp. Zestaw uruchomieniowy z mikrokontrolerem ST7FLITE19

Opis efektów kształcenia dla modułu zajęć

Programowanie sterowników przemysłowych / Jerzy Kasprzyk. wyd. 2 1 dodr. (PWN). Warszawa, Spis treści

Programowanie w językach asemblera i C

ARCHITEKTURA PROCESORA,

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

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

Język C. Wykład 9: Mikrokontrolery cz.2. Łukasz Gaweł Chemia C pokój 307

Wykład 2. Mikrokontrolery z rdzeniami ARM

Układy czasowo-licznikowe w systemach mikroprocesorowych

2.1 Porównanie procesorów

E-TRONIX Sterownik Uniwersalny SU 1.2

Wykład 2. Przegląd mikrokontrolerów 8-bit: -AVR -PIC

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

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

Architektura komputerów

Układy zegarowe w systemie mikroprocesorowym

Konfigurator Modbus. Instrukcja obsługi programu Konfigurator Modbus. wyprodukowano dla

Mikroprocesory i Mikrosterowniki

PRZETWORNIK ADC w mikrokontrolerach Atmega16-32

Programowanie niskopoziomowe. dr inż. Paweł Pełczyński

MIKROPROCESORY architektura i programowanie

RSD Uniwersalny rejestrator danych Zaprojektowany do pracy w przemyśle

Dokumentacja Licznika PLI-2

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

Porty wejścia/wyjścia w układach mikroprocesorowych i w mikrokontrolerach

Politechnika Wrocławska

Zastosowania mikrokontrolerów w przemyśle

ZL15AVR. Zestaw uruchomieniowy dla mikrokontrolerów ATmega32

Systemy wbudowane Mikrokontrolery

ADuCino 360. Zestaw uruchomieniowy dla mikrokontrolerów ADuCM360/361

Uniwersalny adapter dla układów MSP430

ZL6PLD zestaw uruchomieniowy dla układów FPGA z rodziny Spartan 3 firmy Xilinx

Laboratorium 2 Sterowanie urządzeniami z wykorzystaniem systemu plików Intel Galileo

USB interface in 8-bit microcontrollers PIC18F family manufactured by Microchip.

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

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

Transkrypt:

Spis treści 3 Wstęp...9 1. Architektura... 13 1.1. Schemat blokowy...14 1.2. Pamięć programu...15 1.3. Cykl maszynowy...16 1.4. Licznik rozkazów...17 1.5. Stos...18 1.6. Modyfikowanie i odtwarzanie zawartości licznika rozkazów...18 1.6.1. Skok bezwzględny...18 1.6.2. Wywołanie podprogramu...19 1.6.3. Powrót z podprogramu i z procedury obsługi przerwania...19 1.6.4. Skok wyliczany...20 1.7. Pamięć konfiguracyjna...20 1.7.1. Zawartość pamięci konfiguracyjnej...20 1.7.1.1. Numer identyfikacyjny ID...22 1.7.1.2. Kod typu (sygnatura) procesora...22 1.7.1.3. Rejestr konfiguracyjny w procesorach PIC12F675/629...22 1.7.2. Wnioski...24 1.8. Pamięć RAM, tryby adresowania...24 1.8.1. Adresowanie bezpośrednie...25 1.8.2. Adresowanie pośrednie...25 1.9. Rejestry specjalne procesora (SFR)...26 1.10. Rejestry ogólnego przeznaczenia (GPR)...29 1.10.1. Opis ważniejszych rejestrów procesora...29 1.10.1.1. Rejestr STATUS...29 1.10.1.2. Rejestr OPTION_REG...30 1.10.1.3. Rejestr INTCON...31 1.10.1.4. Rejestr PCON...32 1.11. Układ przerwań...33 1.11.1. Schemat logiczny układu przerwań...33 1.11.2. Przerwanie zewnętrzne...35 1.11.3. Przerwanie od zmiany sygnału na liniach I/O...36 1.11.4. Przerwanie od przepełnienia licznika TMR0...37 1.11.5. Przerwanie po zakończeniu zapisu do pamięci EEPROM...37 1.11.6. Przerwanie po zakończeniu konwersji A/C...38 1.11.7. Przerwanie po zmianie stanu komparatora...38 1.11.8. Struktura programu z wykorzystaniem przerwań...38 1.11.9. Przechowywanie zawartości rejestrów podczas obsługi przerwania...39

4 Spis treści 1.11.10. Identyfikacja źródła przerwania...40 1.12. Oscylator...41 1.12.1. Tryby pracy oscylatora...41 1.12.2. Standardowy generator kwarcowy tryby LP, XT, HS...42 1.12.3. Zalecane wartości pojemności C1 i C2...42 1.12.4. Rozruch generatora kwarcowego...43 1.12.5. Generator zewnętrzny tryb EC...43 1.12.6. Generator wewnętrzny tryby INTRC...44 1.12.7. Generator z zewnętrznymi elementami RC tryby RC...46 1.12.8. Ustawianie trybu pracy oscylatora...47 1.12.8.1. Rejestr konfiguracyjny...47 1.13. Układ zerowania...48 1.13.1. Zerowanie po włączeniu zasilania POR...50 1.13.2. Zerowanie z linii MCLR...51 1.13.3. Zerowanie po spadku napięcia zasilania BOR (BOD)...52 1.13.4. Bity związane z funkcją zerowania...53 1.13.5. Początkowe ustawienia rejestrów po wyzerowaniu...54 1.13.6. Zachowanie się oscylatora po wyzerowaniu...56 1.14. Stan uśpienia mikrokontrolera...56 1.14.1. Wyprowadzenie ze stanu uśpienia...56 1.15. Typowe układy pracy procesora...58 1.16. Zasilanie i pobór prądu...60 1.16.1. Blokowanie zasilania...61 1.16.2. Pobór prądu...61 2. Bloki funkcjonalne... 63 2.1. Porty wejścia/wyjścia...64 2.1.1. Rozmieszczenie i funkcje wyprowadzeń...64 2.1.1.1. Nazwy i funkcje linii portu GPIO...65 2.1.2. Budowa portu GPIO...66 2.1.3. Rezystory podciągające...69 2.1.4. Linie cyfrowe i analogowe...69 2.1.5. Wykrywanie zmian stanu linii...71 2.1.6. Konfigurowanie linii GPIO...71 2.1.6.1. Dołączanie rezystorów podciągających...72 2.1.7. Budowa portu C w procesorach PIC16F676/630...73 2.1.8. Konfigurowanie portu C w procesorach PIC16F676/630...74 2.1.9. Tabelaryczne zestawienie funkcji linii dla procesorów PIC16F676/630... 75 2.2. Liczniki...76 2.2.1. Licznik 0...77

Spis treści 5 2.2.1.1. Preskaler dla licznika 0...79 2.2.1.2. Konfigurowanie licznika 0...79 2.2.2. Licznik WDT...81 2.2.2.1. Konfigurowanie licznika WDT...81 2.2.2.2. Zmiana przypisania preskalera...82 2.2.3. Licznik 1...83 2.2.3.1. Praca licznika 1 w stanie uśpienia...85 2.2.3.2. Konfigurowanie licznika 1 i odmierzanie czasu...86 2.2.3.3. Zliczanie impulsów przez licznik 1...89 2.3. Nieulotna pamięć danych EEPROM...93 2.3.1. Obsługa pamięci EEPROM...94 2.3.1.1. Flaga przerwania związanego z pamięcią EEPROM...95 2.3.2. Odczyt z pamięci EEPROM...95 2.3.3. Zapis do pamięci EEPROM...96 2.3.4. Zabezpieczenie przed odczytem...97 2.3.5. Wytrzymałość na programowanie...97 2.4. Komparator analogowy...97 2.4.1. Konfigurowanie komparatora...100 2.5. Programowany układ napięcia odniesienia...103 2.6. Przetwornik A/C...106 2.6.1. Konfigurowanie przetwornika A/C...108 2.6.2. Przetwornik A/C w procesorze PIC16F676...109 2.6.3. Źródło napięcia odniesienia... 111 2.6.4. Justowanie wyniku... 111 2.6.5. Wybór czasu konwersji przetwornika T AD... 111 2.6.6. Konfigurowanie linii... 112 2.6.7. Opis działania przetwornika A/C... 112 2.6.7.1. Obliczanie minimalnego czasu akwizycji T ACQ... 114 2.6.7.2. Obwód wejściowy przetwornika A/C... 114 2.6.7.3. Całkowity czas konwersji... 115 2.6.7.4. Konwersja A/C w trybie obniżonego poboru mocy... 116 2.6.7.5. Uśrednianie wyników pomiarów... 118 3. Instrukcje...121 3.1. Format instrukcji...122 3.1.1. Instrukcje bajtowe...122 3.1.2. Instrukcje bitowe...122 3.1.3. Instrukcje z 8-bitową stałą...123 3.1.4. Instrukcje sterujące...123

6 Spis treści 3.2. Lista instrukcji...124 3.3. Charakterystyka instrukcji i przykłady ich użycia...124 3.3.1. Wyjątki i ograniczenia...131 3.4. Opis instrukcji...131 3.4.1. Instrukcje bajtowe...131 3.4.2. Instrukcje bitowe...135 3.4.3. Instrukcje ze stałą...136 3.4.4. Instrukcje sterujące...137 4. Oprogramowanie narzędziowe...139 4.1. Pakiet oprogramowania MPLAB...140 4.2. Asembler...159 4.2.1. Opcje kompilatora...159 4.2.2. Formaty liczb i znaków ASCII...161 4.2.3. Operatory arytmetyczne i logiczne...161 4.2.4. Format pliku źródłowego...161 4.2.5. Ważniejsze polecenia asemblera MPASM...162 4.3. Emulator ICD 2 dla procesorów PIC12F675/PIC16F676...165 5. Programowanie procesorów...167 5.1. Programator JuPIC...168 5.1.1. Opis układu programatora...168 5.1.1.1. Klucz napięciowy...170 5.1.1.2. Funkcja programowania zewnętrznego i ICSP...170 5.1.1.3. Przystosowanie do programowania w układzie...171 5.1.1.4. Możliwości programatora...172 5.1.1.5. Montaż i uruchomienie...172 5.1.1.6. Konfigurowanie programatora...173 5.1.1.7. Uruchamianie programatora...175 5.2. Programator ICSP dla mikrokontrolerów PIC...177 6. Uruchamianie aplikacji...179 6.1. Zestaw uruchomieniowy dla procesorów PIC12F629/675 (ZL3PIC)... 180 6.2. Podstawowe procedury uruchomieniowe...181 6.2.1. Konfigurowanie procesora...181 6.2.2. Odmierzanie czasu i opóźnienia...187 6.2.3. Kolejność działań...191 6.2.4. Zerowanie rejestrów w pamięci RAM...192 6.2.5. Skok wyliczany...193

Spis treści 7 7. Przykładowe zadania projektowe...195 7.1. Sterowanie diodami świecącymi...196 7.2. Zmiana częstotliwości generatora taktującego...198 7.3. Testowanie stanu linii wejściowej...199 7.4. Pomiar rezystancji...200 7.5. Dołączanie klawiszy do linii wejściowych procesora PIC12F675...202 7.6. Dołączenie klawiszy z budzeniem procesora...205 7.7. Przetwornik delta-sigma...208 7.8. Zastosowania wyjścia CLKOUT w powielaczu napięcia... 211 7.9. Pomiar rezystancji w obwodzie dzielnika rezystorowego...212 7.10. Interfejsy szeregowe...213 7.10.1. Interfejs RS232...214 7.10.1.1. Opis linii i standard łączówek...214 7.10.1.2. Połączenie komputera z mikroprocesorem...214 7.10.1.3. Translator poziomów...214 7.10.1.4. Ramka danych w interfejsie RS232C...216 7.10.1.5. Konfigurowanie linii procesora...217 7.10.1.6. Procedura odbioru...219 7.10.1.7. Zasilanie z interfejsu RS232...222 7.10.2. Interfejs I 2 C...223 7.10.2.1. Format danych...224 7.10.2.2. Używane rejestry i konfigurowanie procesora...225 7.10.2.3. Procedury obsługi interfejsu I 2 C...227 7.10.3. Programowa obsługa magistrali 1-Wire...232 7.10.3.1. Konfiguracja sprzętowa...234 7.11. Czterokanałowy woltomierz-rejestrator...243 7.12. Trzykanałowy rejestrator temperatury...244 7.13. Odczyt przyspieszenia z akcelerometru z wyjściami PWM...246 7.14. Obsługa wyświetlacza graficznego...250 7.15. Ultradźwiękowy miernik odległości...256 7.15.1. Zasada działania...256 7.15.2. Budowa miernika...256 7.15.2.1. Nadajnik...257 7.15.2.2. Odbiornik...258 7.15.2.3. Wyświetlacz...258 7.15.2.4. Układ zasilania...258 7.15.3. Program sterujący...258 7.15.3.1. Inicjalizacja mikrokontrolera...259 7.15.3.2. Pomiar odległości...259

8 Spis treści 7.15.3.3. Konwersja wyniku...260 7.15.3.4. Wyświetlanie wyniku...261 7.16. Przykłady programów w języku C...262 7.16.1. Kilka informacji wstępnych...262 7.16.2. Program zapal diodę...262 7.16.3. Zastosowanie funkcji...263 7.16.4. Opóźnienia czasowe...263 7.16.5. Programowa obsługa interfejsu szeregowego RS232...264 7.16.6. Programowa obsługa magistrali I 2 C...264 7.16.7. Programowa obsługa wyświetlacza graficznego typu LPH7583...265 Dodatki...269 Dodatek A. Nowe procesory w obudowach z 6, 8 i 14 wyprowadzeniami i pamięcią Flash...270 Dodatek B. Nazwy symboliczne stosowane w asemblerze mikrokontrolerów PIC...278 Dodatek C. Tablica kodów ASCII...282 Skorowidz...284