Microchip Technology Inc
Avtor: June Anthony Asistio
2018_261_25
June Anthony Asistio iz podjetja Microchip Technology obravnava prednosti, ki jih ponuja možnost izbire zunanjih fizičnih priključkov za periferne vhode in izhode ter pojasnjuje, kako to izkoristiti pri uporabi 8-bitnih mikrokontrolerjev.

PPS modul omogoča izbiro med vgrajeno periferijo s tem, da prek njega določimo, kateri priključek mikrokontrolerja bo vhod in tudi kateri digitalni izhod bo pripeljan na nek določen priključek mikrokontrolerja, kar se lahko izvede statično, takoj za kodo inicializacije ali pa celo dinamično, med samim izvajanjem programske kode. Slika 1 prikazuje blok shemo PPS modula v Microchipovem mikrokontrolerju PIC16.
PPS modul je v osnovi sestavljen le iz multiplekserjev in kontrolnih registrov. Pri vhodnem sklopu se izvede multipleksiranje proti perifernim vhodom z določenega fizičnega priključka. Pri izhodni sekciji se različni periferni izhodi multipleksirajo proti določenemu fizičnemu priključku mikrokontrolerja. V PPS kontrolnih registrih se hranijo nastavitve različnih perifernih funkcij in fizičnih priključkov mikrokontrolerja.

Izvedba PPS modula je pri nekaterih 8-bitnih družinah mikrokontrolerjev nekoliko drugačna. Nekateri imajo polno PPS zmogljivost, kar pomeni, da je mogoče vse nastavljive periferne vhodno-izhodne funkcije usmeriti na katerikoli fizični priključek mikrokontrolerja. Drugi mikrokontrolerji imajo na voljo le okrnjene različice PPS, pri katerih se lahko različne razpoložljive periferne funkcije preslikajo le na določene fizične priključke mikrokontrolerja. Družini PIC16 in PIC18 imata različni poimenovanji za PPS kontrolne registre in fizične priključke, ki jih je mogoče uporabiti na tak način.
Izbira vhodov
Register za izbiro perifernega vhoda (Peripheral Input Selection register), xxxPPS, na mikrokontrolerjih PIC16, ki bi bil priključek povezan z vhodom periferne enote. Register je prednaložen s 5-bitno privzeto vrednostjo, zato je vsak digitalni vhod na začetku vezan na določen pin. Spreminjanje tega registra spremeni povezavo periferije z drugim priključkom.
V družini PIC18 obstaja podoben vhodni register, imenovan RPINRx, s katerim določimo, kateri izmed priključkov naj bo povezan z določenim perifernim vhodom. V ta register je potrebno zapisati vrednost, s katero izberemo fizični priključek mikrokontrolerja, ki naj se poveže s perifernim vhodom.
Izbira izhodov

Enako lahko rečemo tudi za družino mikrokontrolerjev PIC18. Izhodni register, RPORx, znova določa, kateri periferni izhod se lahko preslika na določen izhodni priključek. V register je treba zapisati vrednost, s čimer izberemo periferni izhod, ki se lahko poveže s tem priključkom. Register ima privzeto vrednost, ki je enaka nič, kar pomeni, da so na začetku priključki privzeto odklopljeni od kateregakoli od perifernih izhodov, ki jih je mogoče preslikati na izhodne priključke mikrokontrolerja.
Mehanizem odklepanja in odklepanja
Registri PPS se lahko tudi med izvajanjem programske kode večkrat spremenijo z uporabo posebnega zaporedja odklepanja/zaklepanja. V določenih primerih pa želi načrtovalec določiti vrednost PPS le enkrat in se zatem izogniti neželenim spremembam registrov PPS med izvajanjem programske kode. V tem primeru pa mora biti omogočena tudi varovalka v konfiguracijskem registru.
Prilagodljivo razporejanje

Z uporabo PPS lahko dosežemo prilagodljivost pri povezovanju perifernih vhodov in izhodov na izhodne priključke mikrokontrolerja. En sam priključek lahko služi kot vhod na različne zunanje naprave ali pa izhod periferije istočasno povežemo na več fizičnih izhodnih priključkov.
Slika 2 prikazuje, kako lahko en sam dogodek proži dve periferni funkciji, kot sta na primer ustavljanje PWM signal komplementarnega izhodnega generatorja (COG), ko na vhodu zaznamo nek prožilni dogodek.
Izhodni COG1A signal lahko vodimo tudi na dva izhodna priključka. Ta prilagodljivost je dobrodošla pri aplikacijah, kjer izhodni signal vodimo v različne stopnje elektronskega vezja ali sistema. Prav tako lahko dva priključka COG1A povežemo skupaj z namenom, da povečamo tokovno zmogljivost izhoda.
Uporaba MPLAB konfiguratorja kode
Vtičnik MPLAB Code Configurator (MCC) za MPLAB X IDE ponuja preprost vizualni način nastavitve funkcij izhodnih priključkov na PIC mikrokontrolerjih.

V tem predstavljenem primeru bosta COG1 izhoda in COGIN zaustavitev dodeljeni nekaterim specifičnim priključkom PIC16F1716. Odprite MCC in izberete COG1 v oknu z naštetimi razpoložljivimi viri. Modul COG1 ter njegove vhodne in izhodne funkcije se bodo pojavili na območju upravljalnika priključkov.
Posamezni COG1 izhod ali COGIN vhod priredimo posameznemu fizičnemu priključku s klikom na pripadajoč simbol ključavnice, ki je namenjen temu priključku. Spremembe v oknu upravljalnika so prikazane na sliki 3.
Po pritisku na gumb “Generate” se PPS samodejno nastavijo.
Zaključek

Opomba: Ime in logotip Microchip sta registrirani blagovni znamki podjetja Microchip Technology Incorporated v ZDA in drugih državah. Vse druge blagovne znamke, ki so morda tu omenjene, so last njihovih podjetij.
