Materiały. Języki programowania II (Java+AVR-GCC) Literatura



Podobne dokumenty
Techniki Programowania

Podstawy języka C++ Marek Pudełko

Słowa kluczowe i nazwy

Grzegorz Cygan. Wstęp do programowania mikrosterowników w języku C

Szkolenia specjalistyczne

PROGRAMOWANIE w C prolog

METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02

Język ludzki kod maszynowy

Podstawy informatyki. Prowadzący cz. 2 (C++) wykładu: dr inż. Sylwester Przybył Instytut Fizyki WFT tel. (0-61) ;

Programowanie obiektowe

Poradnik programowania procesorów AVR na przykładzie ATMEGA8

Programowanie mikrokontrolerów AVR

Wstęp do programowania

Języki programowania - podstawy

Kurs programowania. Wykład 1. Wojciech Macyna. 3 marca 2016

Na ekranie monitora zostaną wyświetlone w dwu liniach teksty Pierwsza linia Druga linia

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

Podstawy Programowania

JAVA. Platforma JSE: Środowiska programistyczne dla języka Java. Wstęp do programowania w języku obiektowym. Opracował: Andrzej Nowak

Systemy Wbudowane. Arduino, AVR (wersja 2018) Arduino. Arduino. Oprogramowanie. Rys historyczny. Mikrokontroler

Wykład 1

Jzyk C++ cz 2. Jarosław Gramacki Instytut Informatyki i Elektroniki

Systemy Wbudowane. Arduino, AVR (wersja 2019) Arduino. Arduino. Oprogramowanie. Rys historyczny. Mikrokontroler

Typy złożone. Struktury, pola bitowe i unie. Programowanie Proceduralne 1

Systemy Wbudowane. Arduino, AVR (wersja ) Arduino. Arduino. Arduino. Oprogramowanie. Mikrokontroler

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

ECLIPSE wnioski z dwóch pierwszych laboratoriów

Wykład 15. Literatura. Kompilatory. Elementarne różnice. Preprocesor. Słowa kluczowe

Wstęp do programowania 1

Microsoft IT Academy kurs programowania

Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

Programowanie strukturalne i obiektowe

1. Wartość, jaką odczytuje się z obszaru przydzielonego obiektowi to: a) I - wartość b) definicja obiektu c) typ oboektu d) p - wartość

Języki Programowania II Wykład 3. Java podstawy. Przypomnienie

Programowanie obiektowe

Laboratorium Systemów wbudowanych Wyższa Szkoła Zarządzania i Bankowości, Informatyka studia inżynierskie

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

Jak rozpocząć pracę z mikrokontrolerami?

UNO R3 Starter Kit do nauki programowania mikroprocesorów AVR

/* dołączenie pliku nagłówkowego zawierającego deklaracje symboli dla wykorzystywanego mikrokontrolera */ #include <aduc834.h>

ROZDZIAŁ 2. Operatory

Strona główna. Strona tytułowa. Programowanie. Spis treści. Sobera Jolanta Strona 1 z 26. Powrót. Full Screen. Zamknij.

Spis treści

Język C - podstawowe informacje

IMIĘ i NAZWISKO: Pytania i (przykładowe) Odpowiedzi


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

LABORATORIUM - ELEKTRONIKA Układy mikroprocesorowe cz.2

1. Brian W. Kernighan, Dennis M. Ritchie, Język ANSI C, WNT, Warszawa 1998.

Programowanie strukturalne język C - wprowadzenie

Inż. Kamil Kujawski Inż. Krzysztof Krefta. Wykład w ramach zajęć Akademia ETI

ZL15AVR. Zestaw uruchomieniowy dla mikrokontrolerów ATmega32

Wprowadzenie do podstaw programowania AVR (na przykładzie mikrokontrolera ATmega 16 / 32)

Standard C++0x (C++1x?) Marcin Świderski

Wprowadzenie do szablonów klas

Instytut Teleinformatyki

Modelowanie numeryczne w fizyce atmosfery Ćwiczenia 3

Podstawy programowania w języku C

Mikroprocesory i Mikrosterowniki

Programowanie Proceduralne

Programowanie mikrokontrolerów AVR z rodziny ATmega.

ZASTOSOWANIE PLATFORM CYFROWYCH ARDUINO I RASPBERRY PI W NAUCZANIU STEROWANIA OBIEKTEM PNEUMATYCZNYM

Zofia Kruczkiewicz, Programowanie obiektowe - java, wykład 2 1

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

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

Szablony funkcji i szablony klas

Java. język programowania obiektowego. Programowanie w językach wysokiego poziomu. mgr inż. Anna Wawszczak

Schemat blokowy architektury AVR

Wstęp. Opis ATMEGA128 MINI MODUŁ VE-APS-1406

Szkolenie C. Programowanie mikrokontrolerów w języku C na przykładzie STM32F103ZE z rdzeniem Cortex-M3. Broszura informacyjna Wersja 1.

Instrukcja do ćwiczeń nr 4 typy i rodzaje zmiennych w języku C dla AVR, oraz ich deklarowanie, oraz podstawowe operatory

Niektóre piny mogą pełnić różne role, zależnie od aktualnej wartości sygnałów sterujących.

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

Wstęp do programowania

Mikroprocesory i Mikrosterowniki

ZL15AVR. Zestaw uruchomieniowy dla mikrokontrolerów ATmega32

Tworzenie aplikacji w języku Java

Podstawy programowania. Wykład Co jeszcze... Przypomnienia, uzupełnienia. Krzysztof Banaś Podstawy programowania 1

Spis treści. Projekt współfinansowany ze środków Unii Europejskiej w ramach Europejskiego Funduszu Społecznego

micro Programator ISP mikrokontrolerów AVR zgodny z STK500v2 Opis Obs³ugiwane mikrokontrolery Wspó³praca z programami Podstawowe w³aœciwoœci - 1 -

ATNEL. Programator USBASP. Instrukcja obsługi. Instrukcja programatora USBASP firmy Atnel. Mirosław Kardaś

Podstawowe urządzenia peryferyjne mikrokontrolera ATmega8 Spis treści

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)

E-TRONIX Sterownik Uniwersalny SU 1.2

Płytka uruchomieniowa AVR oparta o układ ATMega16/ATMega32. Instrukcja Obsługi. SKN Chip Kacper Cyrocki Page 1

Programator procesorów rodziny AVR AVR-T910

Instytut Teleinformatyki

DYNAMICZNE PRZYDZIELANIE PAMIECI

1.1 Co to jest USBasp? Parametry techniczne Obsługiwane procesory Zawartość zestawu... 4

Moduł uruchomieniowy AVR ATMEGA-16 wersja 2

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

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

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

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

Zestaw uruchomieniowy z mikrokontrolerem LPC1114 i wbudowanym programatorem ISP

Warsztaty AVR. Instalacja i konfiguracja środowiska Eclipse dla mikrokontrolerów AVR. Dariusz Wika

Charakterystyka mikrokontrolerów

Kurs programowania mikrokontrolerów ARM z rodziny Cortex-M3

Płyta ewaluacyjna z mikrokontrolerem Atmega32. Autor Dariusz Wika

Kurs programowania. Wykład 9. Wojciech Macyna. 28 kwiecień 2016

Transkrypt:

Języki programowania II (Java+AVR-GCC) http://abm.p.lodz.pl dr inż. Michał Ludwicki Literatura Materiały Mikrokontrolery AVR Język C Podstawy programowania Mirosław Kardaś, Atnel, Szczecin, 2011. Specyfikacja mikrokontrolera Atmega32 http://www.atmel.com/ dowolna inna książka dot. mikrokontrolerów AVR. Internet Kurs języka C dla mikrokontrolerów AVR http://kursc.forbot.pl/ http://www.avrfreaks.net/forums/microcontrollers Materiały ze strony przedmiotu http://abm.p.lodz.pl/ Politechnika Łódzka Wydział Mechaniczny Mechatronika 2014/2015 2 1

Oprogramowanie Oprogramowanie (1) 1. JDK 6 lub 7 Java Development Kit http://www.oracle.com/ 2. środowisko programistyczne Eclipse IDE for Java Developers http://www.eclipse.org/ 3. WinAvr(AVR-GCC Toolchain) http://winavr.sourceforge.net/ 4. plus wtyczka AVR Eclipse plugin http://avr-eclipse.sourceforge.net/ 3 4 2

Oprogramowanie (2) Instalacja kompilatora (3) WinAVR WinAVR-20100110-install.exe http://winavr.sourceforge.net/ 5 6 3

Instalacja wtyczki AVR Eclipse Plugin(4a) Help Install new software http://avr-eclipse.sourceforge.net/updatesite Powiązanie kompilatora z wtyczką (4b) Automatycznie po instalacji. Jeśli nie trzeba ręcznie wybrać foldery. 7 8 4

Powiązanie kompilatora z wtyczką (4c) Dodanie nowej konfiguracji programatora Powiązanie kompilatora z wtyczką (4d) nazwa dowolna typ: USBasp 9 10 5

Środowisko programistyczne Kompilacja :100000000C942A000C9434000C9434000C943400AA :100010000C9434000C9434000C9434000C94340090 :100020000C9434000C9434000C9434000C94340080 :100030000C9434000C9434000C9434000C94340070 :100040000C9434000C9434000C9434000C94340060 :100050000C94340011241FBECFE5D8E0DEBFCDBF25 :100060000E9436000C9439000C94000080E090E06F :060070000895F894FFCF93 :00000001FF 11 http://www.mikroe.com/ 12 6

Przesył programu do mikrokontrolera Porty przez port LPT [równolegle] komputera (najprościej) przez port RS-232 [szeregowo] przez port USB [szeregowo] (specjalnym programatorem) Język programowania C (nie C++!) Kompilator AVR-GCC 33 polecenia: Sposób programowania na wydzielonym układzie na układzie działającym (port ISP In System Programming) http://www.mikroe.com/ 13 http://www.mikroe.com/ 14 7

lista poleceń C++ (84) Język programowania C (nie C++!) alignas alignof and and_eq asm auto bitand bitor bool break case catch char char16_t char32_t class compl const constexpr const_cast continue decltype default delete do double dynamic_cast else enum explicit export extern false float for friend goto if inline int long mutable namespace new noexcept not not_eq nullptr operator or or_eq private protected public register reinterpret_cast return short signed sizeof static static_assert static_cast struct switch template this thread_local throw true try typedef typeid typename union unsigned using virtual void volatile wchar_t while xor xor_eq 15 http://www.mikroe.com/ 16 8

typy danych C++ Mikrokontrolery tzw. mikrokomputery jednoukładowe (z ang. microcontroller unit, μc) zintegrowany układ: mikroprocesor + pamięć + interfejsy we/wy (z ang. I/O) pierwsze powstały już w 1971 r. (np. TMS 1000(firmy Texas Instruments z 1971 r.), 300kHz, 8 μm PMOS, 4-bitowy) http://kursc.forbot.pl/ 17 http://www.mikroe.com/ 18 9

Laboratorium Atmega32A Mikrokontroler Atmel Atmega32 8 bitowy, do 16 MHz 32 Kb - nieulotna pamięć programowa Flash 1024 bajty nieulotna pamięć danych EEPROM (Electrically-ErasableProgrammableRead-OnlyMemory) 2 Kb - ulotnej pamięć podręczna SRAM (Static Random Access Memory) Zestaw ewaluacyjny Atnel ATB 1.04 wbudowany programator sprzętowy wyświetlacze: LCD, 7-segm oraz diody LED, dioda IR komunikacja: USB / RS232 / RS485 / Bluetooth sterowniki: mostki H (L293D), ULN2803 układy: RTC (real time clock), EEPROM, RS485 czujniki elektroniczne: DS18B20 (temp.), TFMS (IR) karta pamięci MMC/SD mikro-przełączniki, buzzer http://atnel.pl/instrukcja-atb-rev-1-04.html 19 Specyfikacja Atmel Atmega32 20 10

Atmega32 specyfikacja Przykładowy schemat połączeń Specyfikacja Atmel Atmega32 http://kursc.forbot.pl/ 21 22 11

Alternatywa PORTY Mikrokontrolery PIC firmy Microchip PORT B wy/we cyfrowe z rezystorem podciągającym do VCC PORT A wejście A/D z rezystorem podciągającymdo VCC PORT D wy/we cyfrowe z rezystorem podciągającym do VCC PORT C wy/we cyfrowe z rezystorem podciągającym do VCC złącze interfejsu JTAG do testowania i programowania 23 24 12

REJESTRY Na przykład port A: DDR Data Direction wybór kierunku portu (wejście/wyjście/wysoka impedancji) PORT Data Register stan portu na wyjściu PIN Port Input Pin odczyt stanu wejścia tzw. rezystor podciągający (pull-up resistor) 25 26 13

Rejestry w zastosowaniu and or xor not Język C operacje bitowe iloczyn suma różnica symetryczna negacja 27 shift przesunięcie bitowe 28 14

Język C przesunięcie bitowe w lewo: << w prawo: >> Ćwiczenia PORTC = (1<<3) (1<<5) (1<<7); PORTC = 0b00001111 PORTC &= 0b11110000 PORTC = 0b00001111 PORTC = 0b11110000 PORTC &= (PORTC<<1) (PORTC<<2) y << x x * 2 y 29 30 15

Przykłady programów Przykłady programów Zadania: 1. Zastosuj operatory bitowe do uproszczenia programu obok. 2. Zmodyfikuj program, żeby dioda zamiast się zapalać, gasła. 31 32 16

Przykłady programów 33 17