Arduino Nano – pirma pažintis

arduino-nano-v3-001   Pagaliau šis žvėris pas mane rankose. Andruido Nano. Žinoma ne originalas – originalas nerealius pinigus kainuoja. Jo kinietiškas brolis (klonas,  prototipas arba kopija vienas prie vieno). Nors kiek supratau projekto kūrėjai ir nelabai pyksta, o kartais net ir giria prototipų kūrėjus.

   Dydis ir svoris juokingi. 4,3 cm x 1,8 cm. Svoris – neturiu kuo pasverti tokių mažų daiktų. Mikrokontroleris – ATmega328, pradžiai tikrai užteks. Prie kompiuterio jungiasi Mini-B USB jungtimi, iš tos pačios jungties gauna ir +5V maitinima. Ateičiai reikės pasidaryti montažinę plokštę testams, su atskiru maitinimu (kompiuterio USB atiduos ne daugiau 500mA).

   Ir taip turim: mikrokontroleris, kuris dirba 16MHz dažniu, jame yra 30KB Flash atminties (realiai yra 32KB, bet 2KB jau užimta BootLoader'iu), 2KB SRAM ir 1KB EEPROM. Mūsų rašomos programėlės saugomos Flash atmintyje, ateityje gal ir bus galima panaudoti likučius.arduino-nano-v3-002

   Įvesties – išvesties išvadai (įvadai), ar dar kaip juos pavadinti. Angliškai "pins" – kontaktai, nu ne kontaktai čia, o kojelės. 14 skaitmeninių įvesties/išvesties (uf ta lietuvybė), en "Digital I/O Pins", jų yra realiai 16, bet pirmos dvi panaudotos bendravimui su kompiuteriu (TX/RX). 6 iš 14 gali būti naudojamos kaip PWM (en – Pulse-width modulation) arba paprasčiau – galima gauti ne tik logini 0 (0V) ar loginį 1 (5V), bet priklausomai nuo pasirinktos reikšmes (0-255) įtampą nuo 0V iki 5V. pvz.: "analogWrite(3,127);" turėsim ant D3 išvado 2,5V. Ups, jau iš kart įlindau į kontrolerio programavimą, gal šitą reikalą paliekam ateičiai. Kam to PWM reikia? Reguliuoti apšvietimo ryškumą, elektrinio varikliuko apsisukimų greitį. Patogu ir paprasta.

   Tęsiant apie įvadus, turim dar 8 (!) analoginius įėjimus (Analog Input Pins). Duodam į įvadą nuo 0V iki 5V – kontroleris mato skaičiukus nuo 0 iki 1023. Vėl – patogu ir paprasta 🙂

   Kontroleryje dar įlituotas įtampos stabilizatorius. Kaip jau minėjau – 5V jis maitinasi iš USB, bet prie kompiuterio nelaikysi visą laiką pririšto, o ir kompiuterio USB portas atsijungs jei apkrova viršys 500mA (teoriškai turėtų sudirbti kompiuterio apsauga, praktiškai gal nemėginam – gali daug kainuoti). Tam yra VIN – išorinio maitinimo kontaktas, galime naudoti sena maitinimo bloka nuo 7V iki 12V, nors gamintojai sako kad ribinės reikšmės 6V-20V. O jei mums laidai iš vis trukdo – statom akumuliatorius (kad ir blokelį iš 4AA 4×1,2=4.8V – mažoka, geriau iš 6AA). Stabilizatorius duoda mums 5V – populiari modulių (mikroschemų) maitinimo įtampa ir 3,3V – ekonomiškiems moduliams.

   Nu apie jį gal tiek, tiesa, kontroleryje yra dar 3 4 šviesos diodai ir "Reset" knopkė. 2 šviesdiodžiai pajungti prie RX/TX – siunčiant ar gaunant duomenis iš kontrolerio į kompiuterį (arba atvirkščiai) jie mirksi rodydami aktyvumą. Trečias šviesos diodas pajungtas tiesiai prie D13 kojos. Paskutinis – maitinimo indikatorius. Kam "Reset" knopkė reikalinga gal aiškinti nereikia 🙂

   Belieka jungt prie kompiuterio.

  Kadangi spausdintines plokštes gaminuosi dažniausiai pats ir schemas braižau su DipTrace, iš kart pasidariau Arduino Nano biblioteką.

arduino-nano-v3-diptrace-component arduino-nano-v3-diptrace-patern

Jei naudojate Eagle – ArduinoNano30Eagle.zip