Innholdsfortegnelse:

ELEGOO Kit Lab eller Hvordan gjøre livet mitt som utvikler enklere: 5 trinn (med bilder)
ELEGOO Kit Lab eller Hvordan gjøre livet mitt som utvikler enklere: 5 trinn (med bilder)

Video: ELEGOO Kit Lab eller Hvordan gjøre livet mitt som utvikler enklere: 5 trinn (med bilder)

Video: ELEGOO Kit Lab eller Hvordan gjøre livet mitt som utvikler enklere: 5 trinn (med bilder)
Video: Question & Answer + GIVEAWAY LIVESTREAM / Honda Repair Shop Updates 2024, November
Anonim
ELEGOO Kit Lab eller Hvordan gjøre livet mitt som utvikler enklere
ELEGOO Kit Lab eller Hvordan gjøre livet mitt som utvikler enklere

Mål for prosjektet

Mange av oss har problemer med mock-up rundt UNO-kontrollerne. Ofte blir kabling av komponenter vanskelig med mange komponenter. På den annen side kan programmering under Arduino være kompleks og kan kreve mange kodelinjer. Prosjektet som er beskrevet her bør gjøre oppskriften mye enklere. Dette prosjektet er basert på og bruker nesten 80% av komponentene i "ELEGOO Super Starter Kit UNO R3".

Målet med dette prosjektet er:

- Opprettelsen av en teknisk buss som tillater samtidig bruk av opptil fire brødbrett.

- Opprettelsen av et referanseprogram som brukes som grunnlag for mange samlinger.

- Opprettelse av funksjoner som letter lesbarheten til programmeringen.

- Montering av LCD -skjermen i I2C.

Alle prosjektfilene kan lastes ned her.

Trinn 1: Prototypebussen

Prototypebussen
Prototypebussen

Komponentene:

  • Flerstrenget båndkabel på 40 ledere (35 cm).
  • Kontakt for 40-pinners flatkabel (5).
  • 40-pinners mann-hann PCB-kontakt.
  • Brødbrett i halv størrelse (2).

Fra ELEGOO -settet:

  • Kontrollerkortet.
  • Forlengelseskortet.
  • Brødbrett (2).

Monteringen er enkel å utføre:

Monter de fem kontaktene på flatkabelen. Fire kontakter blir festet med kontaktdelen vendt opp og en kontakt med kontaktdelen ned. Denne kontakten vil senere bli koblet til utvidelseskortet.

Monter de to PCB -kontaktene parallelt på ekspansjonskortet for å motta kontakten på båndkabelen.

Lodd pinnene på undersiden av brettet til inngangs-/utgangspinnene på UNO -forlengelseskontaktene.

Koble utvidelseskortet til UNO -kontrolleren, og sett deretter i båndkabelkontakten.

Etter montering vil alle signaler fra kontrollkortet være tilgjengelig på de fire kontaktene på flatkabelen.

Resultatet er en forlengelsesbuss som har plass til opptil fire brødbrett som vist på bildet.

Et visst antall pinner vil være frakoblet på utvidelseskortet (jeg skrev dem ned med små bokstaver) og er tilgjengelige. De kan brukes til å koble kretser mellom brødbrettene.

Trinn 2: Første montering: LCD -skjermen i I2C

Første samling: LCD -skjermen i I2C
Første samling: LCD -skjermen i I2C

LCM1602/HD44780 LCD -skjermen har mange lenker. Den direkte tilkoblingen til UNO -kontrolleren reduserer muligheten for tilkobling av andre komponenter.

Det er derfor jeg la til en PCF8574 -brikke for å redusere antall lenker til 2 ved hjelp av I2C -protokollen.

Komponentene:

  • En 16-pinners mann-til-mann PCB-kontakt.
  • Et 2x8cm ELEGOO loddebrett
  • En PCF8574 -brikke.
  • En 4-pinners kontakt med PCB-delen.

Komponentene i ELGOO -settet:

  • LCD -skjermen
  • 10k potensiometer

Forsamlingen:

Samlingen testes på prototypebussen og sveises deretter på loddeplaten. Denne skjermen kan enkelt legges til for enkel bruk i andre prosjekter.

Trinn 3: Programmering

Programmering
Programmering

Målet med programmet er å forenkle arbeidet ved utvikling av nye prosjekter.

Programmet består av flere deler:

- Den deklarative delen med inkludering av biblioteker og konstanter. Denne faste delen vil være felles for alle testene av de forskjellige komponentene. (B, C)

- Utviklingsdelen som inneholder "setup" og "loop" sekvensene. (D)

- Funksjonene deler som grupperer tre av dem (A). Disse funksjonene er beskrevet nedenfor.

Katalogen "0-My_ELEGOO_soft_build" inneholder fem filer som skal holdes sammen i samme mappe:

  • "0-My_ELEGOO_soft_build.ino".
  • "1-My_LCD_function.ino".
  • "2-My_IR_function.ino".
  • "3-My_Output_port_extension.ino".
  • "Noen prøver.rtf"

Ved å åpne filen "0-My_ELEGOO_soft_build.ino" vil Arduino også åpne de andre filene (.ino). Alle filene vises og kan endres.

"Noen samples.rtf" -filen inneholder noen eksempler på enkle programmer som bruker funksjonene.

Trinn 4: Ulike funksjoner

Ulike funksjoner
Ulike funksjoner

LCD -kontrollen

Formålet med denne funksjonen er å gjøre det lettere å vise informasjon på LCD -skjermen med en enkelt kommando. Denne kommandoen vil bli brukt i avsnittene om oppsett av tomrom og hulrom. Det viser også hvordan du bygger en funksjon.

Denne funksjonen kalles av lcdw (par1, par2, par3, par4, par5);

  • par1 indikerer ønsket underfunksjon.
  • par2 indikerer linjenummeret på displayet (0 eller 1).
  • par3 indikerer kolonnenummeret på displaylinjen (0 til 15).
  • par4 inneholder teksten som skal vises.
  • par5 inneholder en numerisk verdi som skal vises.

Eksempler er:

lcdw (0, 0, 0, "", 0); initialiserer displayet. Bare denne samtalen må plasseres i det ugyldige oppsettselementet.

lcdw (1, 1, 5, "HELLO WORLD", 0); viser teksten på den andre linjen fra posisjon 6.

lcdw (1, 1, 5, "HELLO WORLD", 25); viser teksten "HELLO WORLD 25" på den andre linjen fra posisjon 6. lcdw (1, 0, 0, "" ", 25); viser" 25 "på den første linjen fra posisjon 1.

lcdw (2, 0, 0, "", 0); tømmer displayet.

Denne funksjonen er ganske enkel og kan fullføres i henhold til dine behov.

Det infrarøde grensesnittet og fjernkontrollen

Formålet med denne funksjonen er å lette bruken av den infrarøde sensoren med fjernkontrollen. Denne funksjonen kalles av tst = IRrec (par1);

par1 indikerer ønsket underfunksjon. 0 for å initialisere sensoren, 1 for å motta og dekode tasten som trykkes på fjernkontrollen. En tekst som tilsvarer navnet på nøkkelen returneres i variabelen tst

Økning i antall digitale dører

Målet er å bruke 74hc595 -brikken for å øke antall digitale utgangspinner. Kretsen bruker 3 UNO -pinner som inngang og tilbyr 8 binære porter som utgang. Vi vil bruke to funksjoner. Det fysiske tilkoblingsdiagrammet vil bli beskrevet i neste avsnitt.

Kretsen består av to registre med 8 posisjoner (ett register internt i ino -programmet og et annet i kretsen). Oppdateringen gjøres i to trinn. Først av alt kan verdier i det interne registeret endres (ved hjelp av setExtPin -funksjonen). Deretter kopieres det interne registeret inn i kretsen (ved hjelp av Expin -funksjonen).

Expin (par1);

Par1: 0 for initialisering av brikken. 1 for å stille alle utgangsportene til LAV. 2 for å kopiere det interne registeret til 74hc595 -brikken

setExtPin (par1, par2);

  • par1: nummeret på døren som skal endres (0-7).
  • par2: ønsket dørstatus (LAV eller HØY).

Trinn 5: Eksempler på bruk av buss, program og eksempler

Eksempler på bruk av buss, program og eksempler
Eksempler på bruk av buss, program og eksempler

For å harmonisere elementene beskrevet i dette prosjektet foreslår jeg noen eksempler.

Disse eksemplene finner du i filen "Some samples.rtf".

Kabling av komponentene er gitt av diagrammene ovenfor. Prosjektet er designet for å tillate samtidig bruk av mange komponenter.

For å bruke en modell må du bare:

- Koble de ønskede komponentene på brødbordet.

- Kopier den relevante delen av "Some samples.rtf" -filen til programdelen (D) og kompiler/last den opp til kontrolleren.

Du vil oppdage at disse malene ikke har mange kodelinjer. Dette er for å gjøre programmeringen enklere.

Programmet, når det er kompilert, vil bare laste inn funksjonene som brukes. Utgangskoden er optimalisert.

På den annen side letter maskinvarebussen med sin evne til å bruke flere brødbrett i stor grad montering.

For dette prosjektet er alle komponentene koblet sammen på flere brødbrett. LCD -skjermen ble koblet til UNO -utvidelseskortet.

Dette tillater en enkel kombinasjon og en rask montering av komponentene. Takket være de korte ledningene, er hele enheten visuelt tiltalende.

Du kan nå gi fantasien din frie tøyler for modelleringen av prosjektene dine.

Nyt det!

Anbefalt: