0,00 €

V košarici ni izdelkov.

0,00 €

V košarici ni izdelkov.

More
    DomovRevijaOLED prikazovalniki (2)

    OLED prikazovalniki (2)

    Prejšnji članek (SE205) je bil večinoma povezan s prikazom oblikovanega besedila na SSD1306 64 * 128 OLED zaslonu z Bascom SPI komunikacijo. Ker je to resnično vsestranski zaslon, bi bilo škoda, da ne bi pokazali še tega, kako ga je mogoče krmiliti prek vgrajenega Bascom I2C komunikacijskega protokola, posebno še zato, ker so za samo I2C komunikacijo potrebni le trije V/I priključki.

    I2C in grafika

    Slike niNamesto da bi ponovno razpravljali o tem, kako na zaslonu prikazati besedilo, bomo v nadaljevanju tega članka raje spoznali načine, kako narisati črto, pravokotnik in krog.

    Kratka zgodovina I2C

    I2C protokol so prvotno določili pri Philipsu in za vsakogar, ki ga to zanima, je v zvezi s tem komunikacijskim protokolom in njegovo uporabo na spletu na voljo ogromno podatkov.

    Večina Atmel AVR čipov lahko izvaja I2C komunikacijo s krmiljenjem V/I priključkov pod popolno kontrolo programske opreme, vendar pa je Atmel na nekaterih svojih procesorjih dodal tudi I2C, ki se izvaja na nivoju strojne opreme in ga poimenoval TWI (Two Wire Interface). Bascom podpira izvajanje obeh različic komunikacij s protokolom I2C, tako na strojnem nivoju, kot tudi na nivoju programske opreme. Če uporabljena različica mikrokontrolerja ne podpira TWI ali pripadajoči V/I priključki niso več na voljo, je potrebno uporabiti programsko različico.

    Osnova za razumevanje uporabe I2C

    Slike niPrvič, komunikacija je organizirana tako, da imamo glavno (master) in pomožne (slave) enote. V tem članku je Atmelov mikrokontroler glavna enota, zaslon pa pomožna. I2C je dvožično dvosmerno vodilo, ki ima eno žico imenovano SDA (Serial Data Line), druga pa se imenuje SCL (Serial Clock Line). Običajno sta obe signalni liniji izvedena kot odprti ponor (open drain), tako da je potrebno signala SDA in SCL priključiti na pozitivno napajanje prek uporov s tipično upornostjo od 3,3 kOhmov do 5,6 kOhmov. Morda boste lahko uporabljali celo vgrajene pull_up upore na posameznih priključkih V/I vrat, s čimer utegnete prihraniti pri številu vgrajenih komponent, vendar lahko ta rešitev prinese tudi določene težave.

    Resnična prednost I2C protokola je, da imate lahko na vodilu priključenih do 125 podrejenih enot. Večina I2C podrejenih čipov ima posebne priključke, ki so namenjeni zamenjavi osnovnega naslova podrejene enote, če je na isto vodilo priključen več kot en čip podobne vrste. Podrejeni čip ima navadno prednastavljen osnovni naslov. Osnovni naslov za prikazovalnik SSD1306 je binarno število 0111_1000, ki ga lahko spremenimo za 1 bit z vezavo C/D priključka zaslona na visok logični nivo. V našem primeru je priključek C/D vezan na nizek logični nivo.

    V programski kodi boste lahko opazili, da se naslova Const Slave_add_w (zapiši naslov) in Slave_add_r (beri naslov) razlikujeta za en bit, razlog za to pa je ta, da se naslova vodila registrov za branje in pisanje na podrejeni enoti razlikujeta za en bit. Bit za branje naslovov je postavljen, ko glavna enota želi podatke iz pomožne enote brati in izbrisan, ko glavna enota pošilja podatke podrejeni enoti.

    Program

    Celotni članek

    OLED prikazovalniki (2)

    2013_SE207_33