1 / 17

Mikrokrmilniki in V/I

Mikrokrmilniki in V/I. Mikrokrmilniki so načeloma predvideni za vgradnjo v druge naprave/sisteme in so največkrat eden njihovih glavnih sestavnih delov. Zmožnost povezovanja mikrokrmilnika z drugimi enotami je zato za uporabo mikrokrmilnika bistvenega pomena.

traci
Download Presentation

Mikrokrmilniki in V/I

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Mikrokrmilniki in V/I • Mikrokrmilniki so načeloma predvideni za vgradnjo v druge naprave/sisteme in so največkrat eden njihovih glavnih sestavnih delov. • Zmožnost povezovanja mikrokrmilnika z drugimi enotami je zato za uporabo mikrokrmilnika bistvenega pomena. • CPE, RAM, EEPROM, Flash, dajejo mikrokrmilniku osnovno funkcionalnost, ki je obdelava podatkov. • V/I sponke oz. signali skupaj z V/I vezji (vgrajenimi vmesniki oz. bloki) pa mikrokrmilniku dajejo uporabnost, omogočajo izmenjavo podatkov z okoljem – povezljivost z okoljem. • “Moč” mikrokrmilnika pride do izraza prav v V/I zmožnostih.

  2. Mikrokrmilniki in V/I • Večina sponk mikrokrmilnika je večnamenskih, se jih da uporabljati na več načinov: kot vhodne, izhodne, prožilne, analogne, digitalne, i.t.d.. S tem prihranimo na številu sponk. • Nekatera V/I vezja (sponke) so splošno namenska - ne predvidevajo konkretnega tipa zunanje naprave, druga so prirejena za povezavo na specifičen način, na primer bitno serijski (CAN, SCI, ...). • Skupine sponk/signalov s podobno funkcionalnostjo (tipično 8) tvorijo “vrata”, na primer vrata A, vrata B, ipd.

  3. Mikrokrmilniki in V/I • Kaj omogoča splošno namenska V/I sponka? • Lahko služi kot digitalen vhod (odčitavanje signalov). • Lahko služi kot digitalen izhod (postavljanje signalov). • Lahko povzroči (proži) zahtevo za prekinitev. • Lahko vsebuje notranji zaključni upor (ali pa ne). • Lahko spremeni gonilno moč (polna, delna). • ....? • Bistveno je, da na njej odčitamo ali postavimo signal, kot to pričakuje oz. zahteva zunanja (oz. druga) naprava.

  4. Mikrokrmilniki in V/I • Kaj omogoča večnamenska V/I sponka • Lahko služi kot digitalna sponka. • Lahko služi kot analogna sponka. • Lahko služi kot komunikacijska sponka. • Lahko služi kot prestrezna sponka časovnika. • Lahko služi za razširitev vodila. • ..... • Seveda ne hkrati in tudi ne čisto vse našteto.

  5. Mikrokrmilnik - registri vrat • (Vsakim) vratom (V/I vezjem) pripada določeno število registrov. • Registri (splošno): • Omogočajo izmenjavo signalov z okoljem. • Procesor vpiše v register in s tem postavi stanje zunanjih - izhodnih signalov/sponk. • Procesor bere iz registra in s tem odčita stanje signalov na zunajnih – vhodnih sponkah. • Določajo način delovanja vrat. • Definirajo smer sponk: katere so vhodne, katere so izhodne. • Definirajo druge specifične lastnosti sponk, gonilno izhodno moč, vhodni zaključni upor, občutljivost na prvi/zadnji rob signala, ipd. • Odražajo stanje vrat.

  6. Pomnilniško preslikan in ločen V/I • HCS12 (Motorola) uporablja t.i. “pomnilniško preslikan” način za V/I, za razliko od “ločenega V/I”. • V primeru pomnilniško preslikanega V/I dostopa CPE do registrov vrat enako kot do pomnilnika. • Na primer: STAA PomBeseda ;vpis v pomnilnik STAA PortaA ;vpis v V/I register • Ločen V/I se s stališča programerja najbolj vidi v ločenih naslovnih področjih za pomnilnik in za V/I ter v V/I ukazih, tipično ukaza imenovana IN in OUT. • Na primer: STAA PomBeseda ;vpis v pomnilnik OUT PortA ;ne gre pa STAA PortA

  7. 0000 0000 V/I 1000 RAM RAM 8000 8000 ROM ROM FFFF FFFF Pomnilniško preslikan in ločen V/I 000 V/I F00 Pomnilniško preslikan V/I (npr. Motorola) Ločen V/I (npr. Intel)

  8. HCS12 – PIM(Port Integration Module) Vrata A Vrata B

  9. HCS12 – vrata A in vrata B • Vrata mikrokrmilnika so označena s črkami, na primer: vrata A, vrata B, vrata E, vrata K, ... • Sponke vrat so označene še s številko, na primer PA0, PA1, ... , PA7, to je: vrata A, sponka/signal 0, sponka 1, ..., sponka 7. • Sponka 0 ima najmanjšo težo, sponka 7 največjo. • Vrata A in vrata B služijo dvema namenoma: • Splošno namenska V/I vrata (“GPIO” - angl. General Purpose IO) v samostojnem načinu. • (Časovno) multipleksirane naslovne in podatkovne sponke za razširitev (podaljšanje) naslovnega in podatkovnega vodila v razširjenem načinu.

  10. 0000 V/I 0400 EEPROM 1000 RAM 4000 Flash FF00 Vektorji FFFF HCS12 – razporeditev v naslovnem področju • Razporeditev v naslovnem področju je odvisna od načina delovanja mikrokrmilnika (samostojen, razširjen, itd.) • Ob začetni vzpostavitvi (“reset”) je privzeta “običajna” razporeditev, ki jo je moč kasneje po potrebi (in skoraj) poljubno spremeniti. • Skica prikazuje razporeditev ob začetni vzpostavitvi za samostojen način delovanja. • Opomba: 1K EEPROM-a je “prekrit” z V/I naslovi. Glede na to, da je EEPROM-a 4K, je v tej razporeditvi dosegljivega samo 3K.

  11. HCS12 – vrata A in B • V samostojnem načinu delujejo vrata A in vrata B kot splošnonamenska V/I vrata. • S stališča V/I so vrata A in B ekvivalentna. • Vratom A (B) pripada podatkovni register PORTA (PORTB), ki ga procesor piše/bere in s tem postavi/prevzame stanje perifernih sponk PA0:7 (PB0:7). • Smerni register DDRA (DDRB) vrat A (B) določi smer prenosa: Bit_i (i=0,1, ... , 7) = 0  pripadajoča sponka je vhodna Bit_i (i=0,1, ... , 7) = 1  pripadajoča sponka je izhodna • Gonilno moč izhodnih sponk izberemo z vpisom v register RDRIV. • Zaključni upor vhodnih sponk izberemo z vpisom v register PUCR.

  12. HCS12 – naslovi registrov vrat A in B • Primer: A je izhod, B pa vhod LDAA #$FF STAA $0002 ;Vrata A so izhod CLRA STAA $0003 ;Vrata B so vhod ;PUCR in RDRIV pustimo “na miru”. LDAA $0001 ;Prepišemo vhod (vrata B) STAA $0000 ;na izhod (vrata A)

  13. HCS12 – vrat A in B, primer še enkrat PORTA EQU $0000 ;naslov pod. r. vrat A PORTB EQU PORTA+1 ;naslov pod. r. vrat B DDRA EQU PORTA+2 ;naslov smer. r. vrat A DDRB EQU PORTA+3 ;naslov smer. r. vrat B ...... ...... ...... LDAA #$FF STAA DDRA ;Vrata A so izhod CLRA STAA DDRB ;Vrata B so vhod LDAA PORTB ;Prepišemo vhod STAA PORTA ;na izhod ...... ......

  14. HCS12 – Register PUCR • Omogoči notranji zaključni upor: PUBAE=1, omogoči (vse) zaključne upore za vhode vrat A PUPBE=1, omogoči (vse) zaključne upore za vhode vrat B Opomba: isti register tudi za vrata E in K

  15. HCS12 – Register RDRIV • Zmanjša gonilno moč izhodov: RDPA =1, zmanjša gonilno moč (vseh) izhodov vrat A RDPB =1, zmanjša gonilno moč (vseh) izhodov vrat B Opomba: isto tudi za vrata E in K

  16. HCS12 – še o vratih A in B • V pogledu V/I so vrata A in vrata B precej “enostavna”, mikrkrmilnik preprosto postavi ali odčita stanje sponk. • Vrata ne omogočajo usklajevanja (angl. “hand shaking”) z drugo napravo v smislu: • prevzel sem podatek, • poslal sem podatek, • pričakujem podatek. • Vrata ne morejo postaviti zahteve za prekinitev, zato ne omogočajo spontanega obravnavanja signalov v smislu: • zahtevam prekinitev, prevzemi podatek, • zahtevam prekinitev, pričakujem podatek.

More Related