Sisukord:

Arduino 101: Tech Guy kursus: 4 sammu
Arduino 101: Tech Guy kursus: 4 sammu

Video: Arduino 101: Tech Guy kursus: 4 sammu

Video: Arduino 101: Tech Guy kursus: 4 sammu
Video: Котика ударило током, 10 т. Вольт 2024, November
Anonim
Arduino 101: Tech Guy kursus
Arduino 101: Tech Guy kursus

Loodan, et paljud inimesed, eriti algajad, kes soovivad sukelduda Arduino maailma, saavad sellest ja teistest minu artiklitest/juhenditest (mida ma kavatsen regulaarselt postitada) teada saada.

See ei oleks nagu tavaline kopeerimise ja kleepimise tund. See oleks palju rohkem kui.

Tere! Olen Roman ja olen PHP keskastme arendaja.

See saab eelneva ajaloo, nii et kui soovite järgmise sammu juurde minna - kerige lihtsalt alla Nõuded.

Hakkasin programmeerima, kui olin 10 -aastane. ja see on mulle väga suurt mõju avaldanud. Sest see oli nii huvitav - ma ei suutnud seda uskuda. Pealegi ei suutnud paljud minuvanused poisid koolis selliseid oskusi üles näidata. See oli juba enne seda, kui me hakkasime kursusel õppima informaatikat ja ainet ning programmeerimist.

Niisiis, ma tahtsin lihtsalt inimesi aidata. Et muuta nende elu lihtsamaks ja pakkuda mõningaid tööriistu, mis aitavad neil rutiiniga vastuollu minna ja lahendada mingeid probleeme. Ja 2 aastat tagasi mõtlesin lisana välja Arduino.

Siis olen otsustanud minna mingile kursusele ja luua selliseid asju nagu see. Hiljem teen Youtube'is videoid, kus näete, kuidas seadistada ja teha asju, et saada täiuslik vaste.

Kuid siin saate minult rohkem teavet koodi põhitõdede kohta. Kuum, et koodi õigesti üles ehitada, millised on programmeerimise põhimõtted ja miks need on olulised. Kõik asjad, mida me teeme - on inseneriteadus. Ja eksimiseks pole kohta. Niisiis, lugege selgelt ja kui teil tekib mõni küsimus - kirjutage see kommentaaridesse.

Samm: installige nõutav tarkvara/hankige vajalik riistvara

Arendusprotsessi alustamiseks vajate:

Tarkvara

- Visual Studio kood

- Platvorm. IO

Riistvara

- Üks Arduino tahvlitest (Mega 2560, Nano, Leonardo jne)

- Leivalaud

-Dupont juhtmed (mees-mees)

- erineva nimiväärtusega takistid

- RGB -lambid

- Ekraanid jne

2. etapp: programmeerimispõhimõtted

Kui soovite kirjutada tõhusa ja arusaadava koodi, peate programmeerimispõhimõtetest rohkem teada saama. Oma projektinäidetes järgime järgmisi põhimõtteid:

- TAHKE

- KUIV (ärge korrake ennast)

- KISS (hoidke seda nii lihtsana)

- YAGNI (sul pole seda vaja)

Mis on SOLID?

SOLIDi saab transkribeerida järgmiselt:

- [S] Üksainus vastutus (iga klass vastutab teatud liiki eest)

- [O] avatud suletud põhimõte (klassid ega objektid ei ole laiendamiseks avatud, kuid muudetud)

- [L] Liskovi asendamine (klassid ja objektid ei saa kahjustamata asendada nende alatüüpidega)

- [I] Liideste eraldamine (parem, kui on olemas rohkem universaalseid liideseid selle asemel, et omada ühte universaalset)

- [D] Sõltuvuse ümberpööramine (klassid peaksid põhinema abstraktsioonidel)

Mis on DRY?

KUIVA tähendab, et ära korda ennast. Niisiis, kui teete mõne lahenduse ja näete, et on olemas samad meetodid - tehke nende meetoditega abiklass (isegi võimalik staatiliselt helistada), et see oleks võimalikult lihtne. Aga see lugu on teine lugu.

Mis on KISS?

KISS seisab selle eest, et see oleks nii lihtne. See tähendab, et kõik teie lahendused peaksid sisaldama võimalikult vähe koodiridu, aga ka mitte kogu klassi liiga keeruliseks tegema.

Mis on YAGNI?

YAGNI seisab selle eest, et sul pole seda vaja. See tähendab, et sel viisil peaksite looma klassid ja funktsionaalsused, mida kõike või enamjaolt kasutatakse. Sest kui seda poleks - eemaldage see ohutult, kuna te ei vaja seda. Lihtne.

Proovige oma koodi võimalikult puhtana hoida.

3. samm: projektid

See samm sisaldab ja seda jätkatakse, kuna näiteid ja raamatukogusid sisaldavate projektide tõttu saate hargneda ja kasutada.

Lisaks proovin luua VS -koodi laienduse, et saaksite oma projekti alla laadida vajalikud libid.

Pidage meeles, et linkideta projektid ei ole veel realiseerunud ja need valmivad lähitulevikus. Püüan teha nii informatiivset juhendamist kui suudan. Ja hiljem - ma võtan videoid ja lisan need juhistena, mida saate järgida.

  • Lihtne LED -lampide juhtimine
  • LED -id + potentsiomeeter (potentsiomeetri väärtuste dünaamiline kaardistamine LED -ide arvuga)
  • Lihtne ilmajaam (v1; niiskus + temperatuur)
  • Täiustatud ilmajaam koos LCD 1602 (v2)
  • Täiustatud ilmajaam v2 + seaded (v3)
  • Täiustatud ilmajaam v3 + IR (infrapunakaugjuhtimispult) ekraani jaoks (v4)
  • Täiustatud ilmajaam v4 + näitab olekut LED -idega (v5)
  • Lihtne RFID -lugeja (v1)
  • Täiustatud RFID -lugeja v1 koos andmete kuvamisega LCD 1602 ja 0,91 -tollise OLED -ekraaniga (I2C) (v2)
  • Täiustatud RFID -lugeja v2 koos releekontrolliga (v3)
  • Lihtne ühe SIM-kaardiga jaam (v1)
  • Täiustatud ühe SIM-kaardiga jaam koos 0,91-tollise OLED-ekraaniga (v2)
  • Täiustatud kahe SIM-kaardiga jaam koos 0,91-tollise OLED-ekraaniga (v1)
  • Täiustatud kahe SIM-kaardiga jaam v1 koos SMS-i saatmisega
  • Müügiautomaat
  • Lihtne RGB riba juhtimine WS8212b (v1)
  • Täiustatud RGB riba WS8212b juhtimine v1 koos värvidega + heleduse juhtimine (potentsiomeeter + nupud) (v2)
  • Täiustatud RGB riba WS8212b Control v1 IRVending masinaga

Kõik projektid ja raamatukogud on saadaval GitHubis.

4. samm: tulevased projektid avaldatakse

7.-8. Märts 2020- lihtsad LED-pirnide juhtimine- LED-id + potentsiomeeter (potentsiomeetri väärtuste dünaamiline kaardistamine LED-ide arvuga)

Soovitan: