0,00 €

V košarici ni izdelkov.

0,00 €

V košarici ni izdelkov.

More
    DomovRevijaProgramiranjeProgramiranje z Arduino (10)- Arduino gre v svet

    Programiranje z Arduino (10)- Arduino gre v svet

    Prejšnjič smo si ogledali, kako ATmega328P čip na Arduinu spravimo v globoko spanje, ki nam omogoča baterijske aplikacije. Tokrat si bomo ogledali še nekatere stvari na katere moramo paziti, če hočemo, da naša aplikacija deluje tudi v realnem okolju – najsi bo baterijska ali ne. Z realnim okoljem imamo v mislih vse motnje, ki ponavadi niso prisotne na delovni mizi. Lahko gre za motnje, ki izhajajo iz drugih naprav. To so lahko tudi razelektritve v bližini strel. Včasih je dovolj tudi že prižig namizne svetilke.

    Rjavenje napajanja

    Slike niElektromagnetne motnje lahko povzročijo tudi „trenutni“ padec napajalne napetosti na Arduinu pod vrednost, ki je specificirana za pravilno delovanje. Stvar je precej resna, saj v primeru padca napetosti pod mejo varnega delovanja znatno raste verjetnost, da bo CPU delal napake pri izvajanju inštrukcij in celo spremenil vrednosti v svojem Flash pomnilniku. To pa pomeni korupcijo programa in permanentno prekinitev ali nepredvidljivo delovanje. Seveda lahko čip v takem primeru enostavno ponovno sprogramiramo. Da pa do tega sploh ne bi prihajalo ima Arduinov ATMega328P mikrokontroler posebno enoto, ki se ji reče Brounout detektor ali na kratko BOD. Brownout ime je dobil zaradi podobnosti z blackout, ki pomeni popolno odsotnost napajalne napetosti. Ko BOD zazna prenizko napetost, nemudoma resetira mikrokontroler in čaka boljše čase, ko se spet vzpostavi normalno stanje. Kaj pa je prenizka napetost in normalno stanje? Arduinov čip lahko deluje že pri 1,8V vendar ne pri vseh frekvencah (Slika 1). Pri Arduinovih 5V bi čip lahko deloval pri 20MHz.

    Slike niBOD-ja ne moremo spreminjati programsko, ampak preko tako imenovanih varovalk. To niso varovalke v smislu zaščite pred tokom, ampak omogočajo vključevanje določenih lastnosti čipa, kot so izvor ure za takt, onemogočanje RESET priključka in uporaba le tega kot navaden IO priključek, ipd. Teh nastavitev je še kar nekaj: obsegajo 3 bajte, ki se imenujejo low, high in extended fuse (varovalka). V povezavi z BOD detektorjem nas bo zanimala ravno slednja saj je v celoti rezerviran za BOD nastavitve. Dejansko so uporabljeni samo prvi trije biti extended bajta: 0, 1 in 2. Iz slike 1 in tabele 1 vidimo, da bi pri Arduinovih 16MHz moral biti BOD nastavljen na 4,3V, saj pri 2,7V nastavitvi delovanje ni več zanesljivo pri frekvencah čez 10MHz. Pa je nastavitev res takšna?

    Da to preverimo in spreminjamo, potrebujemo načeloma programator za AVR mikrokontrolerje. K sreči se temu lahko tudi izognemo in uporabimo dodatni Arduino. Na Arduino, ki ga želimo uporabiti kot programator naložimo ArduinoISP skico (Sketch), ki jo najdemo v menuju Datoteka->Primeri v Arduinovem razvojnem okolju. Oba Arduina nato povežemo kot je prikazano na sliki 2 in tabeli 2.

    Tako. Končno lahko pogledamo kakšne so Arduinove privzete nastavitve, kar se tiče BOD. Za to uporabimo orodje, ki ste ga posredno že velikokrat uporabili, čeprav mogoče niste vedeli za to. Kdor je pozorno spremljal kaj Arduinovo razvojno okolje izpisuje v spodnji konzoli, ko prevajamo in nalagamo program na Arduina je opazil, da razvojno okolje kliče program „avrdude“. Avrdude je odprtokodni program, ki se uporablja za nalaganje programov v široko družino AVR mikronkontrolerjev. Najdete ga v vaši Arduino mapi pod ..Arduinohardwaretoolsavrbin. Z njim se med drugim da spreminjati nastavitve varovalk. V konzoli ga zaženete s temi parametri, glej program 1. le da namesto serijskih vrat COM57 vpišete dejansko tista na katera je priklopljen vaš Arduino. Nekje proti koncu rahlo kriptičnega odgovora boste zelo verjetno prebrali , glej program 2.

    Celotni članek

    Programiranje z Arduino (10)- Arduino gre v svet

    Tempero d.o.o. Vipavska 4e

    5270 Ajdovščina

    www.tehnologija.biz

    2014_SE220_42

    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