|
Svet elektronike Revija za prave elektronike
|
|
Poglej prejšnjo temo :: Poglej naslednjo temo |
Avtor |
Sporočilo |
Cinol Novinec
Pridružen/-a: Sre Sep 2018 20:14 Prispevkov: 4
|
Objavljeno: Čet Sep 06, 2018 10:45 am Naslov sporočila: Izbira razvojne plošče in programeskega jezika |
|
|
Živjo, sem nov uporabnik foruma, želja po učenju programiranja mikrokontrolerjev izhaja iz osveževanja rahlo rjastega znanja o 40xx seriji čipov.
Od tukaj naprej bo eno samo ugibanje, ampak zavoljo bolj natančne pomoči bom vseeno opisal kje stojim pri izbiri, prosim ignorirajte če brcam v temo.
V prvi vrsti bi rad software za programiranje ki omogoča modularno programiranje čimbolj podobno 40xx seriji čipom, če to pomeni preveč omejitve potem seveda to ne bo to in se bom prilagodil.
Ožji izbor razvojnih plošč:
1. MikroPin napredni KIT + Programator PROGGY II AVR - IDC10 tukaj ne vem če je to kompatibilno, gre se zato da kasneje dokupim še MINIPIN 2B razvojno orodje in imam možnost programiranja 8,20,28 in 40pin mikrokontrolerjev. Moti me ker ni opcije za 14 in 18 pin, 16 in 32 bit mikrokontrolere?
2. Arduino Nano V3.0, kot kaže veliko večja izbira mikrokontrolerjev. Moti me: improvizacija takoj na začetku. Imam občutek da je to prava izbira če bi naredil tiskano vezje z led in tipkami + kasneje z univerzalnim podnožjem 8-40pin?
Kaj mislim počet: led oscilator in komplet začetno učenje, stabiliziran usmernik (trenutno 82 retro), pameten polnilec in praznilec, AD in DA, voltmeter... Upam da bom s tem obnovil, prilagodil in ujel današnje čase.
Vsi predlogi in komentarji so dobrodošli.
Cinol |
|
Nazaj na vrh |
|
|
MadMax Profesionalec
Pridružen/-a: Pet Sep 2006 5:36 Prispevkov: 91 Kraj: Črnomelj
|
Objavljeno: Čet Sep 06, 2018 11:34 am Naslov sporočila: Re: Izbira razvojne plošče in programeskega jezika |
|
|
Cinol je napisal/a: | ....gre se zato da kasneje dokupim še MINIPIN 2B razvojno orodje in imam možnost programiranja 8,20,28 in 40pin mikrokontrolerjev. Moti me ker ni opcije za 14 in 18 pin, 16 in 32 bit mikrokontrolere?
|
Zajameš lahko z največjo šefarko v ljudski kuhinji, ampak nimaš dovolj velikih ust, da bi vse naenkrat stresel vase.
Kaj želim povedat... Ne razmišljaj o množici procesorjev, celo 16/32 bitnikih, dokler ne osvojiš vsaj osnov.
Arduino HW ni nobena improvizacija, vseeno pa omogoča ogromno improvizacij, s katerimi prvo verzijo SW in HW spraviš do normalnega delovanja. Pa Nano nima ravno nekega izbora procesorjev... Naštudiraj malce bolje ta HW, namesto da delaš svoje platke s tipkami in displeji, vse je že narejeno, kupiš pri kitajcu za drobiž.
Nato lahko pristopiš k izdelavi namenskega TIV in miniaturizacije, če je slednja potrebna.
Podobno je z mikro/mini/megaPIN.
Noben problem pa ni narediti svoje platke.
Nenazadnje lahko nabaviš tudi kaj v tem smislu https://www.mikroe.com/development-boards , a se bojim, da se bo pokadilo preden bo kakšna ledica 10x utripnila. Zadeve so čisto preveč kompleksne za začetnika... Raje nekaj enostavnega, pa na protoboard napikaš kar tisti trenutek rabiš.
Jeziki... če imaš namen zares ugrizniti, ugrizni v C. Ta ima sicer žnj podizvedb, med katerimi je tudi Arduino SW ena od njih.
Ima pa tudi Bascom podporo za Arduino HW. Ne napeljujem k Bascomu, a če ne misliš pojesti vseh jabolk do konca zime preden zgnijejo in imaš malce podlage iz časov ZX Spectrum (ker že omenjaš 40xx logiko zgolj sumim, da bi znal biti "iz tistega časa"), boš za kak občasni hobi projektek lažje speljal s tem.
Arduino in Bascom imaš dobro podprt po forumih, za ostale si tega ne bi upal preveč samozavestno trditi... (jih pa tudi ne poznam ravno kaj dosti) |
|
Nazaj na vrh |
|
|
Cinol Novinec
Pridružen/-a: Sre Sep 2018 20:14 Prispevkov: 4
|
Objavljeno: Čet Sep 06, 2018 4:02 pm Naslov sporočila: |
|
|
Hvala za pojasnila.
Gre se za občasne hobi projekte in prilagajanje. Bolj se nagibam k prazni gajbi konec sezone, nekaj bo osvojenega + lahko da se bo povečal apetit.
Kaj pa tako: nabavim Arduino UNO za učenje in testiranje programov, potem ta program prenesem v Arduino nano in ga vgradim v napravo ki je aktualna? |
|
Nazaj na vrh |
|
|
cimer Mojster
Pridružen/-a: Sre Maj 2004 0:01 Prispevkov: 45 Kraj: Ljubljana
|
Objavljeno: Pet Sep 07, 2018 7:14 am Naslov sporočila: |
|
|
Na kratko: Seveda! _________________ Lep pozdrav!
Marko |
|
Nazaj na vrh |
|
|
Cinol Novinec
Pridružen/-a: Sre Sep 2018 20:14 Prispevkov: 4
|
Objavljeno: Pet Sep 14, 2018 3:49 pm Naslov sporočila: |
|
|
Arduino uno deluje, ledica utripa .
Naslednje poglavje je bilo flip flop "tipka najprej vklopi led, naslednjič jo izklopi". Sej nevem ali sem navaden nub, ali je nub tipo na YT tutorial.., to je za zjokat kako zgleda "Arduino" flip flop:
/* test 2*/
int switchPin = 8;
int ledPin = 13;
boolean lastButton = LOW;
boolean ledOn = false;
void setup()
{
pinMode(switchPin, INPUT);
pinMode(ledPin, OUTPUT);
}
void loop()
{
if (digitalRead(switchPin) == HIGH && lastButton == LOW)
{
ledOn = !ledOn;
lastButton = HIGH;
}
else
{
lastButton = digitalRead(switchPin);
}
digitalWrite(ledPin, ledOn);
}
A res?
S tem, da v programu še ni montiran antišum sklop za tipko. |
|
Nazaj na vrh |
|
|
cimer Mojster
Pridružen/-a: Sre Maj 2004 0:01 Prispevkov: 45 Kraj: Ljubljana
|
Objavljeno: Sre Sep 19, 2018 8:24 am Naslov sporočila: |
|
|
Živijo,
vzel sem si 5 minut in na novo napisal flip flop.
Kot prvo najprej definiraš konstante - v tvojem primeru sta to pina za tipko in za ledico. Pine vedno definiraš kot konstanto. Če jih definiraš kot spremenljivko, uporabljaš dragocen pomnilnik in vanj zapišeš konstanto.
Tipka se vedno priključi tako, da je aktivna LOW. To pa zato, da zmanjšaš število zunanjih elementov. Ko definiraš vhodni pin, ga definiraš tako, da uporabiš notranji pullup upor.
Koda vsebuje tudi debounce funkcijo, ki si jo pogrešal.
Toplo priporočam, da uporabljaš zamike znotraj funkcij LOOP, IF ..., ker bo tako koda bolj berljiva in jo boš veliko lažje popravljal in razhroščeval.
Koda: |
/* test 2*/
#define switchPin 8
#define ledPin 13
#define debounceDelay 30
boolean ledOn = false;
void setup()
{
pinMode(switchPin, INPUT_PULLUP);
pinMode(ledPin, OUTPUT);
digitalWrite(ledPin, ledOn);
}
void loop()
{
if (digitalRead(switchPin) == LOW)
{
delay(debounceDelay);
if (digitalRead(switchPin) == LOW)
{
ledOn = !ledOn;
digitalWrite(ledPin, ledOn);
}
}
} |
_________________ Lep pozdrav!
Marko |
|
Nazaj na vrh |
|
|
Jure Urednik
Pridružen/-a: Pon Jan 2004 12:51 Prispevkov: 2132 Kraj: Ljubljana
|
Objavljeno: Sre Sep 19, 2018 12:12 pm Naslov sporočila: |
|
|
Take enostavno je... če znaš seveda
Hvala Marko!
Lp
Jure |
|
Nazaj na vrh |
|
|
Cinol Novinec
Pridružen/-a: Sre Sep 2018 20:14 Prispevkov: 4
|
Objavljeno: Pet Sep 21, 2018 8:17 pm Naslov sporočila: |
|
|
Zadnja okužba je z "arithmetic" kombinatorji, vidim da bojo simpl stvari bolj komplicirane, komplicirane stvari dosti manj komplicirane.... OUT. |
|
Nazaj na vrh |
|
|
|
|
Ne, ne moreš dodajati novih tem v tem forumu Ne, ne moreš odgovarjati na teme v tem forumu Ne, ne moreš urejati svojih prispevkov v tem forumu Ne, ne moreš brisati svojih prispevkov v tem forumu Ne ne moreš glasovati v anketi v tem forumu You cannot attach files in this forum You cannot download files in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|