Skip to content

Dainiaus webaz – elektronika ir ne tik !

Analog time piece sky wide, synced to the ticker inside, move to the rhythm of the moon and tide…

Menu
  • Pradžia
  • DC Labs
  • Asmeninis žodynas
  • Apie
  • Admin
  • Web-Stat
Menu

Arduino 2 – kiemo apšvietimo automatuko link

Posted on 2015.02.032015.11.03 by Dainius

Po truputį artėju prie galutinio tikslo – mikroprocesorinio kiemo apšvietimo valdymo. Analoginis (sakykim) variantas jau senokai veikia ir aprašytas čia. Šitas variantas nelabai skiriasi nuo pirmojo pažaidimo su Arduino. Pirmas skirtumas – LCD prijungtas tik dviem laidais, o ne 7. Kodėl ? Todėl, kad galutiniame prietaise naudosiu ne didelį Atmega 328, o mažiuką AtTiny45. Nors iš kitos pusės LCD šitam prietaisui visai nereikalingas, bet man patinka kai viskas pypsi, mirksi, arba rodo. Čia gerai matyti nustatytas potenciometrų reikšmės, gal dar kažką. Ir nors galutiniame variante LCD nebus – galbūt sumastysiu padaryti 4 pinus, prie kurių prijungus truputį modifikuotą LCD bus galima matyti kaip veikia uCPU, potenciometrai, vienu žodžiu mini diagnostikai. Antras skirtumas – programa nuskaito dviejų potenciometrų reikšmes ir užrašo jas ekrane. Apie viską paeiliui.

Kaip sumažinti LCD <> uCPU naudojamų kontaktų skaičių. Pirma mintis buvo tokia, sakykim, neryški, nes žinios iš studijų laikų, iš prof. habil. dr. Raimundo Kirvaičio paskaitų – postūmio registro naudojimas. Principą lyg ir pamenu, svarbiausia ir yra žinoti ką įmanoma padaryti, o kaip – paklausiau dėdės Googliaus. Ir atspėjau – pavyzdžių pilna. Pasirinkau pirmą pasitaikiusią, naudojančia LiquidCrystal biblioteką. Schema tokia:

schemČia, žinoma, tik LCD prijungimo mintis, tik prijungtas ne Arduino uCPU, nėra potenciometrų. Bet užtai panaudojant 74LS164 registrą duomenys is uCPU paleidžiami dviem laidais, o paskui išmetami lygiagrečiai. Schema teisinga, bet užtai LiquidCrystal biblioteka – ne. Bent jau man niekaip nepavyko įrašyti teksto į antrą eilutė, nors realiai ten nieko sudėtingo, tas pats standartinis:

lcd.setCursor (0,1);

Neveikia nors tu ką. O juk žinau, kad schema sujungta gerai, hardwaras veikiantis… Bet kolega iš o.electronics patarė pabandyti su kita biblioteka ShiftRegLCD123 – ir viskas suveikė.

Toliau – potenciometrų prijungimas. Bet iš tikrųjų – procesoriukas nemoka matuoti potenciometro varžos, moka matuoti tik įtampą. Tam reikia potenciometrą jungti kaip varžinį daliklį, ir šliaužiklio kontaktą paduoti į atitinkamą potenciometro įėjimą. Tuomet procesoriukas „matys” ne varžą, o įtampą, ir sugebės ją nuskaityti, paversdamas į reikšmes nuo 0 iki 1023. O toliau jau galima su tuo daryti kokius nors skaičiavimus.

IMG_4986Vat kaip tas viskas atrodo ant maketinės plokštės. Viršuje Arduino UNO modulis, jo dešinėje – du potenciometrai, kurių vertės nuskaitomos, vienas atstoja apšvietimo lygio potenciometrą, o kitas LDRą (Light Dependent Resistor). Trečias potenciometras žemiau tų dviejų naudojamas LCD kontrastui nustatyti. Kairiau nuo jo, laidų raizgalynėje slepiasi  74LS164, ant jo užmečiau kondensatorių (maitinimo trugdžių filtravimui), plius rezitoriukas ir diodas – loginis IR elementas, skirtas ekraniuko E įėjimui. Dešiniau dar vienas diodas… Čia tokią biškį apgavystę padariau. Pagal aprašymą ekraniuko fono pašvietimas 4,2V, o iš USB užmaitinčiau 5V, tipo per daug. Nors šiaip bandžiau – nesprogo. Bet, kad būtų ramiau, prijungiau diodą, kad „nuvalgytų” maždaug 0,5V. Ir visas tas reikalas atrodo taip:

www.youtube.com/watch?v=o2eSowBW4wA
Programos failiukas čia.

2015.02.04:

Truputį pataisiau kodą. Kadangi loop() gale yra ekrano išvalymas (lcd.clear() ), tai pirmojo lcd.setCursor (0,0) nebereikia – lcd.clear() ne tik išvalo ekraną, bet ir numeta kursorių į pradžią. Rezultatas – dar mažesnė sukompiliuota programa – tik 3242 B, vietoje 3254 B. Programos failiukas aukščiau – atnaujintas.

Bibliotekos komandos yra čia.

Parašykite komentarą Atšaukti atsakymą

El. pašto adresas nebus skelbiamas. Būtini laukeliai pažymėti *

The maximum upload file size: 3 MB. You can upload: image. Links to YouTube, Facebook, Twitter and other services inserted in the comment text will be automatically embedded. Drop files here

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Kategorijos

  • Arduino (12)
  • Auto… (25)
  • Bambesiai (19)
  • Belekas… (15)
  • CadSoft Eagle LBR'ai (7)
  • Elektronika (176)
  • Kompiuterija (21)
  • KosTmosas (9)
  • Laisvalaikis (14)
  • Lithuania inside (5)
  • Lobių paieškos (1)
  • Naudinga informacija (19)
  • Piro… (4)
  • Programatoriai (12)
  • Programavimas (4)
  • Retro PC HW (13)
  • Skaičiuotuvai (3)
  • STM32 (4)

Archyvas

  • 2026 m. spalio mėn. (2)
  • 2026 m. rugsėjo mėn. (5)
  • 2026 m. rugpjūčio mėn. (1)
  • 2026 m. gegužės mėn. (3)
  • 2026 m. balandžio mėn. (1)
  • 2026 m. kovo mėn. (2)
  • 2026 m. sausio mėn. (2)
  • 2025 m. gruodžio mėn. (5)
  • 2025 m. lapkričio mėn. (2)
  • 2025 m. spalio mėn. (1)
  • 2025 m. rugpjūčio mėn. (2)
  • 2025 m. birželio mėn. (1)
  • 2025 m. gegužės mėn. (1)
  • 2025 m. balandžio mėn. (2)
  • 2025 m. kovo mėn. (1)
  • 2025 m. vasario mėn. (2)
  • 2025 m. sausio mėn. (1)
  • 2024 m. lapkričio mėn. (1)
  • 2024 m. spalio mėn. (1)
  • 2024 m. rugsėjo mėn. (1)
  • 2024 m. liepos mėn. (2)
  • 2024 m. gegužės mėn. (1)
  • 2024 m. kovo mėn. (1)
  • 2024 m. vasario mėn. (1)
  • 2024 m. sausio mėn. (1)
  • 2023 m. gruodžio mėn. (2)
  • 2023 m. lapkričio mėn. (1)
  • 2023 m. rugsėjo mėn. (2)
  • 2023 m. birželio mėn. (1)
  • 2023 m. gegužės mėn. (2)
  • 2023 m. balandžio mėn. (1)
  • 2023 m. kovo mėn. (2)
  • 2023 m. vasario mėn. (2)
  • 2023 m. sausio mėn. (5)
  • 2022 m. gruodžio mėn. (1)
  • 2022 m. lapkričio mėn. (1)
  • 2022 m. spalio mėn. (1)
  • 2022 m. rugsėjo mėn. (3)
  • 2022 m. rugpjūčio mėn. (1)
  • 2022 m. liepos mėn. (1)
  • 2022 m. gegužės mėn. (3)
  • 2022 m. balandžio mėn. (4)
  • 2022 m. kovo mėn. (3)
  • 2022 m. vasario mėn. (4)
  • 2022 m. sausio mėn. (4)
  • 2021 m. gruodžio mėn. (3)
  • 2021 m. lapkričio mėn. (7)
  • 2021 m. spalio mėn. (4)
  • 2021 m. rugsėjo mėn. (1)
  • 2021 m. rugpjūčio mėn. (3)
  • 2021 m. liepos mėn. (1)
  • 2021 m. birželio mėn. (2)
  • 2021 m. gegužės mėn. (1)
  • 2021 m. balandžio mėn. (2)
  • 2021 m. kovo mėn. (1)
  • 2021 m. vasario mėn. (2)
  • 2021 m. sausio mėn. (1)
  • 2020 m. gruodžio mėn. (1)
  • 2020 m. lapkričio mėn. (4)
  • 2020 m. spalio mėn. (2)
  • 2020 m. rugpjūčio mėn. (2)
  • 2020 m. liepos mėn. (4)
  • 2020 m. birželio mėn. (2)
  • 2020 m. gegužės mėn. (1)
  • 2020 m. sausio mėn. (2)
  • 2019 m. spalio mėn. (4)
  • 2019 m. liepos mėn. (2)
  • 2019 m. vasario mėn. (1)
  • 2019 m. sausio mėn. (1)
  • 2018 m. spalio mėn. (1)
  • 2018 m. rugsėjo mėn. (1)
  • 2018 m. rugpjūčio mėn. (2)
  • 2018 m. balandžio mėn. (1)
  • 2018 m. kovo mėn. (3)
  • 2018 m. vasario mėn. (3)
  • 2018 m. sausio mėn. (1)
  • 2017 m. gruodžio mėn. (2)
  • 2017 m. lapkričio mėn. (3)
  • 2017 m. spalio mėn. (4)
  • 2017 m. rugsėjo mėn. (2)
  • 2017 m. liepos mėn. (1)
  • 2017 m. birželio mėn. (2)
  • 2017 m. gegužės mėn. (1)
  • 2017 m. balandžio mėn. (2)
  • 2017 m. kovo mėn. (2)
  • 2017 m. vasario mėn. (1)
  • 2017 m. sausio mėn. (6)
  • 2016 m. gruodžio mėn. (3)
  • 2016 m. lapkričio mėn. (1)
  • 2016 m. spalio mėn. (4)
  • 2016 m. rugsėjo mėn. (4)
  • 2016 m. rugpjūčio mėn. (2)
  • 2016 m. birželio mėn. (1)
  • 2016 m. kovo mėn. (1)
  • 2016 m. vasario mėn. (1)
  • 2016 m. sausio mėn. (5)
  • 2015 m. lapkričio mėn. (6)
  • 2015 m. spalio mėn. (3)
  • 2015 m. liepos mėn. (2)
  • 2015 m. birželio mėn. (2)
  • 2015 m. gegužės mėn. (1)
  • 2015 m. kovo mėn. (3)
  • 2015 m. vasario mėn. (3)
  • 2015 m. sausio mėn. (4)
  • 2014 m. gruodžio mėn. (1)
  • 2014 m. lapkričio mėn. (1)
  • 2014 m. spalio mėn. (2)
  • 2014 m. rugsėjo mėn. (5)
  • 2014 m. rugpjūčio mėn. (3)
  • 2014 m. gegužės mėn. (1)
  • 2014 m. balandžio mėn. (1)
  • 2014 m. vasario mėn. (1)
  • 2014 m. sausio mėn. (4)
  • 2013 m. gruodžio mėn. (1)
  • 2013 m. spalio mėn. (3)
  • 2013 m. liepos mėn. (1)
  • 2013 m. birželio mėn. (1)
  • 2013 m. gegužės mėn. (2)
  • 2013 m. balandžio mėn. (2)
  • 2013 m. kovo mėn. (3)
  • 2013 m. vasario mėn. (1)
  • 2013 m. sausio mėn. (1)
  • 2012 m. gruodžio mėn. (2)
  • 2012 m. lapkričio mėn. (2)
  • 2012 m. spalio mėn. (1)
  • 2012 m. rugsėjo mėn. (1)
  • 2012 m. rugpjūčio mėn. (1)
  • 2012 m. liepos mėn. (3)
  • 2012 m. birželio mėn. (2)
  • 2012 m. gegužės mėn. (2)
  • 2012 m. balandžio mėn. (1)
  • 2012 m. kovo mėn. (2)
  • 2012 m. vasario mėn. (6)
  • 2012 m. sausio mėn. (1)
  • 2011 m. gruodžio mėn. (1)
  • 2011 m. lapkričio mėn. (1)
  • 2011 m. spalio mėn. (1)
  • 2011 m. rugsėjo mėn. (2)
  • 2011 m. rugpjūčio mėn. (2)
  • 2011 m. liepos mėn. (2)
  • 2011 m. birželio mėn. (3)
  • 2011 m. gegužės mėn. (4)
  • 2011 m. balandžio mėn. (6)
  • 2011 m. kovo mėn. (11)
  • 2011 m. vasario mėn. (2)

Valdymas

  • Prisijungti
  • Įrašų RSS srautas
  • Komentarų RSS srautas
  • WordPress.org

Nuorodos

Nuorodos
  • Asmeninis žodynas
  • OAB Team member
© 2026 Dainiaus webaz – elektronika ir ne tik ! | Powered by Minimalist Blog WordPress Theme