0,00 €

V košarici ni izdelkov.

0,00 €

V košarici ni izdelkov.

More
    DomovRevijaProgramiranjeFTDI EVE barvni TFT kontroler (2), programiranje

    FTDI EVE barvni TFT kontroler (2), programiranje

    V 1. delu te serije člankov sem predstavil osnovne značilnosti in prednosti FTDI FT800 EVE grafičnega kontrolerja. Ob tem sem omenil različne metode, kako oživimo barvni TFT zaslon, ki je hkrati občutljiv na dotik. Predstavil sem »neumne« TFT zaslone, ki jih je potrebno krmiliti z vašim MCU-jem preko 8/16 bit vodila, predstavil sem pa tudi »inteligentne« TFT zaslone, kot npr. zaslone podjetja 4D Systems. Zdi se mi, da je FTDI-jev EVE zaslon tako cenovno ugoden kot tudi enostaven za uporabo, saj ga lahko krmilimo z zmernim 8-bit MCU-jem, kot je npr. Atmel ATMega328P, ki ga najdemo na veliko Arduino razvojnih ploščah (npr. Arduino Uno). V tem nadaljevanju članka vam bom predstavil kako začeti uporabljati EVE zaslone občutljive na dotik, ki so že naprodaj, dve razvojni plošči pa bo uredništvo revije podarilo našim najbolj zavzetim bralcem.

    Slike niPreden se boste odločali, kateri zaslon boste kupili, si poglejte Tabelo 1 iz 1. dela te serije člankov in izberite, kateri od treh modulov vam najbolj ustreza. Ko sem prvič zasledil podatke o FTDI EVE kontrolerju, je Mikroelektronika že ponudila EVE zaslon občutljiv na dotik: 4,3” ConnectEVE. Začel sem torej tako, da sem kupil nekaj teh zaslonov in naredil nekaj projektov z njimi. Kmalu zatem je FTDI pričel prodajati dva različna EVE zaslona: VM800B serija vsebuje plastični okvir primeren za montažo in pa VM800C, ki vsebuje kontroler velikosti kreditne kartice in ga lahko kupimo brez TFT zaslona. VM800C module dobavljajo brez plastičnega okvirja za montažo in brez njega je TFT zaslon težko montirati.

    V tem članku bom uporabil 4,3 palčni FTDI VM800B modul, na katerem bom pokazal delovanje EVE kontrolerja. V naslednjem članku pa bom opisal enega izmed projektov, kjer sem uporabil bolj kompakten ConnectEVE modul podjetja Mikroelektronika, ki sem ga najprej nabavil.

    Vezava modula

    Slike niČe razmišljate kot jaz, potem je fizična vezava TFT modula na vaš priljubljen MCU vaša najmanjša skrb. Moja največja skrb je bila kako težko bo napisati ali dobiti ustrezne programe ali gonilnike, s katerimi bom poganjal te zaslone s pomočjo AVR-jev, ki jih običajno uporabljam. Nadalje se vse še bolj komplicira, saj programe največkrat pišem v Bascom-AVR in ne v C/C++. Čeprav nerad priznam je očitno, da je večina gonilnikov, ki jih napišejo dobavitelji, napisana v obliki C/C++ knjižnic. Del razloga za to stanje je iskati v tem, da je AVR baziran Arduino izjemno popularen in Arduino programiramo v C/C++. Arduino programi ali »skice« so v bistvu C/C++ programi, ki so »zaviti« v uporabniku prijazno IDE okolje, ki skrije precejšnjo komplekstnost C-ja.

    V primeru FT800 EVE kontrolerja se je FTDI odločil, da napiše oba gonilnika v C/C++. Arduino prevajalnik ju bo prevedel tako, kot prevede druge Arduino programe. V kolikor ste torej navajeni pisati Arduino programe in niste C/C++ strokovnjak boste ugotovili, da so FTDI gonilniki in primeri programov težki za sledenje programske kode. Kot dolgoletni Bascom-AVR programer mi je bila ta C/C++ koda še posebej težka za sledenje. Ugotovil sem, da bi bilo prevajanje vse kode v Basic preveč zastrašujoča naloga, zato sem se odločil, da se pridružim svetovnemu ”Arduino klubu” in da pišem svoj program za svoje projekte, ki bazirajo na FTDI EVE v Arduino okolju.

    Da bi vam prihranil odkrivanje ”tople vode”, sem se previdno prebijal preko primerov FTDI programske kode, iz katere sem brisal čim več nepotrebne kode in poenostavil tisto, kar je ostalo. Če lahko Bascom-AVR uporabnik, kot sem jaz, uspešno uporabi FTDI EVE module, potem jih boste vi tudi!!

    Oglejmo si torej, kako lahko povežemo EVE zaslon na ATMega328. Vmesnik je znani SPI z nekaj dodatnimi linijami, ki upravljajo Reset/Powerdown in dodatno prekinitev. Glede na to, kateri EVE modul uporabljate, morate paziti na napajalno napetost, saj nekateri moduli delujejo izključno na 3,3V, nekateri pa na 3,3/5V. Poglejte si Tabelo 1 v 1. delu te serije člankov, kjer boste ugotovili, kako napajati vaš modul. Če imate 3,3V modul, uporabljate pa MCU, ki ga je potrebno napajati s 5V (npr. Arduino Uno), potem boste morali uporabiti napetostni prilagodilnik. Enega takega, ki dobro deluje sem opisal v 1. delu in ga vidite na Sliki 1.

    Program

    Celotni članek

    AX elektronika d.o.o.

    www.svet-el.si

    FTDI EVE barvni TFT kontroler, programiranje

    2014_SE218_31