0,00 €

V košarici ni izdelkov.

0,00 €

V košarici ni izdelkov.

More
    DomovRevijaProgramiranjeKako se pogovarjata C in zbirnik za mikrokontrolerje ARM?

    Kako se pogovarjata C in zbirnik za mikrokontrolerje ARM?

    Programsko kodo za mikrokontrolerje lahko pišemo v različnih programskih jezikih. Med njimi je danes še zmeraj dominanten jezik C, vendar se včasih pojavi potreba po programiranju nekaterih delov programske kode v nizkonivojskem zbirniškem jeziku, ki je jezik procesorja oziroma jedra mikrokontrolerja.

    Slike niTi deli zbirniške kode ponavadi opravljajo časovno kritične naloge in jih kličemo iz jezika C. V nadaljevanju bomo predstavili komunikacijo med deli programa, napisanimi v jeziku C, in deli v zbirniku za mikrokontrolerje z jedrom ARM Cortex-M. Za prikaz delovanja bomo uporabili razvojno okolje KEIL µVision in prevajalnik istega proizvajalca.

    Čeprav je večina programske kode za projekte, ki temeljijo na mikrokontrolerjih, napisana samo v enem od višjih programskih jezikov (npr. v jeziku C), se v praksi večkrat pokaže potreba po vključitvi kode v zbirniku (angl. Assembly Language). Obstaja vrsta orodij za učinkovito zaznavanje programskih odsekov (funkcij), ki za svoje izvajanje potrošijo največ časa. Težava pa je v tem, da prevajalniki nimajo znanja, kako te odseke optimizirati. Da ne bi bili odvisni od iznajdljivosti prevajalnikov, lahko v tem primeru poskušamo te dele programske opreme kar ročno optimalno zapisati v zbirniku. Standardni prevajalniki jezika C tudi ne uporabljajo določenih ukazov, ki jih podpira procesor Cortex-M (npr. ROR – ROtate Right in RRX – Rotate Right eXtended). Pri pisanju gonilnikov in zagonske kode za mikrokontrolerje ima zbirnik še posebno pomembno vlogo, saj omogoča neposredni dostop do strojne opreme. Velja pa tudi, da programerji, vešči pisanja programske kode v zbirniku, pišejo optimalnejšo kodo v jeziku C [3].

    Slike niZa razvoj programov smo uporabili programsko razvojno okolje Keil µVision z nameščenima prevajalnikoma za C in zbirnik istega proizvajalca. Toku izvajanja programa smo sledili z vgrajenim razhroščevalnikom. Za testiranje delovanja smo uporabili razvojno ploščo STM32L4 Discovery proizvajalca ST Microelectronics, na kateri je nameščen mikrokontroler STM32L476VG z jedrom ARM-Cortex-M4. Lahko bi uporabili tudi mikrokontroler kateregakoli drugega proizvajalca z vgrajenim jedrom ARM-Cortex-M.

    Celotni članek

    Program

    Kako se pogovarjata C in zbirnik za mikrokontrolerje ARM?

    2017_SE252_47

    Prejšnji članek
    Naslednji članek
    Politika zasebnosti

    Spoštujemo vašo zasebnost in se zavezujemo, da bomo osebne podatke, pridobljene prek spletnega informacijskega sistema, skrbno varovali in jih brez vaše privolitve ne bomo posredoval tretji osebi oziroma jih uporabili v druge namene. Ker obstajajo v spletnem informacijskem sistemu določene povezave na druge, zunanje spletne strani, ki niso vezane na nas, ne prevzemamo nobene odgovornosti za zaščito podatkov na teh spletnih straneh.

    Hkrati se zavezujemo, da bomo po svojih najboljših možnih močeh varovali podatke in zasebnost obiskovalcev spletne strani .

    Da bi preprečili nepooblaščen dostop do pridobljenih podatkov ali njihovo razkritje, ohranili natančnost osebnih podatkov in zagotovili njihovo ustrezno uporabo, uporabljamo ustrezne tehnične in organizacijske postopke za zavarovanje podatkov, ki jih zbiramo.

    Več: https://svet-el.si/politika-zasebnosti