Digitális technika (VIMIAA01) Laboratórium 9

Hasonló dokumentumok
Digitális technika (VIMIAA01) Laboratórium 9

Digitális technika (VIMIAA01) Laboratórium 11

Digitális technika (VIMIAA02) Laboratórium 5

Digitális technika (VIMIAA02) Laboratórium 5

Digitális technika (VIMIAA02) Laboratórium 1

Digitális technika (VIMIAA02) Laboratórium 1

Digitális technika VIMIAA01 9. hét Fehér Béla BME MIT

Digitális technika VIMIAA01 9. hét

Digitális technika (VIMIAA01) Laboratórium 11

Digitális technika (VIMIAA02) Laboratórium 5.5

Digitális technika (VIMIAA01) Laboratórium 10

Digitális technika (VIMIAA02) Laboratórium 4

Karakteres LCD kijelző használata MiniRISC processzoron

Digitális technika (VIMIAA02) Laboratórium 4

Digitális technika VIMIAA hét

Digitális technika VIMIAA hét

Digitális technika (VIMIAA01) Laboratórium 4

PWM elve, mikroszervó motor vezérlése MiniRISC processzoron

Mikrorendszerek tervezése

Az interrupt Benesóczky Zoltán 2004

Digitális technika (VIMIAA02) Laboratórium 3

Digitális technika (VIMIAA02) Laboratórium 3

Digitális technika VIMIAA hét

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

Programozási segédlet DS89C450 Fejlesztőpanelhez

Labor 2 Mikrovezérlők

Digitális technika (VIMIAA02) Laboratórium 12

Digitális technika (VIMIAA02) Laboratórium 12

A LOGSYS GUI. Fehér Béla Raikovich Tamás, Laczkó Péter BME MIT FPGA laboratórium

Számítógép Architektúrák

LOGSYS LOGSYS LCD KIJELZŐ MODUL FELHASZNÁLÓI ÚTMUTATÓ november 8. Verzió

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

Digitális technika VIMIAA02

Adatfeldolgozó rendszer tervezése funkcionális elemekkel

MPLAB IDE - SIM - - Rövid ismertető a használathoz - Kincses Levente 3E22 89/ November 14. Szabadka

MSP430 programozás Energia környezetben. Kitekintés, további lehetőségek

Ellenőrző mérés mintafeladatok Mérés laboratórium 1., 2011 őszi félév

Digitális technika VIMIAA hét

Digitális technika VIMIAA01

Digitális technika VIMIAA01

Laborgyakorlat Logikai áramkörök számítógéppel segített tervezése (CAD)

1 done by: b+bme. Adja meg, hogy milyen ICW3 parancsot kell küldeni a MASTER illetve a SLAVE egységeknek!

Újrakonfigurálható eszközök

A mikroprocesszor felépítése és működése

SysCVideo: fiktív grafikus kártya SystemC modulként, SDL alapú megjelenítéssel

Digitális technika VIMIAA hét

Digitális rendszerek. Digitális logika szintje

Mikrorendszerek tervezése

OPERÁCIÓS RENDSZEREK. Elmélet

Operációs rendszerek. Bemutatkozás

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

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

A Számítógépek hardver elemei

Informatika érettségi vizsga

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

PMU Kezdı lépések. 6-0 Csatlakozás LG GLOFA-GM és SAMSUNG PLC-hez. 6-1 Kommunikáció LG PMU és LG GLOFA-GM7 / GM6 / GM4 között

Perifériakezelési módszerek (Korrigált) Feltétel nélküli

Digitális technika (VIMIAA01) Laboratórium 2

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

Digitális technika VIMIAA02 9. hét

Digitális technika VIMIAA02 9. hét Fehér Béla BME MIT

SZORGALMI FELADAT. 17. Oktober

LOGSYS LOGSYS SPARTAN-3E FPGA KÁRTYA FELHASZNÁLÓI ÚTMUTATÓ szeptember 19. Verzió

LÉPCSŐHÁZI AUTOMATÁK W LÉPCSŐHÁZI AUTOMATA TIMON W SCHRACK INFO W FUNKCIÓK W MŰSZAKI ADATOK

5. Laborgyakorlat. Számláló funkciók, időzítő funkciók.

SZÁMÍTÓGÉP ARCHITEKTÚRÁK

Digitális technika VIMIAA01 5. hét

Újrakonfigurálható eszközök

Számítógép architektúrák

Az operációs rendszer szerkezete, szolgáltatásai

A feladatokat önállóan, meg nem engedett segédeszközök használata nélkül oldottam meg. Olvasható aláírás:...minta VIZSGA...

Digitális technika (VIMIAA02) Laboratórium 2

Digitális rendszerek. Mikroarchitektúra szintje

Egyszerű számítógép működése

Digitális technika (VIMIAA01) Laboratórium 2

Készítette: Oláh István mestertanár

Digitális Technika. Dr. Oniga István Debreceni Egyetem, Informatikai Kar

Számítógépek felépítése, alapfogalmak

Digitális Technika. Dr. Oniga István Debreceni Egyetem, Informatikai Kar

Nagy Gergely április 4.

7.hét: A sorrendi hálózatok elemei II.

Architektúra, megszakítási rendszerek

IDAXA-PiroSTOP. PIRINT PiroFlex Interfész. Terméklap

Digitális technika VIMIAA01 5. hét Fehér Béla BME MIT

Digitális technika VIMIAA02

5. tétel. A számítógép sematikus felépítése. (Ábra, buszok, CPU, Memória, IT, DMA, Periféria vezérlő)

Digitális technika VIMIAA02 7. hét Fehér Béla BME MIT

Digitális technika VIMIAA02 7. hét

Digitális technika VIMIAA01

Digitális technika VIMIAA01

DIGITÁLIS TECHNIKA 7. Előadó: Dr. Oniga István

Nyíregyházi Egyetem Matematika és Informatika Intézete. Input/Output

Digitális technika (VIMIAA02) Laboratórium 8

Digitális technika (VIMIAA01) Laboratórium 8

A számítógép alapfelépítése

SZOCIÁLIS ÉS MUNKAÜGYI MINISZTÉRIUM

Négysugaras infrasorompó 8 választható frekvenciával HASZNÁLATI UTASÍTÁS

VIDUE RXP2S220. Üzembe helyezési útmutató

ATMEL ATMEGA MIKROVEZÉRLŐ-CSALÁD

Digitális technika VIMIAA01

Átírás:

BUDAPESTI MŰSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM VILLAMOSMÉRNÖKI ÉS INFORMATIKAI KAR MÉRÉSTECHNIKA ÉS INFORMÁCIÓS RENDSZEREK TANSZÉK Digitális technika (VIMIAA01) Laboratórium 9 Fehér Béla Raikovich Tamás, Fejér Attila Digit labor 9., 2014.11.10. (v1.0) BME MIT

Lab9: Perifériakezelés 1. A processzor és a perifériák együttműködése 2. Busz fogalma, felépítése 3. Adatátvitel a buszon 4. Periféria programozási felülete 5. Periféria használata lekérdezéssel 6. Periféria használata eseményjelzéssel Digit labor 9., 2014.11.10. (v1.0) 1

Lab9: Perifériakezelés A processzor és a perifériák együttműködése Az adatforgalom a buszon zajlik A buszt a MASTER egységek használják Master: CPU, (DMA vezérlő) A buszhasználati jog megszerzése után (arbitráció) Busz fogalma, felépítése Adatátvitel a buszon Periféria programozási felülete Periféria használata lekérdezéssel Periféria használata eseményjelzéssel Digit labor 9., 2014.11.10. (v1.0) 2

Lab9: Perifériakezelés A busz a mikroprocesszoros rendszer belső adatátviteli egysége Részei: Címbusz, Adatbusz (kimeneti, bemeneti) Vezérlőjelek Adat kivitel (WRITE), adat beolvasás (READ) lehetséges A MiniRISC processzornál a memória és a periféria adatátvitelek azonosak, ugyanazok az utasítások használhatók (memóriába ágyazott perifériakezelés) Digit labor 9., 2014.11.10. (v1.0) 3

Lab9: Perifériakezelés A perifériák működése regiszter műveleteken keresztül vezérelhető A periféria csak a buszt látja, azon keresztül van kapcsolatban a processzorral Funkciók: adatkivitel, adatbeolvasás, parancskiadás, állapotbeolvasás Tipikus perifériaregiszterek: DOUT, DIN, COMMAND, STATUS Parancs: működtetés, üzemmód beállítás Digit labor 9., 2014.11.10. (v1.0) 4

Lab9: Perifériakezelés Passzív periféria Működés csak programozott indításra (pl. LED kijelző) Aktív periféria Működés akár külső eseményre (pl. nyomógomb) Processzor tájékoztatása, értesítése Programozott lekérdezés A processzor periodikus beolvasással ellenőrzi a periféria állapotát Kiszolgáláskérés (megszakításkérés) A periféria a változásról jelzést küld. Ehhez külön hardver áramkörök szükségesek és a programot is úgy kell elkészíteni, hogy a kiszolgálás kérések a végrehajtás során bármikor előfordulhatnak, ami a program elágazását okozhatja Digit labor 9., 2014.11.10. (v1.0) 5

Lab9_1 feladat: Bevezető feladatok Bemeneti perifériák használati kérdései Egyszerű kapcsolók, nyomógombok Egyszerű mechanikai konstrukciók Kellemetlen mellékhatás: átkapcsolási pergés Átkapcsoláskor nem egyetlen 0 1 átmenet, hanem többszörös jelváltás történik Megoldás: jelváltás érzékelése és késleltetett mintavétel A mechanikai időállandó néhány ms nagyságrendű Digit labor 9., 2014.11.10. (v1.0) 6

Lab9_1 feladat: Bevezető feladatok Bemeneti perifériák használati kérdései: Nyomógomb periféria Pergésmentesítés hardverben, mert szinte minden esetben fontos (a használati mód miatt) Változásról megszakításkérés, ha engedélyezett DIP Kapcsoló periféria Nincs pergésmentesítés, mert a használati mód nem feltétlenül igényli ( érték beállítása, majd beolvasási parancs, pl. nyomógombról) Nincs megszakítás sem Digit labor 9., 2014.11.10. (v1.0) 7

Lab9_1a feladat: A pergés jelensége Demonstrációs program a pergés jelenségéről Készítsünk egyszerű programot, ami Várakozik a kapcsoló aktiválására Ekkor egy számlálót inkrementál Várakozik a kapcsoló elengedésére Ezt a 2 ciklust ismétli egy lenyomás során és az összes tesztelt irányú átmenetet számolja, ha az nem túl gyors (a ciklus végrehajtási ideje ~us ) Javaslat: a kapcsolók csupa 1 állapotából (0xFF) induljunk, mert akkor az 1 0 átmenet finomabban kapcsolgatható Digit labor 9., 2014.11.10. (v1.0) 8

Lab9_1a feladat: A pergés jelensége Demonstrációs program a pergés jelenségéről Részlet a feladat minta forráskódjából: Készítsük el a demonstrációs programot A LOGSYS kártyán ellenőrizzük a jelenséget A valódi pergés természetesen kártyafüggő lehet Digit labor 9., 2014.11.10. (v1.0) 9

Lab9_1a feladat: A pergés jelensége A pergés ellenőrzése a nyomógombokon Alakítsuk át a programot, úgy hogy a nyomógombok működését tesztelje BT periféria beolvasása, alsó 4 bit használata Most a 0 1 átmenetet teszteljük A LOGSYS kártyán ellenőrizzük a jelenséget A hardver pergésmentesítés miatt remélhetőleg nem tapasztalunk többszörös átmenetet Digit labor 9., 2014.11.10. (v1.0) 10

Lab9_1a feladat: A pergés jelensége A pergés megszüntetése a kapcsolókon szoftveres késleltetéssel Alakítsuk át a programot, úgy hogy a kapcsolók figyelését kiegészítjük egy hosszabb idejű folyamatos mintavétellel SW periféria beolvasása, várakozás aktiválásra Az első átmenet észlelése után addig várunk, amíg legalább 256-szor egymás után stabil értéket olvasunk be Amíg ez nem teljesül, addig mindig újrakezdjük a figyelést Digit labor 9., 2014.11.10. (v1.0) 11

Lab9_1a feladat: A pergés jelensége A pergés megszüntetése a kapcsolókon szoftveres ellenőrzéssel A program segítségével megbízhatóan olvasható be a kapcsoló állapotváltozása A gyakorlatban egyszerűen lassú mintavételezést használunk Digit labor 9., 2014.11.10. (v1.0) 12

Lab9_2 feladat: Szoftveres időzítés Gyakran szükséges a processzorok működését a valós idejű reakciókhoz igazítani Szoftveres időzítés: A processzor utasítás végrehajtásával időzítünk, azaz a processzor lényegében múlatja az időt Egyszerű megoldás, de nagy ára van: a processzor munkavégzési képességét vesztegetjük! Hardveres időzítés: Külön speciális időzítő periféria: TIMER Minden mikroprocesszoros rendszerben van (több is!) Az egyik leghasznosabb/rugalmasabb periféria! Digit labor 9., 2014.11.10. (v1.0) 13

Lab9_2 feladat: Szoftveres időzítés Szoftveres időzítés: Az időalap: egy utasítás végrehajtási ideje A MiniRISC esetében 3*T clk = 3*62,5ns = 187,5ns Az időzítés/késleltetés módja: várakozási ciklus Egy 8 bites regiszterrel T max8 = 2*256*187,5ns = 96us Az időzítés érték beállításához: Előírhatunk tetszőleges kezdőértéket A léptetés értéke lehet nagyobb, mint 1 A számláló számolhat lefelé is, de ekkor esetleg más feltételvizsgálat lehet szükséges Digit labor 9., 2014.11.10. (v1.0) 14

Lab9_2 feladat: Szoftveres időzítés Szoftveres időzítés: Hosszabb időzítések: Egymásba ágyazott ciklusokkal bonyolult szerkezet, nehezen számolható időzítés, nem használjuk Több bájtos számláló regiszter az ADC/SBC összeadás/kivonás átvitellel utasítás felhasználásával Időzítési idő 16 bites számlálóval: T max16 = 3*65536*187,5ns = 36,8ms Digit labor 9., 2014.11.10. (v1.0) 15

Lab9_2 feladat: Szoftveres időzítés Szoftveres időzítés: Valósidejű várakozások 24 bites számlálóval: T max24 = 4*2 24 *187,5ns = 12,582912 s Tetszőleges ütemezéshez elegendő átfogás Tippek: Egyszerű időzítés esetén az inicializálás elhagyható, az előző átfordulás után ugyanonnan folytatható Az inkrementálást 12-vel végezve, az időzítés ~1 s Digit labor 9., 2014.11.10. (v1.0) 16

Lab9_2a feladat: Frekvencia tesztek A MiniRISC kimenetein elérhető legnagyobb bitváltási frekvencia: Tesztprogram: max_freq.s Egy munkaregiszter tartalmának kijelzése végtelen ciklusban folyamatos invertálással Digit labor 9., 2014.11.10. (v1.0) 17

Lab9_2a feladat: Frekvencia tesztek Tesztprogram: low_freq.s A max_freq.s tesztprogramot kiegészítjük időzítő/késleltető ciklussal Digit labor 9., 2014.11.10. (v1.0) 18

Lab9_2a feladat: Frekvencia tesztek Gyűrűs számláló program készítése szoftveres időzítéssel A gyűrűs számláló 8 biten számol, jobbra vagy balra léptetéssel A léptetési frekvenciát állítsuk kb. 2 Hz-re, szoftveres időzítési ciklust beépítve Készítsük el a programot, ellenőrizzük a működését a LOGSYS kártyán működtetve! A tapasztalatokat a Labor 9 Eredmények kérdőíven jegyezzük fel! Digit labor 9., 2014.11.10. (v1.0) 19