AVR assembly és AVR C modulok együttes használata AVR C projektben. Összeállította: Sándor Tamás

Méret: px
Mutatás kezdődik a ... oldaltól:

Download "AVR assembly és AVR C modulok együttes használata AVR C projektben. Összeállította: Sándor Tamás"

Átírás

1 AVR assembly és AVR C modulok együttes használata AVR C projektben Összeállította: Sándor Tamás //AVR C project létrehozása során a main.c AVR C modulba a következő forráskód részletet //elhelyezni. A 3. oldalon található assembly forráskódot egy kieg.s fájlban helyezzük el, amelyből a.s //kiterjesztés az assembly forráskódra utal. A további szintaktikai és használati összefoglaló a 4. //oldalon került összefoglalásra. // A szükséges header állományok #include <avr/io.h> #include <avr/interrupt.h> //Az assembly modulban található szubrutinok felsorolása. Az extern kulcsszó //segítségével jelezhetjük azt, hogy a következő négy függvény egy külső modulban fog //majd előfordulni. A felsorolt szubrutinoknak nulla (void), egy vagy több bemenő //paramétere is lehet. A LED in_asm(uint8_t) egy egy bájtos előjelnélküli bemenő //paraméterrel rendelkezik. Maga LED in_asm szubrutin az átadott paramétert az r24 //regiszteren keresztül veszi át. A seven_segment_in_asm(uint8_t, uint8_t) esetében már //két darab előjelnélküli egy bájtos érték kerül átadásra a seven_segment_in_asm //szubrutinnak az r24-es és a r22-es regisztereken keresztül. extern void init_in_asm(void); extern void LED in_asm(uint8_t); extern uint8_t GOMB_in_in_asm(void); extern void seven_segment_in_asm(uint8_t, uint8_t); void balra(void); void jobbra(void); void balra_jobbra(void); void knight_rider(void); volatile uint8_t LED=0x01, LED1=0x01, LED2=0x80, GOMB=0, seven_seg[4]=0, digit=0; volatile uint8_t irany=0, timer_num=0; int main(void) init_in_asm(); while(1) urn 0; ISR(TIMER0_OVF_vect) int8_t GOMB1=0; if(timer_num == 0x40) GOMB1=GOMB_in_in_asm(); if(gomb1) GOMB=GOMB1; if(gomb==4)led=0x01; if(gomb==8)led1=0x01;led2=0x80; switch(gomb) case 1: balra(); break;

2 case 2: jobbra(); break; case 4: balra_jobbra(); break; case 8: knight_rider(); break; if(!timer_num) if(seven_seg[0]==9) seven_seg[0]=0; if(seven_seg[1]==9) seven_seg[1]=0; if(seven_seg[2]==9) seven_seg[2]=0; if(seven_seg[3]==9) seven_seg[3]=0; seven_seg[3]++; seven_seg[2]++; seven_seg[1]++; seven_seg[0]++; timer_num--; LED in_asm(led); seven_segment_in_asm(seven_seg[digit],digit); if(digit==3) digit=0; digit++; uint8_t negativ(int8_t val) urn ~val; void balra() if(led==0x80) LED=1; LED<<=1; void jobbra() if(led==0x01) LED=0x80; LED>>=1; void balra_jobbra() if(led==0x01) irany=0; if(led==0x80) irany=1; if(irany) LED>>=1; LED<<=1; void knight_rider() if(led1==0x01) LED1=0x80; LED1>>=1; if(led2==0x80) LED2=0x01; LED2<<=1; LED=LED1 LED2;

3

4 #define SFR_OFFSET 0 #include <avr/io.h> // Use 0 for the I/O register offset // Defines I/O port aliases.global init_in_asm.global LED in_asm.global GOMB_in_in_asm.global seven_segment_in_asm.section.text init_in_asm: ldi r16, 0xff DDRA, r16 ldi r16, 0xf0 DDRB, r16 DDRD, r16 eor r16, r16 sts DDRG, r16 ldi r16, 4 TCCR0, r16 ldi r16, 1 TIMSK, r16 sei ; Defines a code section LED in_asm: swap r24 swap r24 PORTD, r24 PORTB, r24 ; GOMB_in_in_asm: lds r24, PING ; seven_segment_in_asm: ori r24, 0x80 swap r22 or r24, r22 PORTA, r24 call negativ neg r24

5 C és az assembly nyelv együttes használata Lehetséges C függvény hívása assembly függvényként Lehetséges assembly modulból C függvény hívására AVR Studio assembler projektjében nem lehetséges integrálni a két nyelvet (C és assembly), kizárólag csak az AVR C projektben. Az AVR C projektekben a GCC compiler mind a két C és assembly nyelvet lehet használni..s fájlok (megfelel a.asm fájlnak) assembly forráskód,.c fájlok C forráskóddal,.cpp fájlok C++ forráskóddal. Néhány különbség van az AVR Studio assembler és GCC tools szintaktikája között, ezek a következők: #include <avr/io.h> megfelel a.include "m32def.inc".segment.data megfelel a.dseg.segment.text megfelel a.cseg.asciz "message" megfelel a.db "message", 0 (a karaktertömb automatikusan 0-val kerül feltöltésre) lo8() megfelel a HIGH() hi8() megfelel a LOW() az.s fájlkiterjesztés megfelel az.asm fájlkiterjesztésnek Nem kell.org direktiva, hanem a fordító automatikusan kezeli a kódszegmens kezdetét, adatszegmens esetében pedig 0x60 foglalhatunk csak területet, ez ATMEGA128 esetében 0x100-t jelenti. Az.s kiterjesztésű assembly forrást tartalmazó fájl a következő GCC direktívákat kell tartalmaznia: o #include <avr/io.h> definiálja a PORTB, SREG, stb. o #define SFR_OFFSET 0 o C Compiler a következő regisztereket használja: függvények paraméterátadásra a R25:8 (R25-től R8-ig) uint8_t előjelnélküli 8-bites egész uint8_t function(uint8_t i, uint8_t j); i átadásra kerül az R25:24 regiszterekben, mivel 8 bites így csak a R24-ben j átadásra kerül az R23:22 regiszterekben, mivel 8 bites így csak a R22-ben 8-bites változó esetében az R24-es regiszterben történik a paraméter 16-bites változó esetében az R25:R24-es regiszterben történik a paraméter 32-bites változó esetében az R25:R22-es regiszterben történik a paraméter 64-bites változó esetében az R25:R18-es regiszterben történik a paraméter

3. Hőmérők elkészítése

3. Hőmérők elkészítése 3. Hőmérők elkészítése A jelenlegi hőmérőink pt100-as ellenállás hőmérők. Ezeknek az ellenállását szükséges digitális jellé alakítani, és egy 7-szegmenses kijelzővel egy tized pontossággal kijelezni, valamint

Részletesebben

Mikrovezérlők programozása

Mikrovezérlők programozása Analóg és digitális rsz-ek megvalósítása prog. mikroák-kel BMEVIEEM371 Budapesti Műszaki és Gazdaságtudományi Egyetem Mikrovezérlők programozása Nagy Gergely Elektronikus Eszközök Tanszéke (BME) 2013.

Részletesebben

[cimke:] [feltétel] utasítás paraméterek [; megjegyzés]

[cimke:] [feltétel] utasítás paraméterek [; megjegyzés] Szoftver fejlesztés Egy adott mikroprocesszoros rendszer számára a szükséges szoftver kifejlesztése több lépésből áll: 1. Forrás nyelven megírt program(ok) lefordítása gépi kódra, amihez megfelelő fejlesztő

Részletesebben

Az AVR programozás alapjai. Előadja: Both Tamás

Az AVR programozás alapjai. Előadja: Both Tamás Az AVR programozás alapjai Előadja: Both Tamás Fordító C nyelven programozunk Ehhez az AVR-GCC fordító áll rendelkezésre Ennek használatához a WinAVR-t kell telepíteni Teljes értékű C fordító, minden megengedett,

Részletesebben

Bevezetés a mikrovezérlők programozásába: WS2812 RGB LED-ek vezérlése

Bevezetés a mikrovezérlők programozásába: WS2812 RGB LED-ek vezérlése Bevezetés a mikrovezérlők programozásába: WS2812 RGB LED-ek vezérlése 1 Megjegyzések: Lab 2 projektek Neopixel_simple egy WS2812 LED beállítása előre egy megadott színre. Neopixel_random véletlen színát

Részletesebben

Assembly Rekurzív függvények, EXE, C programok. Iványi Péter

Assembly Rekurzív függvények, EXE, C programok. Iványi Péter Assembly Rekurzív függvények, EXE, C programok Iványi Péter Algoritmusok előadás Rekurzív függvény FÜGGVÉNY nyomtat(n) print n HA n!= 0 nyomtat(n-1) ELÁGAZÁS VÉGE FÜGGVÉNY VÉGE Rekurzív függvény org 100h

Részletesebben

Mikrovezérlők programozása

Mikrovezérlők programozása Mikrovezérlők programozása Nagy Gergely BME EET 2012. április 4. ebook ready 1 Bevezetés A mikrovezérlők programozása Bitműveletek Egy egyszerű program felépítése Az inicializáló függvény 2 Az számláló

Részletesebben

Labor 2 Mikrovezérlők

Labor 2 Mikrovezérlők Labor 2 Mikrovezérlők ATMEL AVR - ARDUINO BUDAI TAMÁS 2015. 09. 06. Tartalom Mikrovezérlők Mikrovezérlők felépítése, működése Mikrovezérlő típusok, gyártók Mikrovezérlők perifériái Mikrovezérlők programozása

Részletesebben

Vezérlés és irányítástechnológia (Mikroprocesszoros irányítás)

Vezérlés és irányítástechnológia (Mikroprocesszoros irányítás) Vezérlés és irányítástechnológia (Mikroprocesszoros irányítás) 2.1. Lámpa bekapcsolása 2.2. Lámpa villogtatása 2.3. Futófény programozása 2.4. Fény futtatása balra, jobbra 2.5. Fénysáv megjelenítése 2.6.

Részletesebben

A PROGAMOZÁS ALAPJAI 1. Függvény mint függvény paramétere. Függvény mint függvény paramétere. Függvény mint függvény paramétere

A PROGAMOZÁS ALAPJAI 1. Függvény mint függvény paramétere. Függvény mint függvény paramétere. Függvény mint függvény paramétere 2012. április 10. A PROGAMOZÁS ALAPJAI 1 Vitéz András egyetemi adjunktus BME Híradástechnikai Tanszék vitez@hit.bme.hu Miről lesz ma szó? alaki szabályok használata - mintapélda használata - mintapélda

Részletesebben

11.3.1. Az MSP430 energiatakarékos használata

11.3.1. Az MSP430 energiatakarékos használata 11.3.1. Az MSP430 energiatakarékos használata A Texas Instruments ##LINK: www.ti.com## által fejlesztett MSP430 ##Mixed Signal Processor## család tagjai létrehozásakor a tervezők fontos célja volt a rendkívül

Részletesebben

Információs Technológia

Információs Technológia Információs Technológia A C programozási nyelv (Típusok és operátorok) Fodor Attila Pannon Egyetem Műszaki Informatika Kar Villamosmérnöki és Információs Rendszerek Tanszék foa@almos.vein.hu 2010 szeptember

Részletesebben

Készítette: Ruzsinszki Gábor webmaster442

Készítette: Ruzsinszki Gábor webmaster442 Készítette: Ruzsinszki Gábor webmaster442 Szeged SZISZSZI Déri Miksa tagintézményben tanítok mikrovezérlők alkalmazásához kapcsolódó informatikai és elektronikai tárgyakat. 2008 óta foglalkozom mikrovezérlős

Részletesebben

Programozás alapjai C nyelv 5. gyakorlat. Írjunk ki fordítva! Írjunk ki fordítva! (3)

Programozás alapjai C nyelv 5. gyakorlat. Írjunk ki fordítva! Írjunk ki fordítva! (3) Programozás alapjai C nyelv 5. gyakorlat Szeberényi Imre BME IIT Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I. 2005.10.17. -1- Tömbök Azonos típusú adatok tárolására. Index

Részletesebben

ö Á ö É É ü ü É É Ő ö É ö Á ó ü É Ó Ö Á ú é ü ö é Ö é ü é é ü ü é é Ü é ö ö Ö ö é Á é é é é é ó é é é é ü é ö ö ö í é ü ú é é é ü ü é é é ü é é ö é ö é é ó ö ü é é é é ó ó ö í ó é ó é é é ó é é é ű ö é

Részletesebben

Á Á É Á Ü ö ű ű ő í ő ö ő í ő ö í É ő í ű ö ő ő í ö ü ő ő ü ő ü í ö ö ü ö ü ő ő ü ü ő ü ö ő ő ő ő íő ö ö ö ü ő ő ő ő í ú ő ő í ü ö ő í ű ü ö ő ő ő ő í ú ö ö ő ö ö ö ö ü ő ő ö ő ő í í ő ö ü ö í ö ö ö ö

Részletesebben

ó Í ó ó Ü ó ő Ú ő É ó É Í ő Ö ő ő ó Íó ó Ú ó É Ö ó ő ő Ú Íő ő ő ő ő ő Ú ő ó ó ő ő ő ő ó ő ő ő ő ő ő Í ő ő ó ő ő ó ő Í ő ó ő ő ő ő ő ó ó ó ő ő ó ő ő ő ő ő ő ó ő ő ő ó ő ő Á ű ő ő ő ő ő ő Í ó ő ő ő ő ó ó

Részletesebben

Á Á Í ó ó ó ö ó Ü ö ú Í ó ö ö ó ú ö ó ö ö Ü ö ú ó ó ó ó ö ü ó ö ö ü Ü ö ö ú ó ó ö ú ö ó ó ó ó ö ó ö ó ö ó ö ű ö ö ö ű ö ö ű ö ö ö ű ö ö ó ö ö ó ó ü ö ö ű ö ö ö ó ö ű ö Ü ö ö ú ó ö ó ü ü ö ü ü ö Í ö ü ö

Részletesebben

ó ő ó ó ö ö ú Á Í ö ó ő ö ú Í ó ü ó ő ö ú ö ó ő ó ő ü ő ű ö ö ü ő ü ó Ó ö ó ó ő ő ő ö Í ó ö ö ö ó ő ö ő Í ü ö ö ö ö ö ö ő ö ö ö ö ú ú ű ö ű ó ó ö ö ő ű ö ú ö ö ö ö ö ó Á ö ö ö ő ő ó ő ő Ö ő ú ó ö ú ú ű

Részletesebben

Í ö Í ű ú ö ö ú ö É í í ö Ó ű í ö ö í ö ö ö í í ö í í ö ö í ö ö ö ű í ö ö ö ö ö ö ö ú ö í ö ö í ö ö ö ö ö ú ű ű ú ö ö í ö É í ö ö í ö ö ö ú ű ö ö í ö ú ű ö ö í í ú ö ö í ö í í ö ö ö ú ö ö ö ö Í ö ú ö ú

Részletesebben

Ő Ö ö Ö É Á Ü É ó É ó ü É É Ö Ö Á É Ő ú É Á ú Ő Ö Ü Ö Ö ü ó ó ü Ü ű ö ú ó Á í ó ö ö ö ö ó ü í í Á í Ó í ó ü Ö ö ú ó ó ö ü ó ó ö í í ű ö ó í ü í ö í í ű ö ü Ő ü ú Ö ö ó ö ó ö ö ö ü ó ö í ó Ö ö Ő ü Ö Ö ü

Részletesebben

ű í ö ö Á ü ü ö ö ö í í É ú ú ö ö ű í ö ü ö ú ü ű ú ö í í ú ö ú í ö ü í í ö í Á Ó É í ű ö ü ö ü ú ü ö ü ú ű ö ü ű ü í ü ű ü ü ö ű í ü í ö ü í í í í ö í ö ö ö Á ű ú ű ö ö ű í ö ö í ú í í ű í ö ú ö ö í Á

Részletesebben

ú ű ö ö ü ü Í ö ö ö ö É Í É ú ú É ú ú ö É ö Í Ü ú Í ö ö Í ú ö ö ö ö ü ö ö ú ü Ü ö ü Í ö ö ű ö ö Í ű ú ö ö ö ö Í ö ö ű ö ö Í ü Í ü ú Í É ö ö ü ö ö Ü ö ö Í ü Í ö ü Í Í ö Í ö Í ü ö ú Í ú Í ö É ú Í ö ö Í É

Részletesebben

Ő Ö Ü Ö Ö ő ü ó í ü ü ő ü ó Ö ó ő ó ó ő ó ő í ő í ü ő ö ö ö ü í ü ö ö ö ö Ö ő ő Ö ő í ó ő ó ő Ö í ő ő ő ő ü ő ő ö ó ű ö ó ö ú ő ő ó ü ö í ü ö ö ó í ú ő ó ő í ö ö ö í ő ö ő ő ó ü ö ú ü ő ó ó ő ó ő ó í í

Részletesebben

É É É Ó Ö É í Ö ő ü ó ő ó ű Á ű ó ő ó ü ó ő ű ő Ö ü É É É ó É ó ü ű í Ö ü ó ű í ó ő ó ő ü ó ü ő ó É Í ő ő ő Ú ó ő ő ő ó ű ó ő ó ü ő ő ő í ü ő ü ő ó Ü ő ó ő ő ó ő Ú ő ő ó ő í ó ő ü ó Í ő ő ü ő É í ő ü ó

Részletesebben

ő ö é ü ö é Ö é ő ü é í ü é é ő ö é ő ö Á ó ü ö é í é ö é Ö é ő ü ü é í é é ó é é í í é é ő ü í ő Ö í é ő é é ő é ő éü ú ü ö ő í Ú Ú ö É í í ü ó ó ó ü ő ö é í ó ö é í ö é é í ö é ó ű ő ö é ő ű ő í é í

Részletesebben

ú Ö ü ő ő ú ú ű ő í ó ó í ó ú ő ü ú ű ő í ó ó í ó ű í ó ő Í ő ü ú ő ő í ó ú Ö ő Ü ó ő ő É ó ó ó ó ő ő ú ű ő í ó ú ű ő ú ú ő ű ő í ő ó í ű ő ü ú ó ő ő ó ű ő ő í í í í ó ű ú ő Á ó ő Á ú ó ó ő ó í ó ű í í

Részletesebben

ú ő ó ú ö ő ü ú ö ő ó ó ó ü ő í ö í ó ú ő ó ó ó ú ó ú ó ő ő ö ö ő ó ú ó ő ó ő í Á Á ö ö ó ő ú ö ő ú ó í ő ü ü ü í ú ü ü ü ó ú í ü í ó ő ó ő í ú ü ú ó ü ü ö ó ü ó í ü ó ő ö ö í ü ú ó ő ó í ó ő ó í ó ó í

Részletesebben

Á ó ü ő Ö Á ü ó ü ő Í ü Í Ó ü ő ő ó ó ó Í ó ü ó ő ő ó ó ü ú Í ő ő ó Ó ő ó ü ó Á ü ó ő ó Í Á Í ő ó ó ó ő ő Á ó ó ú ő Í ő ű ó Ó ü ó ó ú ó ő ú ü ő ó ó ó ő ó ó Ö ó ó ő ó ő ó ő ü ű ő ó ó ő ú ő ú ü Í ü ő ó ó

Részletesebben

ü ö Ö ü ó ü ó ó ó Á Ő É ö Ö ü ó ü ú ó ó ó ö ó í í ö ú Ó É ö Ö ü ó ü ü ó ó ó ö ó í ü ö Ö ó ü ü ü ó ó ó ö ó ü í í í ó í ú ű ű ü ű ú í ü ö ö í ö ú ü ó ú ú ű í ü ö ö ó ú ó í ü ú ó ü ó ó ű ó í ü ű ü í ű í

Részletesebben

ü Ü ö ö ú Í ó í í ó ó ó ü ó ű ó í ó ó í ö ó ö ú ü ö Í í í ó ó ó ó Í ó ü ű ó í ó ó í ó Í í ó ü ö ú ó ó ó í í ó í í ű í ü ö í ó í ö í ú ó í ú ü ú Í í ü Í í í ó ü ö í ó í ó ü ö ó Í í í ó Í É ó ó ó Í í ö ö

Részletesebben

Á Ó Á Ü ő ű Ú ö í ő Ó ú ö Á ú Ű Ó ű Ó í ű ö í ö ő ö ö í ö ö ő É ö Á ű Ó ö Á Ó ö í Á í í ö ű ö ú ö ö ú ö Ú ö ű Ó Ú ö Á í Ó í í Í í í Í ö Ú ö Á ú í Ó ő í ú ö Á ú Á í ú ö Á ú í ö Á ú í Ó ö ű Ó Ú Ú ű ő ö ü

Részletesebben

É ő ő íí í ú í ő Ő ő ü ü ü ü ü Ü Ü ő ő ő ő í ő ő ő í íí í ő ű í Ó Ó Ó í Ö Ö í Á Ö Ü Ö É í Ö í ő Ö Ö Ö Á í Á ő ő ő ő É Í Í ő ú Ú ú Ö í ő Á Ö ő Í Í ő ű í ő ú ü íí í Ö ő ő ő ő Í ő ő ő ő í ő ő ő ő í É É í

Részletesebben

í ö ő í ú ö ö í íí ü Ú Í Á ú ü í ö í ő í ö ő ű Í í ö ü ü ő ő ú í ő í ő ü ü ő Í ő Í í ü ö ö ö ö í ű ő ö ö ö í ü í Ó ö í ő ő í í ő Ó Ú Ő Íő Ő Ó ő ö ő ü ű í í ü ú Ő Í ő ő ő í ü ő É í Ő í ü ü ö ő í ü ö ö ü

Részletesebben

ö Ö ö Ö ö ö ö ö ö ö ö Ö ö Ö ö ö ö ö ö ű ö ö ö ö Ö ö Ő Ü ö ö Ö Ö ö ö ö ö ö ö ö ö Ü ö ö ö ű ö ö ö ö ű ö ű ö Ö Ü Ü ö ö ú Ű ÍŐ Ö Ő ÍŐ ö ö ö ö ű ö Ö Ö Ó ö ö Ö ö ö Ö ö ö Ö ö ű ö ö É ö ö Í Á Á Ő ű ö ű ú Ö Ü Á

Részletesebben

í ö Ö Á í ö í í ö í ö ö í í ö ö ö ö í í ö í ö í ö í ü í í ö í í í í í ö ö í í í ú ö í í ö Á Á Á ü ú í ö Á í í í ö í í ü ö ö ö ö í ö í í í ú í í ű ú í í í í ö í ű í ö ö ü ö ű ö ö í í í í í ö ü í ö í ö ű

Részletesebben

ö é Ö é ü ö é ü ö é Ö é ü í ü ü ü é é ü é é Ö ö é é é é ö ü ö ü ö é é ö é é ö é é ö ö é í é ü é é é í é ö é é ö é ö é ü é ü ú é é é é é í é é é é ö ö é é ö ö é é í í é í é ü ö ü Á é ö Á í ö í é ö ü ö é

Részletesebben

ö ú í í í ő ű Ü Ű Í í Ő Á Á Ö Ő Ű Í ö ú í í í ú ő ö ű í í í ö Ó ő í í í ö ú í ö ö ö ö Ü ő ö ö ö ú ű ő ú ű ö ö ú ö ö ő Ü ö ö í í ő ö í í í í í í ö ö í ö ö í í ő í ő ö ő í ú í ö í ö í í ö ű ö ö Ó Ü ö ő ő

Részletesebben

É ö ö Í Í Í Ó Í Í Á Ó Á Ü Ú Í Á Á ű Á Ó Í Í É Á Ó Á Á ö ö Á Í Á Á ö ö ű ö ö Í Í ű Ö ű ö ö ű Í Í Ü ö ö Ó ű Í ö ö Í ö ö Ó ö Ö Í ö ö Ö ö ű ö ö Ó Í ű Ó ö ö ű ö ű Ö Ü Ö ű ű ö ö ö ö ö ö Íö ö Í Ö Ó ű ö ű ö ö

Részletesebben

ü ó Ö ü í ü ü ü ö É ó ó í ó ó ö ó ö ö ö í í ű ü ü ü Í í ü ü ü ö í ó í ó ó í ó í É ü ö í Í É í ö ú í ó í ö ö ó í ö ó ó ó ö ó ö í í ó ó í ó ó Ö í ö ö ó ö ó ú ó ö ó í ó ó í í ü ó í ö ó ó ü ü ó ö ó ú í ó í

Részletesebben

Í ú ó ú ó ú ó ó Á ó ó ö ű ú Á ú ó ó ó Í ó ö ö ö Í ö ó ó ö ó ó ó ö ó ö ö ö ö ó ö ó ö ó ü ó ó ü ó ü ö ö ö ö Ő ó ó Íó ó ó ü ó ű ó ó ű ű ó ö ü ö ú ö ü ű ö ö ö ö ó ú ö ö ö ü Í Í Í Á ó ó ú ü ú Á ü ö Á ó ü ó

Részletesebben

12.1.1. A Picoblaze Core implementálása FPGA-ba

12.1.1. A Picoblaze Core implementálása FPGA-ba 12.1.1. A Picoblaze Core implementálása FPGA-ba A Picoblaze processzor Ebben a fejezetben kerül bemutatásra a Pikoblaze-zel való munka. A Picoblaze szoftveres processzort alkotója Ken Chapman a Xilinx

Részletesebben

USB HID Demo @watt. 1. Bevezetés. 2. A Hardver

USB HID Demo @watt. 1. Bevezetés. 2. A Hardver USB HID Demo @watt 1. Bevezetés Ebben a cikkben egy egyszerő kommunikációs kapcsolatot próbálok bemutatni, elsısorban gyakorlati oldalról egy egyszerő hardveren, valamint a PIC(C18) és a PC(VB6) oldali

Részletesebben

Digitális technika II. (vimia111) 5. gyakorlat: Mikroprocesszoros tervezés, egyszerű feladatok HW és SW megvalósítása gépi szintű programozással

Digitális technika II. (vimia111) 5. gyakorlat: Mikroprocesszoros tervezés, egyszerű feladatok HW és SW megvalósítása gépi szintű programozással Digitális technika II. (vimia111) 5. gyakorlat: Mikroprocesszoros tervezés, egyszerű feladatok HW és SW megvalósítása gépi szintű programozással Megoldás Elméleti anyag: Processzor belső felépítése, adat

Részletesebben

Egyszerű RISC CPU tervezése

Egyszerű RISC CPU tervezése IC és MEMS tervezés laboratórium BMEVIEEM314 Budapesti Műszaki és Gazdaságtudományi Egyetem Egyszerű RISC CPU tervezése Nagy Gergely Elektronikus Eszközök Tanszéke (BME) 2013. február 14. Nagy Gergely

Részletesebben

Budapesti Műszaki- és Gazdaságtudományi Egyetem Villamosmérnöki és Informatikai Kar MIT. Nagyteljesítményű mikrovezérlők tantárgy [vimim342]

Budapesti Műszaki- és Gazdaságtudományi Egyetem Villamosmérnöki és Informatikai Kar MIT. Nagyteljesítményű mikrovezérlők tantárgy [vimim342] Budapesti Műszaki- és Gazdaságtudományi Egyetem Villamosmérnöki és Informatikai Kar MIT Nagyteljesítményű mikrovezérlők tantárgy [vimim342] 8x8x8 LED Cube Készítette: Szikra István URLJRN Tartalomjegyzék

Részletesebben

C nyelvű programfejlesztés PIC18 mikrovezérlőkre. Összeállította: Molnár Zsolt

C nyelvű programfejlesztés PIC18 mikrovezérlőkre. Összeállította: Molnár Zsolt C nyelvű programfejlesztés PIC18 mikrovezérlőkre Összeállította: Molnár Zsolt Óbudai Egyetem, KVK, MAI 2012. november. Bevezetés A gyakorlatban felmerülő, mikrovezérlővel felépülő áramkörök esetében az

Részletesebben

Elôszó a magyar kiadáshoz A Kiadó Elôszó

Elôszó a magyar kiadáshoz A Kiadó Elôszó Elôszó a magyar kiadáshoz A C programnyelvet eredetileg a Bell Laboratóriumban az UNIX operációs rendszerhez, az alatt fejlesztették ki PDP-11_ számítógépen. A kifejlesztése óta eltelt évek során bebizonyosodott,

Részletesebben

ÉRZÉKELŐK ÉS BEAVATKOZÓK I. GY1.1 SENSACT0 PÉLDAPROGRAM

ÉRZÉKELŐK ÉS BEAVATKOZÓK I. GY1.1 SENSACT0 PÉLDAPROGRAM ÉRZÉKELŐK ÉS BEAVATKOZÓK I. GY1.1 SENSACT0 PÉLDAPROGRAM Dr. Soumelidis Alexandros 2018.09.06. BME KÖZLEKEDÉSMÉRNÖKI ÉS JÁRMŰMÉRNÖKI KAR 32708-2/2017/INTFIN SZÁMÚ EMMI ÁLTAL TÁMOGATOTT TANANYAG SensAct0

Részletesebben

T Bird 2. AVR fejlesztőpanel. Használati utasítás. Gyártja: BioDigit Kft. Forgalmazza: HEStore.hu webáruház. BioDigit Kft, 2012. Minden jog fenntartva

T Bird 2. AVR fejlesztőpanel. Használati utasítás. Gyártja: BioDigit Kft. Forgalmazza: HEStore.hu webáruház. BioDigit Kft, 2012. Minden jog fenntartva T Bird 2 AVR fejlesztőpanel Használati utasítás Gyártja: BioDigit Kft Forgalmazza: HEStore.hu webáruház BioDigit Kft, 2012 Minden jog fenntartva Főbb tulajdonságok ATMEL AVR Atmega128 típusú mikrovezérlő

Részletesebben

Feladatok a 2. mérésre alkalmas mérőhelyen

Feladatok a 2. mérésre alkalmas mérőhelyen Feladatok a 2. mérésre alkalmas mérőhelyen 2-1 Báris számok beolvasása Írjon egy programot az AVR Experiment kártyára, amely 8 bites báris számot olvas be a kapcsolósorról, két részletben. A kapcsolókon

Részletesebben

Programozás C nyelven FELÜLNÉZETBŐL elhullatott MORZSÁK. Sapientia EMTE

Programozás C nyelven FELÜLNÉZETBŐL elhullatott MORZSÁK. Sapientia EMTE Programozás C nyelven FELÜLNÉZETBŐL elhullatott MORZSÁK Sapientia EMTE 2015-16 1 Felülnézet 1 Feltételes fordítás #if, #else, #elif, #endif, #ifdef, #ifndef stb. Felülnézet 2 #include: hatására a preprocesszor

Részletesebben

Bevezetés a mikrovezérlők programozásába: MAX6958: Hétszegmenses LED kijelző vezérlő

Bevezetés a mikrovezérlők programozásába: MAX6958: Hétszegmenses LED kijelző vezérlő Bevezetés a mikrovezérlők programozásába: MAX6958: Hétszegmenses LED kijelző vezérlő 1 Lab 20 projektek MiniPirate.ino Arduino Mini Pirate interaktív vizsgálóprogram, amelyet most az I2C busz kézivezérlésére

Részletesebben

Mérési útmutató. A/D konverteres mérés. // Első lépésként tanulmányozzuk a digitális jelfeldolgozás előnyeit és határait.

Mérési útmutató. A/D konverteres mérés. // Első lépésként tanulmányozzuk a digitális jelfeldolgozás előnyeit és határait. Mérési útmutató A/D konverteres mérés 1. Az A/D átalakítók főbb típusai és rövid leírásuk // Első lépésként tanulmányozzuk a digitális jelfeldolgozás előnyeit és határait. Csoportosítás polaritás szempontjából:

Részletesebben

16F628A megszakítás kezelése

16F628A megszakítás kezelése 16F628A megszakítás kezelése A 'megszakítás' azt jelenti, hogy a program normális, szekvenciális futása valamilyen külső hatás miatt átmenetileg felfüggesztődik, és a vezérlést egy külön rutin, a megszakításkezelő

Részletesebben

Járműfedélzeti rendszerek I. 3. előadás Dr. Bécsi Tamás

Járműfedélzeti rendszerek I. 3. előadás Dr. Bécsi Tamás Járműfedélzeti rendszerek I. 3. előadás Dr. Bécsi Tamás ATmega128 CPU Single-level pipelining Egyciklusú ALU működés Reg. reg., reg. konst. közötti műveletek 32 x 8 bit általános célú regiszter Egyciklusú

Részletesebben

0 0 1 Dekódolás. Az órajel hatására a beolvasott utasítás kód tárolódik az IC regiszterben, valamint a PC értéke növekszik.

0 0 1 Dekódolás. Az órajel hatására a beolvasott utasítás kód tárolódik az IC regiszterben, valamint a PC értéke növekszik. Teszt áramkör A CPU ból és kiegészítő áramkörökből kialakított számítógépet összekötjük az FPGA kártyán lévő ki és bemeneti eszközökkel, hogy az áramkör működése tesztelhető legyen. Eszközök A kártyán

Részletesebben

1. ábra: Perifériára való írás idődiagramja

1. ábra: Perifériára való írás idődiagramja BELÉPTETŐ RENDSZER TERVEZÉSE A tárgy első részében tanult ismeretek részbeni összefoglalására tervezzük meg egy egyszerű mikroprocesszoros rendszer hardverét, és írjuk meg működtető szoftverét! A feladat

Részletesebben

Mechatronika és mikroszámítógépek 2017/2018 I. félév. Bevezetés a C nyelvbe

Mechatronika és mikroszámítógépek 2017/2018 I. félév. Bevezetés a C nyelvbe Mechatronika és mikroszámítógépek 2017/2018 I. félév Bevezetés a C nyelvbe A C programozási nyelv A C egy általános célú programozási nyelv, melyet Dennis Ritchie fejlesztett ki Ken Thompson segítségével

Részletesebben

Bevezetés a C programozási nyelvbe. Az Általános Informatikai Tanszék C nyelvi kódolási szabványa

Bevezetés a C programozási nyelvbe. Az Általános Informatikai Tanszék C nyelvi kódolási szabványa Miskolci Egyetem Általános Informatikai Tanszék Bevezetés a C programozási nyelvbe Az Általános Informatikai Tanszék C nyelvi kódolási szabványa Oktatási segédletek a levelező műszaki informatikus hallgatók

Részletesebben

Újrakonfigurálható eszközök

Újrakonfigurálható eszközök Újrakonfigurálható eszközök 4. Verilog példaprogramok EPM240-hez Hobbielektronika csoport 2017/2018 1 Debreceni Megtestesülés Plébánia Tartalom C-M240 fejlesztői kártya, felhasznált kivezetések 15-fdiv-LED:

Részletesebben

A Számítógépek felépítése, mőködési módjai

A Számítógépek felépítése, mőködési módjai Mechatronika, Optika és Gépészeti Informatika Tanszék Kovács Endre tud. Mts. A Számítógépek felépítése, mőködési módjai Mikroprocesszoros Rendszerek Felépítése Buszrendszer CPU OPERATÍV TÁR µ processzor

Részletesebben

Információs Technológia

Információs Technológia Információs Technológia (Struktúra, mutatók, függvényhívás) Fodor Attila Pannon Egyetem Műszaki Informatika Kar Villamosmérnöki és Információs Rendszerek Tanszék foa@almos.vein.hu 2010 október 14/21. Struktúra

Részletesebben

The modular mitmót system. DPY kijelző kártya C API

The modular mitmót system. DPY kijelző kártya C API The modular mitmót system DPY kijelző kártya C API Dokumentációkód: -D 01.0.0.0 Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Beágyazott Információs Rendszerek

Részletesebben

Az assembly nyelv sor-orientált nyelv, tehát minden sorba pontosan egy utasítás kerül. Egy sor mezőkből áll a következőképpen:

Az assembly nyelv sor-orientált nyelv, tehát minden sorba pontosan egy utasítás kerül. Egy sor mezőkből áll a következőképpen: Informatika szigorlat 16-os tétel: Az assembly nyelvek tulajdonságai és fordítása Az assembly nyelv tulajdonképpen a gépi kód szimbolikus megfelelője, azért jött létre, hogy könnyebben lehessen programozni

Részletesebben

Mintavételes szabályozás mikrovezérlő segítségével

Mintavételes szabályozás mikrovezérlő segítségével Automatizálási Tanszék Mintavételes szabályozás mikrovezérlő segítségével Budai Tamás budai.tamas@sze.hu http://maxwell.sze.hu/~budait Tartalom Mikrovezérlőkről röviden Programozási alapismeretek ismétlés

Részletesebben

Programozás II gyakorlat. 4. Öröklődés

Programozás II gyakorlat. 4. Öröklődés Programozás II gyakorlat 4. Öröklődés Feladat Egy játékfejlesztő cég olyan programot fejleszt, amely nyilvántartja az alkalmazottai adatait. Tároljuk minden személy: Nevét (legfeljebb 50 karakter) Születési

Részletesebben

Bevezetés a mikrovezérlők programozásába: Fényérzékelés, fénymérés

Bevezetés a mikrovezérlők programozásába: Fényérzékelés, fénymérés Bevezetés a mikrovezérlők programozásába: Fényérzékelés, fénymérés 1 Lab 19 projektek LDR_test.ino tesztprogram a fényérzékeny ellenálláshoz (LDR) TLS2561_and_LDR.ino LDR kalibrálása TLS2561 fénymérővel

Részletesebben

ISE makró (saját alkatrész) készítése

ISE makró (saját alkatrész) készítése ISE makró (saját alkatrész) készítése 1. Makró (saját alkatrész) hozzáadása meglévő projekthez... 2 1.1. Kapcsolási rajz alapú makró készítése... 2 1.2. Kapcsolási rajz alapú saját makró javítása... 4

Részletesebben

I. C8051Fxxx mikrovezérlők hardverfelépítése, működése. II. C8051Fxxx mikrovezérlők programozása. III. Digitális perifériák

I. C8051Fxxx mikrovezérlők hardverfelépítése, működése. II. C8051Fxxx mikrovezérlők programozása. III. Digitális perifériák I. C8051Fxxx mikrovezérlők hardverfelépítése, működése 1. Adja meg a belső RAM felépítését! 2. Miben különbözik a belső RAM alsó és felső felének elérhetősége? 3. Hogyan érhetők el az SFR regiszterek?

Részletesebben

1. Az utasítás beolvasása a processzorba

1. Az utasítás beolvasása a processzorba A MIKROPROCESSZOR A mikroprocesszor olyan nagy bonyolultságú félvezető eszköz, amely a digitális számítógép központi egységének a feladatait végzi el. Dekódolja az uatasításokat, vezérli a műveletek elvégzéséhez

Részletesebben

Programozási AVR mikrovezérlők a PICKit2 Programozó

Programozási AVR mikrovezérlők a PICKit2 Programozó 1 / 16 2010.08.13. 0:19 PICKit2 AVRISP Programozási AVR mikrovezérlők a PICKit2 Programozó ÉS használata PICKit2, menta AZ USB - Soros átalakító Otthon Programozási Atmel AVRs a PICKit2 programozó Segítségével

Részletesebben

T Bird 2. AVR fejlesztőpanel. Használati utasítás. Gyártja: BioDigit Kft. Forgalmazza: HEStore.hu webáruház. BioDigit Kft, 2012. Minden jog fenntartva

T Bird 2. AVR fejlesztőpanel. Használati utasítás. Gyártja: BioDigit Kft. Forgalmazza: HEStore.hu webáruház. BioDigit Kft, 2012. Minden jog fenntartva T Bird 2 AVR fejlesztőpanel Használati utasítás Gyártja: BioDigit Kft Forgalmazza: HEStore.hu webáruház BioDigit Kft, 2012 Minden jog fenntartva Főbb tulajdonságok ATMEL AVR Atmega128 típusú mikrovezérlő

Részletesebben

Mikroprocesszor CPU. C Central Központi. P Processing Számító. U Unit Egység

Mikroprocesszor CPU. C Central Központi. P Processing Számító. U Unit Egység Mikroprocesszor CPU C Central Központi P Processing Számító U Unit Egység A mikroprocesszor általános belső felépítése 1-1 BUSZ Utasítás dekóder 1-1 BUSZ Az utasítás regiszterben levő utasítás értelmezését

Részletesebben

Mérési jegyzőkönyv. az ötödik méréshez

Mérési jegyzőkönyv. az ötödik méréshez Mérési jegyzőkönyv az ötödik méréshez A mérés időpontja: 2007-10-30 A mérést végezték: Nyíri Gábor kdu012 mérőcsoport A mérést vezető oktató neve: Szántó Péter A jegyzőkönyvet tartalmazó fájl neve: ikdu0125.doc

Részletesebben

4. Programozási nyelvek osztályozása. Amatőr és professzionális

4. Programozási nyelvek osztályozása. Amatőr és professzionális 4. Programozási nyelvek osztályozása. Amatőr és professzionális programozási nyelvek. Számítási modellek (Neumann-elvű, automataelvű, funkcionális, logikai). Programozási nyelvekkel kapcsolatos fogalmak

Részletesebben

Az MSP430 mikrovezérlők digitális I/O programozása

Az MSP430 mikrovezérlők digitális I/O programozása 10.2.1. Az MSP430 mikrovezérlők digitális I/O programozása Az MSP430 mikrovezérlők esetében minden kimeneti / bemeneti (I/O) vonal önállóan konfigurálható, az P1. és P2. csoportnak van megszakítás létrehozó

Részletesebben

The modular mitmót system. Mitmót fakultatív labor I.

The modular mitmót system. Mitmót fakultatív labor I. The modular mitmót system Ismerkedés a fejlesztő eszközökkel Hardver közeli programozás API készítés (példa) Egyszerű mintaalkalmazás Dokumentációkód: 2006. szeptember Budapesti Műszaki és Gazdaságtudományi

Részletesebben

Bevezetés a mikrovezérlők programozásába: I/O portok kezelése, számrendszerek, bitműveletek

Bevezetés a mikrovezérlők programozásába: I/O portok kezelése, számrendszerek, bitműveletek Bevezetés a mikrovezérlők programozásába: I/O portok kezelése, számrendszerek, bitműveletek 1 Ajánlott irodalom Aduino LLC.: Arduino Language Reference ATMEL: ATmega328p mikrovezérlő adatlapja Brian W.

Részletesebben

USBTiny-MKII programozó

USBTiny-MKII programozó USBTiny-MKII programozó Software telepítés Miután elkészítettük a programozónkat és az hibátlanra sikerült (forrasztások, összes átkötés via megléte, szemrevételezés legalább 12x-s nagyítóval, különös

Részletesebben

Arduino bevezető Szenzorhálózatok és alkalmazásaik

Arduino bevezető Szenzorhálózatok és alkalmazásaik Arduino bevezető Szenzorhálózatok és alkalmazásaik VITMMA09 Okos város MSc mellékspecializáció Mi az Arduino? Nyílt hardver és szoftver platform 8 bites Atmel mikrokontroller köré építve Ökoszisztéma:

Részletesebben

TARTALOMJEGYZÉK. 1. Ismétlés... 19 1.1. A mikroprocesszor mőködése... 19 1.2. Mikroszámítógépek, mikrokontrollerek... 20

TARTALOMJEGYZÉK. 1. Ismétlés... 19 1.1. A mikroprocesszor mőködése... 19 1.2. Mikroszámítógépek, mikrokontrollerek... 20 TARTALOMJEGYZÉK Elıszó... 13 I. rész PIC MIKROVEZÉRLİK ALKALMAZÁSTECHNIKÁJA (KÓNYA LÁSZLÓ) 1. Ismétlés... 19 1.1. A mikroprocesszor mőködése... 19 1.2. Mikroszámítógépek, mikrokontrollerek... 20 2. A PIC

Részletesebben

Járműfedélzeti rendszerek I. 4. előadás Dr. Bécsi Tamás

Járműfedélzeti rendszerek I. 4. előadás Dr. Bécsi Tamás Járműfedélzeti rendszerek I. 4. előadás Dr. Bécsi Tamás Rendszer órajel Órajel osztás XTAL Divide Control (XDIV) Register 2 129 oszthat Órajel források CKSEL fuse bit Külső kristály/kerámia rezonátor Külső

Részletesebben

Programozott soros szinkron adatátvitel

Programozott soros szinkron adatátvitel Programozott soros szinkron adatátvitel 1. Feladat Név:... Irjon programot, mely a P1.0 kimenet egy lefutó élének időpontjában a P1.1 kimeneten egy adatbitet ad ki. A bájt legalacsonyabb helyiértéke 1.

Részletesebben

Miskolci Egyetem Gépészmérnöki és Informatikai Kar Elektrotechnikai és Elektronikai Intézet. Szakdolgozat

Miskolci Egyetem Gépészmérnöki és Informatikai Kar Elektrotechnikai és Elektronikai Intézet. Szakdolgozat Miskolci Egyetem Gépészmérnöki és Informatikai Kar Elektrotechnikai és Elektronikai Intézet Villamosmérnöki szak Elektronikai tervezés és gyártás szakirány Jelenlét érzékelésen alapuló világítás vezérlés

Részletesebben

Újrakonfigurálható technológiák nagy teljesítményű alkalmazásai

Újrakonfigurálható technológiák nagy teljesítményű alkalmazásai Újrakonfigurálható technológiák nagy teljesítményű alkalmazásai Gyakorlat: SSE utasításkészlet Szántó Péter BME MIT, FPGA Laboratórium Vektorizáció Inline assembly Minden fordító támogatja (kivéve VS x64

Részletesebben

Digitális technika II., 2009/2010 tavasz 1. vizsga 2010.06.01. A csoport

Digitális technika II., 2009/2010 tavasz 1. vizsga 2010.06.01. A csoport Beugró kérdések: 1. USART jelalak (TdX) felrajzolása adott paritás és adott számú STOP bit mellett egy kétjegyű hexa szám átvitelére. 2. RST7.5, TRAP és INT megszakítási bemenetek összehasonlítása tilthatóság

Részletesebben

Nyomtatott áramkörök

Nyomtatott áramkörök 1 Nyomtatott áramkörök Ha nekilátunk egy elektronikai feladat megoldásának, akkor előbb-utóbb - fejben - eljutunk egy kapcsolási rajz vázlatáig, aztán abból kiindulva egy próba panel készítéséig. Ha pedig

Részletesebben

Karunkról Kari digitális könyvtár

Karunkról Kari digitális könyvtár . előadás Jegyzet www.inf.elte.hu Karunkról Kari digitális könyvtár i az assembly? gépi kód: a számítógép által közvetlenül értelmezett és végrehajtott jelsorozat assembly: a gépi kód emberek számára könnyen

Részletesebben

ö Á Ú Á ö Á ö É Í Ú ö É ö ö ö ö ű ö ö ö ö ö Ö ö ö ö ö ö ö ű Ö ö ö ö ö Ö ö ű ö ö Í ö Ú ű Ú ö ű ö ö ö Ú Í Ú É Ö ö ö ű ö ö ö ö ö Ö ö ö ö ö ö Ö Íö ö Í ö ö ö ö ö Ö ö ö ö ö ö ö ö ö ö ö ö ö Ö ö ö ö ö ö ö ö ö

Részletesebben

MSP430 programozás Energia környezetben. Nokia 5110 grafikus kijelzo vezérlése

MSP430 programozás Energia környezetben. Nokia 5110 grafikus kijelzo vezérlése MSP430 programozás Energia környezetben Nokia 5110 grafikus kijelzo vezérlése 1 Nokia 5110 kijelző Grafikus (képpontonként vezérelhető) LCD Felbontás: 84 x 48 pont (PCD8544 kontroller) Vezérlés: SPI felület

Részletesebben

Hardver modellezés SystemC-vel és SDL grafikus könyvtárral Visual Stúdió alatt

Hardver modellezés SystemC-vel és SDL grafikus könyvtárral Visual Stúdió alatt BME Hardver modellezés SystemC-vel és SDL grafikus könyvtárral Visual Stúdió alatt Visual Studio, SystemC, SDL Tóth Gergely Endre 2013.03.18. 1 Bevezetés Ebben a dokumentumban leírom, hogy hogyan lehet

Részletesebben

The modular mitmót system. A DPY-LED perifériakártya

The modular mitmót system. A DPY-LED perifériakártya The modular mitmót system A DPY-LED perifériakártya Kártyakód: DPY-LED-S-0b Felhasználói és fejlesztői dokumentáció Dokumentációkód: -D0a Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és

Részletesebben

ő ő ű í ú ő ő ő ő ú í ő ő ő ő í í ő ő ő ű í ú ú ű í ő ő ő ő í í Á í í ő ő ő ő í ő ő ú ú ú í ő ő ő ű í ú Ó ú ű í ő ő ő ő í ő ő ő ő í ő ő ő ő í É í í í í ú ű í ő í í Ö ő ú ű í í í í ő ő ő É í í ű í ő ő ő

Részletesebben

Ő Ú Ú Ó Ó Ó Ö Ó Ó Ó Ó Í Ó Í ó ő ó ő Ó Ó Ó ó Ó Í Ü Ó Ü Ó Ó Ó Ü Ü Ó Í ö Ó Ó ó ó Í Ó ó ő É ő Í Ó Ó ó ó Í ó Í ő ó ÓÍ ó Ó ó Ó ó ö Í Ó Ó ó Ü Ó Ú ó ö Ü Í Ó Í Í Ó Ü Ó Í Í Ó Ü Ö Ó Í Ó Ó Ó Ó Í Ó Ó ó ő ó Í Ü Ő ő

Részletesebben