Kazalo:
- 1. korak: Napajalna napetost
- Korak: Notranja temperatura
- 3. korak: Analogni primerjalnik (prekinitev)
- 4. korak: Števec
- 5. korak: Vnaprej določene konstante
- Korak 6: Ohranite spremenljivko v RAM -u s ponastavitvijo
- 7. korak: dostopajte do signala ure
- 8. korak: Notranja struktura vrat ATmega328P
- 9. korak: Vgrajena (vgrajena) LED kot fotodetektor
Video: Manj znane lastnosti Arduina: 9 korakov
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:05
To je bolj seznam ne tako pogosto omenjenih funkcij običajno uporabljenih platform Arduino (npr. Uno, Nano). Ta seznam bi moral delovati kot referenca, kadar koli morate poiskati te funkcije in razširiti besedo.
Oglejte si kodo, da si ogledate primere za vse te funkcije, saj sem jih uporabil v več svojih rudarskih projektih na poučevanju (npr. Arduino 1-žični zaslon (144 znakov)). Naslednji koraki pojasnjujejo vsako funkcijo.
1. korak: Napajalna napetost
Arduino lahko posredno meri lastno napajalno napetost. Z merjenjem notranje reference z napajalno napetostjo kot zgornjo mejo referenčne vrednosti lahko dobite razmerje med notranjo referenčno in napajalno napetostjo (napajalna napetost deluje kot zgornja meja za analogno/ADC odčitavanje). Kot veste natančno vrednost referenčne vrednosti notranje napetosti, lahko nato izračunate napajalno napetost.
Za natančne podrobnosti o tem, vključno s primerno kodo, glejte:
- Tajni voltmeter Arduino-izmerite napetost akumulatorja:
- Ali lahko Arduino meri svoj Vin ?:
Korak: Notranja temperatura
Nekateri Arduino so opremljeni z notranjim temperaturnim senzorjem in zato lahko merijo njihovo notranjo (polvodovsko) temperaturo.
Za natančne podrobnosti o tem, vključno s primerno kodo, glejte:
Notranji temperaturni senzor:
Ali lahko Arduino meri svoj Vin ?:
3. korak: Analogni primerjalnik (prekinitev)
Arduino lahko nastavi analogni primerjalnik med pin A0 in A1. Tako ena poda raven napetosti, druga pa se preveri, ali prehaja to napetost. Prekinitev se dvigne, odvisno od tega, ali je križišče naraščajoči ali padajoči rob (ali oboje). Prekinitev lahko nato ujame programska oprema in ustrezno ukrepa.
Za natančne podrobnosti o tem, vključno s primerno kodo, glejte:
Prekinitev analognega primerjalnika:
4. korak: Števec
Seveda ima AVR več števcev. Običajno se uporabljajo za nastavitev časovnika različnih frekvenc in po potrebi povečajo prekinitve. Druga je lahko zelo staromodna uporaba, da jih uporabite samo kot števce brez dodatne čarovnije, samo preberite vrednost, ko jo potrebujete (anketa). Interesantna uporaba tega bi lahko bila odvračanje gumbov, npr. Posredujte na primer to objavo: AVR Primer števca T1
5. korak: Vnaprej določene konstante
Obstaja nekaj vnaprej določenih spremenljivk, ki jih lahko uporabite za dodajanje podatkov o različici in kompilaciji v vaš projekt.
Za natančne podrobnosti o tem, vključno s primerno kodo, glejte:
Serial.println (_ DATE_); // datum sestave
Serial.println (_ TIME_); // čas zbiranja
Niz stringOne = niz (ARDUINO, DEC);
Serial.println (stringOne); // različica arduino ide
Serial.println (_ VERSION_); // gcc različica
Serial.println (_ FILE_); // datoteka sestavljena
ti delčki kode bodo te podatke oddali v serijsko konzolo.
Korak 6: Ohranite spremenljivko v RAM -u s ponastavitvijo
Dobro znano je, da ima Arduino Uno (ATmega328) notranji EEPROM, ki vam omogoča, da med izklopom ohranite vrednosti in nastavitve ter jih ob naslednjem vklopu obnovite. Ne tako dobro znano dejstvo je lahko, da je dejansko mogoče med ponastavitvijo ohraniti vrednost tudi v RAM -u - vendar se vrednosti med ciklom napajanja izgubijo - s sintakso:
nepodpisana dolga spremenljivka_, ki_ je_zahranjena _atributa_ ((odsek (".noinit")));
Tako lahko na primer štejete število RESET-ov in z uporabo EEPROM-a tudi število vklopov.
Za natančne podrobnosti o tem, vključno s primerno kodo, glejte:
- Obdrži spremenljivko v Ramu s ponastavitvijo:
- Knjižnica EEPROM:
7. korak: dostopajte do signala ure
Arduinos in drugi AVR (na primer ATtiny) imajo notranjo uro, ki vam omogoča, da jih zaženete brez uporabe zunanjega kristalnega oscilatorja. Poleg tega lahko hkrati ta signal povežejo z zunanjostjo tako, da ga položijo na pin (npr. PB4). Težava pri tem je, da morate spremeniti nastavke za varovalke čipov, da omogočite to funkcijo. Zamenjava varovalk pa vedno nosi tveganje, da se čip zazida.
Omogočiti morate varovalko CKOUT, najlažji način za to pa je, da sledite navodilom o tem, kako spremeniti nastavke varovalk AVR Atmega328p - 8 -bitnega mikrokrmilnika z uporabo Arduina.
Za natančne podrobnosti o tem, vključno s primerno kodo, glejte:
- Uglaševanje notranjega oscilatorja ATtiny:
- Kako spremeniti sklope varovalk AVR Atmega328p-8-bitni mikrokrmilnik z uporabo Arduina:
8. korak: Notranja struktura vrat ATmega328P
Poznavanje notranje strukture vrat ATmega328P vrat nam omogoča, da presežemo standardne omejitve uporabe. Za več podrobnosti in shemo notranjega tokokroga glejte razdelek o merilniku kapacitivnosti za območje od 20 pF do 1000 nF.
Preprost primer je uporaba gumbov z digitalnimi vrati, ki ne potrebujejo nobenega upora zaradi uporabe notranjega vlečnega upora, kot je prikazano v zaporednem primeru vhodnega vlečnega vhoda ali gumbu Arduino, ki ga je mogoče naročiti brez upora.
Naprednejša je uporaba tega znanja, kot je omenjeno, za merilne kondenzatorje, ki so majhni kot 20 pF in poleg tega brez dodatnega ožičenja! Da bi dosegli to zmogljivost, primer uporablja notranjo/vhodno impedanco, notranji vlečni upor in potepuški kondenzator. Primerjajte z vadnico CapacitanceMeter Arduino, ki ne sme biti nižja od nekaj nF.
9. korak: Vgrajena (vgrajena) LED kot fotodetektor
Veliko plošč Arduino ima vgrajene ali vgrajene LED diode, ki jih je mogoče upravljati iz kode, npr. plošče Uno ali Nano na zatiču 13. Z dodajanjem ene same žice s tega zatiča na analogni vhodni pin (npr. A0) lahko to LED uporabite tudi kot fotodetektor. To lahko uporabimo na različne načine, na primer; uporabite za merjenje osvetlitve okolja, uporabite LED kot gumb, uporabite LED za dvosmerno komunikacijo (PJON AnalogSampling) itd.
Priporočena:
Stikalo z manj dotikanjem: 11 korakov
Stikalo na dotik z manj dotika: V prevladujoči situaciji COVID-19 uvedba uporabniškega vmesnika brez dotika za javne stroje, da se prepreči širjenje pandemije v skupnosti
100 USD super svetla svetilka za manj kot 10 USD!: 5 korakov
100 USD super svetla svetilka za manj kot 10 USD !: Najprej povem, da je navdih za ta Instructable pripisan dchall8 za njegovo Tactical Flashlight Instructable. Mislil sem, da mora obstajati lažji način za oblikovanje manjše svetilke z manj strojne opreme in take, ki traja manj časa. Jaz p
DIY FPV Drone za manj: 7 korakov
DIY FPV Drone za manj: Letenje z brezpilotnimi letali FPV je zabaven hobi, ki uporablja očala in kamero, da vidi, kaj dron "vidi", ljudje pa celo tekmujejo za denarne nagrade. Vendar pa je težko priti v svet letenja FPV - in zelo drago! Tudi najmanjši brezpilotni letali FPV so lahko
Okvir za fotografije Raspberry Pi v manj kot 20 minutah: 10 korakov (s slikami)
Okvir za fotografije Raspberry Pi v manj kot 20 minutah: Da, to je še en digitalni fotookvir! Ampak počakaj, bolj je eleganten in verjetno najhitreje sestavljen in tečen
Gojenje več solate v manj prostora ali gojenje solate v vesolju, (več ali manj) .: 10 korakov
Gojenje več solate na manj prostora ali … Gojenje solate v vesolju, (več ali manj) .: To je profesionalna oddaja natečaja Growing Beyond Earth, Maker, poslanega prek Instructables. Ne bi mogel biti bolj navdušen nad oblikovanjem za pridelavo vesoljskih pridelkov in objavo prvega Instructable -a. Za začetek nas je natečaj prosil, da