PRIMENA MIKROKONTROLERA- MS1PMK 5. deo. Nenad Jovičić

Similar documents
SIMPLE PAST TENSE (prosto prošlo vreme) Građenje prostog prošlog vremena zavisi od toga da li je glagol koji ga gradi pravilan ili nepravilan.

Biznis scenario: sekcije pk * id_sekcije * naziv. projekti pk * id_projekta * naziv ꓳ profesor fk * id_sekcije

Podešavanje za eduroam ios

GUI Layout Manager-i. Bojan Tomić Branislav Vidojević

AMRES eduroam update, CAT alat za kreiranje instalera za korisničke uređaje. Marko Eremija Sastanak administratora, Beograd,

Eduroam O Eduroam servisu edu roam Uputstvo za podešavanje Eduroam konekcije NAPOMENA: Microsoft Windows XP Change advanced settings

CJENOVNIK KABLOVSKA TV DIGITALNA TV INTERNET USLUGE

Uvod u relacione baze podataka

CJENIK APLIKACIJE CERAMIC PRO PROIZVODA STAKLO PLASTIKA AUTO LAK KOŽA I TEKSTIL ALU FELGE SVJETLA

Ulazne promenljive se nazivaju argumenti ili fiktivni parametri. Potprogram se poziva u okviru programa, kada se pri pozivu navode stvarni parametri.

Port Community System

KAPACITET USB GB. Laserska gravura. po jednoj strani. Digitalna štampa, pun kolor, po jednoj strani USB GB 8 GB 16 GB.

Bušilice nove generacije. ImpactDrill

Nejednakosti s faktorijelima

PROJEKTNI PRORAČUN 1

INSTALIRANJE SOFTVERSKOG SISTEMA SURVEY

za STB GO4TV in alliance with GSS media

ENR 1.4 OPIS I KLASIFIKACIJA VAZDUŠNOG PROSTORA U KOME SE PRUŽAJU ATS USLUGE ENR 1.4 ATS AIRSPACE CLASSIFICATION AND DESCRIPTION

ARHITEKTURA RAČUNARA

SPEDESTER Series QUICK REFERENCE GUIDE

IZDAVANJE SERTIFIKATA NA WINDOWS 10 PLATFORMI

NIS PETROL. Uputstvo za deaktiviranje/aktiviranje stranice Veleprodajnog cenovnika na sajtu NIS Petrol-a

Predmet: 32bitni mikrokontroleri

TRAJANJE AKCIJE ILI PRETHODNOG ISTEKA ZALIHA ZELENI ALAT

Upute za korištenje makronaredbi gml2dwg i gml2dgn

INSTRUCTIONS FOR USING THIS SAMPLE FLIGHT MANUAL SUPPLEMENT

Otpremanje video snimka na YouTube

1. Instalacija programske podrške

RANI BOOKING TURSKA LJETO 2017

STRUČNA PRAKSA B-PRO TEMA 13

SAS On Demand. Video: Upute za registraciju:

MINISTRY OF THE SEA, TRANSPORT AND INFRASTRUCTURE

Integrated Modular Avionics. The way ahead for aircraft computing platforms?

1 ULAZ/IZLAZ. Enable. Start

UM1868. The BlueNRG and BlueNRG-MS information register (IFR) User manual. Introduction

Lab Skills: Introduction to the Air Track

UPUTSTVO. za ruter TP-LINK TD-854W/ TD-W8951NB

KAKO GA TVORIMO? Tvorimo ga tako, da glagol postavimo v preteklik (past simple): 1. GLAGOL BITI - WAS / WERE TRDILNA OBLIKA:

Automatske Maske za zavarivanje. Stella, black carbon. chain and skull. clown. blue carbon

JEDINSTVENI PORTAL POREZNE UPRAVE. Priručnik za instalaciju Google Chrome dodatka. (Opera preglednik)

OBJEKTNO ORIJENTISANO PROGRAMIRANJE

KONFIGURACIJA MODEMA. ZyXEL Prestige 660RU

- Italy. UNIVERZALNA STANICA ZA ZAVARIVANJE, SPOTER - sa pneumatskim pištoljem sa kontrolnom jedinicom TE95-10 KVA - šifra 3450

Mogudnosti za prilagođavanje

PROJEKAT SISTEM ZA MERENJE TEMPERATURE POMOĆU NTC OTPORNIKA

UNIVERZITET U BEOGRADU RUDARSKO GEOLOŠKI FAKULTET DEPARTMAN ZA HIDROGEOLOGIJU ZBORNIK RADOVA. ZLATIBOR maj godine

ELEKTROTEHNIČKI FAKULTET UNIVERZITETA U BEOGRADU

Pelican AMR Gateway User Guide

12x12 MATRIX LED DRIVER

BENCHMARKING HOSTELA

3D GRAFIKA I ANIMACIJA

3. Obavljanje ulazno-izlaznih operacija, prekidni rad

Flight Delays Module (External User)

Price increase disclaimer prices subject to change without notice, see local representative or manufacturer for current prices. Greenfield Products

Struktura indeksa: B-stablo. ls/swd/btree/btree.html

CRNA GORA

Tutorijal za Štefice za upload slika na forum.

General-Use Auto-Tuning HPX-T Series

Projekat iz predmeta Računarska elektronika

Sl.1.Razvojna ploča-interfejs

Cover...0. Page #...0 TOC Index.0. Inside Back Cover..0. Outside Back Cover 0

Interaktivni Generator Vizuelnih Simulatora Digitalnih Sistema (IGoVSoDS)

Halina, Hesus. (Advent) œ N œ œ œ. œ œ œ œ œ. œ. œ œ œ œ. œ œ. C F G7sus4. œ. # œ œ J œ œ œ J. œ œ. J œ. # œ. # œ œ œ

Display Systems. 1. General. A. Multi-Function Display (MFD) B. Primary Flight Display (PFD)

12 16 MATRIX LED DRIVER

C/L TIMER v4.x _

Advertising on the Web

TRT800 ATC Transponder Mode A, A-C, S P/N 800ATC-(1XX)-(1XX) Operation Manual. Document No.: e Revision 1.00 Datum:

BlueNRG Guideline From evaluation to production

Upotreba selektora. June 04

The 15QQ series is a unique and versatile peristaltic pump range designed for accurate dispensing of liquids.

Manual for External Batch/Screw Counter (NEX-PLC) for Screw Feeder FM-36

Struktura i organizacija baza podataka

Heathrow Airport Property Rents Consultation Document

MIKROKONTROLER PIC 16F877A I NJEGOVA PRIMJENA U TELEOPERACIJAMA PREKO INTERNETA UPOTREBOM VALNIH VARIJABLI


POSEBNA POGLAVLJA INDUSTRIJSKOG TRANSPORTA I SKLADIŠNIH SISTEMA

Assembly TOOLS REQUIRED: 17mm and 14mm or equivalent wrenches.

E X C E L L E N C E I N S A C R E D C H O R A L M U S I C. Puer Natus in Bethlehem. A Child Is Born in Bethlehem. Arranged by Robert G.

APOLLO GX50/55 GPS IFR Operations

PLAN RADA. 1. Počnimo sa primerom! 2. Kako i zašto? 3. Pejzaž višestruke upotrebe softvera 4. Frameworks 5. Proizvodne linije softvera 6.

GENE-AUTO Status of new Airbus case Studies

1224 Splitter and CTO combo, setup instructions using the Panelview HMI

MRS. MRSLab03 Metodologija Razvoja Softvera Vežba 03 LAB Dijagram aktivnosti

TEHNIĈKO VELEUĈILIŠTE U ZAGREBU ELEKTROTEHNIĈKI ODJEL Prof.dr.sc.KREŠIMIR MEŠTROVIĆ POUZDANOST VISOKONAPONSKIH PREKIDAĈA

Trening: Obzor financijsko izvještavanje i osnovne ugovorne obveze

DC MILIAMPERSKA MERNA KLJESTA,Procesna merna kljesta KEW KYORITSU ELECTRICAL INSTRUMENTS WORKS, LTD. All rights reserved.

Purpose. Contents. Getting Started Guide Page 1 of 16 Avionics in N /24/2014

- Vežba 1 (dodatan materijal) - Kreiranje Web šablona (template) pomoću softvera Adobe Photoshop CS

Model Crosspoint Matrix

TTC NEWS January 2006

Materijali za pripremu usmenog ispita Predmet: Procesi razvoja softvera

Commissioned by Paul and Joyce Riedesel in honor of their 45th wedding anniversary. Lux. œ œ œ - œ - œ œ œ œ œ œ œ œ œ œ. œ œ œ œ œ œ œ œ œ.

JetCat USA 4250 Aerotech Center Way, Building G Paso Robles, CA 93446

12V DIRECT RESPONSE. Installation Manual

G/TIMS. Flight Record Overview (USAF) Flight Record Application Overview. Accessing Flight Records

X-Series Hexapod Assembly Instructions

10260 Series Actuators Model Selection Guide

Siteminder Setup. Setting up Siteminder into RezExpert

IMPLEMENTACIJA TEHNIKA ZA POVEĆANJE BROJA PODRŽANIH KONKURENTNIH KORISNIKA VEB SAJTA

Transcription:

PRIMENA MIKROKONTROLERA- MS1PMK 5. deo 2017 Nenad Jovičić

EXTI[15:0] EXTI Spoljašnji prekidi Do 40 Interrupt/Events zahteva Do 80 pinova se može koristiti kao EXTI ulaz. Interrupt Mask Register Pending Request Register Software Interrupt Event Register Rising Trigger Selection Register Falling Trigger Selection Register 16 linija povezanih na GPIO pinove Ostale linije poveyane na specificne periferije Dva konfiguraciona moda: To NVIC Edge Detect Circuit Interrupt mode: generisanje prekida Event mode: generisanje buđenja sistema koji je u SLEEP modu. Pulse Generator Event Mask Register Nezavisni trigeri (rastuća, opadajuća ili obe ivice) Status bit svake linije Mogućnost softverskog forsiranja bilo kog prekida/događaja. EXTI periferija je povezana na APB2 da bi se skratilo vreme ragovanja (APB2 je u opštem slučaju brža od APB1 magistrale)

EXTI prekidi

External interrupt configuration register 1 (2,3,4) (SYSCFG_EXTICR1 (2,3,4)) Na EXTIx ide uvek pinx

Ostale EXTI konekcije

Interrupt mask register (EXTI_IMR)

Interrupt mask register 2 (EXTI_IMR2)

Rising trigger selection register (EXTI_RTSR)

Wakeup event mask register (EXTI_EMR)

Falling trigger selection register (EXTI_FTSR)

STM CUBE Projekat GPIO_EXTI \STM32Cube_FW_L4_V1.4.0\Projects\STM32L476RG- Nucleo\Examples\GPIO\GPIO_EXTI\MDK-ARM Low level inicijalizacija

Inicijalizacija EXTI prekida

HAL_GPIO_Init()

Reakcija na prekid! Drajverske funkcije korisnik ne menja Korisničke funkcije

Reakcija na prekid! Drajverske funkcije korisnik ne menja Korisničke funkcije Principi HAL drajvera kada su u pitanju prekidi su sledeći: 1. Uvek postoji default handler u startup fajlu 2. Korisnik sam piše svoju prekidnu funkciju i u njoj poziva HAL_PPP_IRQHandler() funkciju u kojoj se servisira prekid 3. Ta funkcija dalje poziva HAL_PPP_Callback() funkciju koja ustvari reaguje na prekid 4. Korisnik sam implementira tu Callback funkciju.

Napisati program koji obezbeđuje promenu stanja diode LED2 na prekid na pinu PA_8. Problem 1 PA_8 je floating Rešenje aktivirati pull-up Problem 2 PA_8 ima drugi prekidni vektor Rešenje Identifikovati koji je to drugi prekidni vektor i na osnovu toga izvršiti adekvatna prilagođenja. ZADATAK 1

MBED Prekidi digitalnih portova Klasa InterruptIn implementira na jednostavan način odavno prisutnu funkcionalnost digitalnih ulaza mikrokontrolera

Klasa InterruptIn #include "mbed.h InterruptIn button(user_button); DigitalOut led(led2); void flip() { } led =!led; int main() { } button.fall(&flip); // attach the address of the flip function to the rising edge while(1);

ZADATAK 2 Napisati program koji obezbeđuje promenu stanja diode LED2 na prekid na pinu PA_8. Problem PA_8 je floating Rešenje aktivirati pull-up

STM32Fxx - Tajmeri STM32 ahitektura poseduje nekoliko vrsta tajmera: Tajmeri opšte namene koji se koriste iz generisanje običnih PWM signala (output comapre), pojedinačnih impulsa (one-pulse), hvatanje ulaznih signala (input capture), specifični senzorski iterfejsi (enkoder, hall-effect senzor) Napredni tajmeri (advanced timers) koji osim opštih funkcija imaju neke prednosti za generisanje signala koji se koriste u motornim pogonima ili digitalnom upravljanju pretvaračima. Primer: komlementarni izlazi sa regulisanjem mrtvog vremena, automatski isključivanje svih kanali i slično. N-kanalni tajmeri (N-channel timer), koji imaju karakteristike tajmera opšte namene ali imaju ograničen broj kanala. N-kanalni tajmeri tajmeri sa komplementarnim izlazima, i sa regulacijom mrtvog vremena samo na jednom kanalu. Osnovni tajmer (basic timer), koji nema izlaze i ulaze već se koristi za generisanje vremenske baze, ili periodično trigerovanje DAC periferije.

Tajmeri pregled po STM32 familiji

STM32L476 tajmeri

Tajmeri opšte namene TIMx (x=2,3,4,5) 16-bitni (TIM3 i TIM4) ili 32-bitni brojač (TIM2 i TIM5) na gore, dole ili gore/dole. 16-bitni preskaler za ulazni takt Do 4 nezavisna kanala koji mogu da rade u izlaznom (output comapre), ulaznom (input capture), PWM ili pojedinačnom impulsnom modu. Mogućnost sinhronizacije sa ostalim tajmerima. Prekid/DMA zahtev za sledeće događaje: Input capture Output compare Reload tajmera, inicijalizacija (softverska ili spoljašnja) Podržavaju kvadraturne inkrementalne enkodere i hall-effect senzore.

Opšta šema tajmera Tajmer opšte namene

Vremenska baza Vremenska baza Deo tajmera koji generiše vremensku bazu čine: -Tajmerski brojač TIMx_CNT -Preskaler takta TIMx_PSC -Reload registar TIMx_ARR Svi registri su duplo baferovani tako da mogu da se očitavaju i menjaju i u toku rada tajmera. Izmene PSC i ARR registra se dešavaju na svaki Update Event UEV

Ako je ARPE (auto-reload preload enable) bit u TIMxCR1 kontrolnom registru resetovan (ARPE=0) automatski se ažurira moduo brojanja Brojač na gore UP counting

Ako je ARPE (auto-reload preload enable) bit u TIMxCR1 kontrolnom registru setovan (ARPE=1) moduo se ažurira tek nakon jednog završenog ciklusa. Brojač na gore UP counting

Downcounting mode

Brojač gore-dole (Center-aligned / Up-down counting mode)

Taktovanje - Internal mode Tajmer je taktovan internim taktom

External mode 1 Tajmer broji spoljašnje rastuće ili opadajuće ivice na kanalima 1 ili 2

Tajmer broji spoljašnje rastuće ili opadajuće preskalirane ivice na ETR ulazu. Postoji ulazni preskaler. External mode 2

Kaskadna veza tajmera Interni triger ulazi ITRx koji se koriste kada se kaskadiraju različiti tajmeri. Na primer, TIM3 može da radi kao preskaler za TIM2. Jedan tajmer, konfigurisan u master modu može da resetuje, zaustavi, startuje ili taktuje drugi tajmer, koji je konfigurisan u slave modu.

STM CUBE Projekat TIM_TimeBase

Ako koristimo periferije potrebno je to da označimo u.conf fajlu

Šta to piše u drajverskim fajlovima?

Inicijalizacija vremenske baze tajmera

MspInit() Dovodimo takt tajmeru (ovakav ili onakav) Konfigurišemo prekide Dozvoljavamo prekide

Startujmo tajmer

Imamo i prekid...

Generalna Inicijalizacija hardvera

Generalna Inicijalizacija hardvera

Principi HAL drajvera kada su u pitanju kompleksne periferije: 1. Periferiju je najpre potrebno inicijalizovati 2. Inicijalizacija periferije se obavlja u drajveru ali se kao sporedni efekat poziva funkcija HAL_PPP_MspInit() koja inicijalizuje low-level hardverske resurse. 3. Ponekad je potrebno inicijalizovati i neke posebne delove periferije posebni fumkcijama ali to zavisi od aplikacije. 4. Perifereije tipično kreću sa željenim radom tek pošto se pokrenu funkcijom HAL_PPP_start() 5. Ukoliko periferija generiše prekide korisnik sam piše svoju prekidnu funkciju i u njoj poziva HAL_PPP_IRQHandler() funkciju u kojoj se servisira prekid. 6. Ta funkcija dalje poziva HAL_PPP_Callback() funkciju koja ustvari reaguje na prekid 7. Korisnik sam implementira tu Callback funkciju.

Zadatak Najpre pitanje: Koji tajmer je aktivan? Zadatak 1: promeniti podešavanja tako da sve ovo radi tajmer 4. Zadatak 2: Proširiti projekat tako da rade oba tajmera istovremeno, ali sa neki različitim podešavanjima. Problem: MspInit() funkciju će pozvati drajver prilikom inicijalizacije svakog tajmera. Kako da znam za potrebe čije inicijalizacije se poziva MspInit()?

Zato se uvek prosleđuju i pokazivači na objekte koji se inicijalizuju... Hint: https://my.st.com/public/ste2ecommunities/mcu/lists/stm32java /Attachments/1249/tim.c Predviđen pokazivač na strukturu se nigde ne koristi???