Elektronika samochodowa (Kod: TS1C )

Podobne dokumenty
Politechnika Białostocka

Elektronika samochodowa (Kod: ES1C )

SYSTEMY CZASU RZECZYWISTEGO (SCR)

ZL4PIC. Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC

dokument DOK wersja 1.0

ZL8AVR. Płyta bazowa dla modułów dipavr

Politechnika Białostocka. Wydział Elektryczny. Katedra Automatyki i Elektroniki. Kod przedmiotu: TS1C

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

LITEcomp. Zestaw uruchomieniowy z mikrokontrolerem ST7FLITE19

Elektronika samochodowa (Kod: ES1C )

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

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

Ćwiczenie 5 Zegar czasu rzeczywistego na mikrokontrolerze AT90S8515

Zestaw Startowy EvB. Więcej informacji na stronie:

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

ZL4PIC. Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów PIC

STM32Butterfly2. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

E-TRONIX Sterownik Uniwersalny SU 1.2

ZL2AVR. Zestaw uruchomieniowy z mikrokontrolerem ATmega8

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

Uniwersalny zestaw uruchomieniowy dla mikrokontrolerów AVR

ZL10PLD. Moduł dippld z układem XC3S200

Politechnika Śląska w Gliwicach

Moduł uruchomieniowy AVR ATMEGA-16 wersja 2

Politechnika Białostocka

Programator ZL2PRG jest uniwersalnym programatorem ISP dla mikrokontrolerów, o budowie zbliżonej do STK200/300 (produkowany przez firmę Kanda).

Konfiguracja i programowanie sterownika GE Fanuc VersaMax z modelem procesu przepływów i mieszania cieczy

Płytka ewaluacyjna z ATmega16/ATmega32 ARE0021/ARE0024

Programator procesorów rodziny AVR AVR-T910

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

Elektronika samochodowa (Kod: ES1C )

ZL15AVR. Zestaw uruchomieniowy dla mikrokontrolerów ATmega32

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

Zestaw uruchomieniowy z mikrokontrolerem LPC1114 i wbudowanym programatorem ISP

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

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

KAmduino UNO. Płytka rozwojowa z mikrokontrolerem ATmega328P, kompatybilna z Arduino UNO

Wydział Elektryczny. Katedra Automatyki i Elektroniki. Instrukcja. do ćwiczeń laboratoryjnych z przedmiotu: SYSTEMY CYFROWE 1.

DOKUMENTACJA PROJEKTU

WPROWADZENIE Mikrosterownik mikrokontrolery

WIZUALIZACJA DANYCH SENSORYCZNYCH MINISTACJA METEOROLOGICZNA

ISP ADAPTER. Instrukcja obsługi rev.1.1. Copyright 2009 SIBIT

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

Instytut Teleinformatyki

ZL15AVR. Zestaw uruchomieniowy dla mikrokontrolerów ATmega32

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

Uniwersalny zestaw uruchomieniowy ZL4PIC

ZL29ARM. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

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

Tab. 1. Zestawienie najważniejszych parametrów wybranych mikrokontrolerów z rodziny LPC2100, które można zastosować w zestawie ZL3ARM.

LABORATORIUM - ELEKTRONIKA Układy mikroprocesorowe cz.2

Konfiguracja i programowanie sterownika GE Fanuc VersaMax z modelem procesu przepływów i mieszania cieczy. Przebieg ćwiczenia

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

PROGRAMOWALNE STEROWNIKI LOGICZNE

Edukacyjny sterownik silnika krokowego z mikrokontrolerem AT90S1200 na płycie E100. Zestaw do samodzielnego montażu.

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

KAmduino UNO. Rev Źródło:

Rys. 1. Schemat ideowy karty przekaźników. AVT 5250 Karta przekaźników z interfejsem Ethernet

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

STM32 Butterfly. Zestaw uruchomieniowy dla mikrokontrolerów STM32F107

Wstęp Architektura... 13

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

Instrukcja obsługi. PROGRAMATOR dualavr. redflu Tarnów

MOD Xmega explore z ATXmega256A3BU. sklep.modulowo.pl akademia.modulowo.pl zestawy.modulowo.pl app.modulowo.pl blog.modulowo.

MOD Xmega explore z ATXmega256A3BU. sklep.modulowo.pl akademia.modulowo.pl zestawy.modulowo.pl app.modulowo.pl blog.modulowo.

AVR DRAGON. INSTRUKCJA OBSŁUGI (wersja 1.0)

Systemy Wbudowane. Założenia i cele przedmiotu: Określenie przedmiotów wprowadzających wraz z wymaganiami wstępnymi: Opis form zajęć

ZL5ARM. Zestaw uruchomieniowy dla mikrokontrolerów LPC2119/2129 (rdzeń ARM7TMDI-S) Kompatybilność z zestawem MCB2100 firmy Keil

ZL28ARM. Zestaw uruchomieniowy dla mikrokontrolerów AT91SAM7XC

ZL5PIC. Zestaw uruchomieniowy dla mikrokontrolerów PIC16F887

ZL6ARM Zestaw uruchomieniowy dla mikrokontrolerów LPC213x. Tab. 1. Zestawienie najważniejszych parametrów wybranych mikrokontrolerów z rodziny LPC213x

2. Architektura mikrokontrolerów PIC16F8x... 13

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

PRUS. projekt dokumentacja końcowa

Systemy wbudowane. Paweł Pełczyński

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

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

Instrukcja dla: Icomsat v1.0 SIM900 GSM/GPRS shield for Arduino oraz dla GPRS Shield produkcji Seeedstudio.

Konfiguracja i programowanie PLC Siemens SIMATIC S7 i panelu tekstowego w układzie sterowania napędami elektrycznymi. Przebieg ćwiczenia

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

Moduł prototypowy X3-DIL64 z procesorem ATxmega128A3U-AU

ZL1MSP430 Zestaw startowy dla mikrokontrolerów MSP430F11xx/11xxA ZL1MSP430

MikloBit ul. Cyprysowa 7/ Jaworzno. JTAG + ISP dla AVR. rev

Programowalne Układy Cyfrowe Laboratorium

Płytka uruchomieniowa XM64

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

ZL11ARM. Uniwersalna płytka bazowa dla modułów diparm

ZL19PRG. Programator USB dla układów PLD firmy Altera

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

ZL30ARM. Zestaw uruchomieniowy dla mikrokontrolerów STM32F103

MCAR Robot mobilny z procesorem AVR Atmega32

Stanowisko laboratoryjne dla mikrokontrolera ATXmega32A4 firmy Atmel

BF30 OCDLINK/USBASP ARM-JTAG/AVR-ISP Programmer-debugger Instrukcja obsługi

INSTRUKCJA OBSŁUGI.

Kod produktu: MP01611

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

ZL27ARM. Zestaw uruchomieniowy dla mikrokontrolerów STM32F103

Terminal TR01. Terminal jest przeznaczony do montażu naściennego w czystych i suchych pomieszczeniach.

Mikrokontrolery AVR techniczne aspekty programowania

Instrukcja obsługi programatora AVR Prog USB v2

Transkrypt:

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki Instrukcja do ćwiczeń laboratoryjnych z przedmiotu Elektronika samochodowa (Kod: TS1C 622 388) Temat: Programowanie mikrokontrolerów AVR serii Automotive Opracował: dr inż. Wojciech Wojtkowski 2 lutego 2017

1 Cel i zakres ćwiczenia Celem ćwiczenia jest poznanie budowy wybranych mikro-kontrolerów stosowanych w pojazdach samochodowych (AVR serii Automotive) oraz zapoznanie z podstawami programowania ich w języku C. Wiadomości zdobyte podczas ćwiczenia laboratoryjnego będą następnie potrzebne podczas wykonywania kolejnych ćwiczeń. Studenci w trakcie ćwiczenia poznają także zasady obsługi niezbędnego oprogramowania narzędziowego. Podczas zajęć laboratoryjnych, przed każdym zadaniem należy odpowiednio skonfigurować dostępne zestawy laboratoryjne (podłączyć zasilanie, podłączyć programator do płytki testowej oraz do komputera PC, zrealizować połączenia na płycie zestawu zgodnie z realizowanym zadaniem), a następnie napisać program w języku C realizujący otrzymane od prowadzącego zadanie. Następnie należy zaprogramować mikrokontroler i przetestować działającą aplikację lub przeprowadzić uruchomienie programu i usunięcie błędów programowych. Będą przydzielane różne zadania o rosnącym, wraz z czasem trwania ćwiczenia, stopniu trudności, np.: konfiguracja portów I/O mikrokontrolera AVR, obsługa przycisków z eliminacją drgań styków, obsługa przycisków z eliminacją drgań styków realizowana w przerwaniach INT, obsługa przycisków realizowana w przerwaniach INT z eliminacją drgań styków realizowaną w przerwaniach zegarowych, odmierzanie czasu trwania impulsów za pomocą liczników i przerwań zegarowych, wyświetlanie informacji na wyświetlaczach LED oraz LCD, pisanie funkcji z parametrami wejściowymi i wyjściowymi, dołączanie plików nagłówkowych, tworzenie własnej biblioteki funkcji. Podstawowe wiadomości z zakresu wykorzystania mikrokontrolerów będą przydatne w kolejnych ćwiczeniach przy realizacji bardziej złożonych zadań. Szczegółowy zakres ćwiczenia i zadania dla każdej grupy studentów ustala prowadzący na początku zajęć. Ćwiczenie realizowane jest w ciągu 6 godzin lekcyjnych (dwa spotkania po 3 godziny). 2 Mikrokontrolery ATmega16M1, 32M1, 64M1 Automotive Mikrokontrolery Atmel serii ATmega16M1, ATmega32M1 oraz ATmega64M1 zostały zaprojektowane do zastosowań w pojazdach samochodowych, m.in. do pracy w systemach kontroli przeniesienia napędu. Szczególnie użyteczne mogą być we wszelkich systemach rozproszonych, w których do komunikacji międzywęzłowej wykorzystywane są interfejsy CAN oraz LIN. Zawierają one odpowiednio 16, 32 i 64kB pamięci Flash, zestaw linii I/O ogólnego przeznaczenia, komparatory analogowe, przetworniki A/C, bardziej rozbudowany generator PWM niż w standardowej serii ATmega (z taktowaniem do 64 MHz). Programowanie AVR 1 z 11

Są to podobnie jak w serii standardowej mikrokontrolery 8-bitowe o architekturze RISC. Dostępne jest sprzętowe wspomaganie sterowania silników bezszczotkowych, coraz częściej wykorzystywanych w nowych konstrukcjach samochodowych. Pisanie oprogramowania w języku C dla mikrokontrolerów serii Automotive wymaga poznania architektury i zasad obsługi nowych specjalizowanych bloków peryferyjnych. Z uwagi na większą efektywność przy ograniczonych zasobach sprzętowych i wydajnościowych, preferowane jest oprogramowanie w C niż w C++. Poszczególne bloki peryferyjne wykorzystywane na zajęciach będą omawiane w trakcie ćwiczenia przez prowadzącego. 3 Zestaw uruchomieniowy W trakcie zajęć wykorzystywane będą zestawy uruchomieniowe EVBavr05 wyposażone w gniazdo umożliwiające wstawienie badanego mikrokontrolera w obudowie DIP40. Widok zestawu uruchomieniowego EVBavr05 jest przedstawiony na rysunku 1. Połączenia na płycie EVB wykonujemy specjalnymi przewodami do złącz typu Goldpin. Widok przewodów jest przedstawiony na rysunku 2. Wyprowadzenia mikrokontrolera umieszczonego w podstawce DIP40 są połączone z odpowiednimi pinami złącza JP18 na płytce EVB zgodnie z rys. 3. Płyta główna umożliwia testowanie wielu różnych aplikacji z wykorzystaniem szeregu różnych układów peryferyjnych. Zestaw EVB umożliwia wygodny dostęp do wszystkich końcówek mikrokontrolera oraz układów peryferyjnych za pomocą złącz typu Goldpin, które można łączyć z układami peryferyjnymi za pomocą przewodów lub zworek. Niektóre układy peryferyjne, są umieszczone w ten sposób, że do ich podłączenia wystarczą zworki umieszczone w odpowiednich miejscach na płycie EVB. Schemat podłączenia przycisków jest przedstawiony na rysunku 4. Do dyspozycji mamy przyciski SW0, SW1, SW2, SW3, SW4, SW5, SW6 oraz SW7 połączone z dwurzędowym złączem Goldpin JP14 (rys. 4). W trakcie ćwiczenia należy połączyć potrzebne przyciski z odpowiednimi portami mikrokontrolera za pomocą dodatkowych przewodów. Najpierw jednak należy skonfigurować odpowiednie wejścia mikrokontrolera AVR. Uwaga: w przypadku podłączenia przycisku do portu I/O skonfigurowanego wcześniej jako wyjście, może dojść do uszkodzenia portu! Na płycie EVB dostępne są także cztery wyświetlacze siedmiosegmentowe. Schemat podłączenia wyświetlaczy do złącza dwurzędowego JP11 przedstawia rysunek 5. Na początku pracy z mikrokontrolerem AVR, gdy nie dysponujemy jeszcze zasobem własnych bibliotek, warto wykorzystać najprostszą metodę wyświetlania wartości binarnych na ośmiu diodach LED. Na płycie EVB mamy do dyspozycji osiem diod LED połączonych ze złączem JP3 zgodnie z rysunkiem 6. Jeśli istnieje potrzeba analizy większej ilości danych, najwy- Programowanie AVR 2 z 11

Rysunek 1: Widok zestawu uruchomieniowego EVBavr05 [2] Rysunek 2: Widok przewodów połączeniowych do zestawu EVBavr05 Programowanie AVR 3 z 11

Rysunek 3: Schemat połączeń wyprowadzeń mikrokontrolera ze złączem JP18 zestawu uruchomieniowego EVBavr05 [2] godniej jest wykorzystać port RS-232C i dane wysyłać do terminala na komputerze PC. Aby było możliwe połączenie komputera PC z płytką EVB przez RS232C, potrzebny jest konwerter napięć. Jego schemat jest pokazany na rysunku 7. Może być także wykorzystany układ konwertujący USB(wirtualny port szeregowy) na TTL. Programowanie mikrokontrolera odbywa się w systemie (bez wyjmowania układu) poprzez złącze ISP JP12 (Rys. 8). Układ zasilania zestawu EVB jest przedstawiony na rysunku 9. Do zasilania zestawu można wykorzystać dowolny zasilacz wtyczkowy o prądzie maksymalnym większym niż 450 [ma] oraz napięciu wyjściowym 9-12 [V]. Po podłączeniu zasilacza, zestaw włączamy przełącznikiem SW1-Power (Rys. 9). Polaryzacja zasilacza jest bez znaczenia na wejściu zestawu znajduje się mostek prostowniczy (Rys. 9). 4 Przykładowe zadania Napisać program wyświetlający na linijce 8 diod LED stan licznika wciśnięć. Sterowanie dwoma przyciskami góra oraz dół. Programowanie AVR 4 z 11

Rysunek 4: Schemat połączeń przycisków SW0.. SW7 ze złączem JP14 [2] Rysunek 5: Schemat połączeń wyświetlaczy LED ze złączem JP11 [2] Programowanie AVR 5 z 11

Rysunek 6: Schemat połączeń diod LED ze złączem JP3 [2] Rysunek 7: Schemat połączeń konwertera napięć RS232C/TTL ze złączem JP5 [2] Programowanie AVR 6 z 11

Rysunek 8: Złącze programatora ISP [2] Rysunek 9: Schemat układu zasilania [2] Programowanie AVR 7 z 11

Napisać program realizujący funkcję STOPER z dwoma przyciskami sterującymi START / STOP oraz RESET. Program powinien odmierzać możliwie dokładnie upływające sekundy. Wynik prezentowany w postaci binarnej na diodach LED. Napisać program realizujący nawigację po MENU. Menu powinno posiadać 8 pozycji (tyle ile jest dostępnych diod LED). Sygnalizacja pozycji na diodach LED. Wybór pozycji skutkuje wyświetleniem kodu operacji na linijce diod LED. Napisać program do pomiaru czasu reakcji użytkownika. Na linijce 8 diod LED pojawia się w nieoczekiwanym momencie światło na jednej pozycji, użytkownik jak najszybciej musi je wyłączyć wciskając odpowiedni przycisk. Następnie program wyświetla na linijce LED zmierzony czas reakcji w formie binarnej. Wynik w milisekundach. Napisać program wyświetlający stan licznika wciśnięć na wyświetlaczach siedmiosegmentowych LED. Sterowanie dwoma przyciskami góra oraz dół. Napisać program realizujący funkcję STOPER. Program powinien odmierzać możliwie dokładnie upływające sekundy. Wynik prezentowany na czterech wyświetlaczach siedmiosegmentowych. 5 Zagadnienia do przygotowania Przed przystąpieniem do ćwiczenia student powinien zapoznać się z dokumentacją zestawu EVBavr05 [2], a w szczególności przeanalizować schematy ideowe wszystkich bloków funkcjonalnych. Dodatkowo należy przygotować w wersji elektronicznej dokumentację mikrokontrolera [1] oraz dokumentację zestawu [2]. 6 Oprogramowanie narzędziowe Oprogramowanie będzie pisane w języku C. Komplet oprogramowania narzędziowego jest dostępny w sieci Internet i jest bezpłatny. W przypadku systemu Windows składa się z pakietu WinAVR-20071221 lub nowszego oraz AVRStudio4.13 SP2 lub nowszego. Oba pakiety można wcześniej zainstalować na swoim komputerze przenośnym i wykorzystać go podczas ćwiczenia. Dla osób dysponujących szybkim komputerem istnieje alternatywa w postaci pakietu Atmel Studio 7 lub nowszego, dostępna pod adresem [3], jednak absolutnie nie jest to oprogramowanie niezbędne podczas zajęć laboratoryjnych, Programowanie AVR 8 z 11

wystarczy wersja 4.13. W przypadku systemu Linux, wykorzystywany jest pakiet Eclipse 3.8 lub nowszy z zainstalowanymi narzędziami dla AVR i do obsługi programatora ISPCableIII [4], instrukcja instalacji wymaganego pluginu do Eclipse jest dostępna pod adresem: http : //avr eclipse.sourcef orge.net/wiki/index.php/p lugin Download. 7 Wymagania BHP Warunkiem przystąpienia do ćwiczenia jest zapoznanie się z instrukcją stanowiskową BHP stosowaną w Laboratorium. Instrukcja ta powinna być przedstawiona studentom podczas pierwszych zajęć laboratoryjnych i dostępna do wglądu w Laboratorium. Tekst instrukcji stanowiskowej obowiązującej w Laboratorium WE48 znajduje się w pliku instrstan-lab48.pdf. 8 Wymogi odnośnie sprawozdania z realizacji ćwiczenia Sprawozdanie powinno zawierać: stronę tytułową (zgodnie z obowiązującym wzorem), datę wykonania ćwiczenia, zakres ćwiczenia, opis stanowiska laboratoryjnego, zastosowanych modułów, dokładny schemat połączeń, opis przebiegu ćwiczenia z wyszczególnieniem wykonywanych czynności, algorytm rozwiązania danego problemu, algorytm działania programu w formie schematu blokowego, z zachowaniem ogólnie przyjętych zasad tworzenia takich schematów, programy w C z komentarzami, oscylogramy ilustrujące poprawne działanie przygotowanych aplikacji, wyniki w formie tabel, oscylogramów, wykreślone charakterystyki, Programowanie AVR 9 z 11

szczegółową analizę wyników, podsumowanie, uwagi oraz wnioski. Na ocenę sprawozdania będą miały wpływ następujące elementy: zgodność treści z instrukcją, algorytm rozwiązania problemu, analiza wyników, wnioski i uwagi, terminowość i ogólna estetyka. Sprawozdanie powinno być wykonane i oddane na zakończenie ćwiczenia, najpóźniej na zajęciach następnych. Sprawozdania oddane później niż na następnych zajęciach będą oceniane w skali 2, 2.5, 3, bez względu na przyczyny opóźnienia. Przy oddawaniu sprawozdania należy zapisać wszystkie pliki i katalogi projektu do katalogu wskazanego przez prowadzącego zajęcia. Jeśli ocena ze sprawozdania będzie niedostateczna, można w terminie 7 dni przynieść wersję poprawioną, jednak ocena z wcześniejszej wersji również wchodzi do średniej końcowej. Programowanie AVR 10 z 11

Bibliografia [1] Dokumentacja mikrokontrolera ATmega16 : http : //www.atmel.com/images/doc2466.pdf [2] Dokumentacja zestawu EVBavr05 : http : //www.propox.com/download/docs/ev Bavr05 pl.pdf [3] Strona z opisem i programem Atmel Studio : http : //www.atmel.com/tools/atmelstudio.aspx [4] Dokumentacja programatora ISPcableIII : http : //www.propox.com/products/t 158.html 11