Monilla mikrokontrollerin nastoilla on erilaiset toiminnot. Normaali toiminto viittaa GPIO: han, Yleiskäyttöinen tulo / lähtö . Siinä tapauksessa voit käyttää näitä nastoja suoraan kirjoittamalla asiaankuuluviin rekistereihin ja lukemalla niistä.
Vaihtoehtoiset toiminnot viittaavat muihin toimintoihin, joihin voi sisältyä I 2 C ... oheislaite hoitaa loput.
Suurimman osan ajasta voit valita toiminnon, jota haluat käyttää lennossa, jotta voit vaihtaa oheislaitteiden välillä.
Käyttämällä yhtä nastaa useille oheislaitteille, voit tehdä mikro-ohjaimia, joilla on paljon ominaisuuksia. Koska kuitenkin haluat useimmiten tuon oheislaitteen tälle pinille koko ajan (etkä halua vaihtaa toimintoja lennossa), et voi käyttää kaikkia oheislaitteita yhdessä ohjelmassa tai ainakaan samaan aikaan aika. Toisaalta sitä ei oikeastaan usein tarvita.
Kuten Connor huomauttaa, vaihtoehtoinen toiminto voi viitata myös johonkin muuhun, vain hieman erilainen konteksti: tässä ei ole kyse siitä, minkä toiminnon asetat nastalle, vaan siitä, mitä nastaa käytät funktioon. Tätä kutsutaan Peripheral Pin Select, ja se tarkoittaa periaatteessa, että voit valita, minkä nastan oheislaitteesi käyttää. Voit esimerkiksi tehdä RS232: n RA1: n ja RA2: n yli tai RB1: n ja RB2: n yli.
Katso Connorin vastauksesta tarkempi kuvaus (ja äänestä häntä tästä).