Program radi svoje i onda ako na ulazu bude LOW tijekom 2 sekunde (a kroz to vrijeme program i dalje radi svoje), onda se aktivira neki drugi kod?
Tebi treba neko brojanje ili što? Brojanje čega?
Program radi svoje i onda ako na ulazu bude LOW tijekom 2 sekunde (a kroz to vrijeme program i dalje radi svoje), onda se aktivira neki drugi kod?
Tebi treba neko brojanje ili što? Brojanje čega?
Daj objasni sto tocno hoces sloziti, konkretno, ovako je tesko shvatiti tvoju namjeru, prema ovome svemu sto si napisao, ono sto sam prije postao bi trebalo biti ok.
Idem probat na nekom primjeru. Dakle slozio sam recimo da mi ledica na pinu 13 recimo trepti, znaci stanje HIGH 1 sekundu i onda stanje LOW 1 sekundu, i u jednom trenutku ona kao napravi taj svoj ciklus i mora poslati program HIGH stanje na jedan izlaz, recimo nozicu 7. Problem je taj da bi on na svako stanje LOW slao HIGH na pin 7. A ja zelim da program na svakom signalu LOW ledice da pocne brojati, i kad se završi ciklus i kad ledica ode u LOW i više se ne pali, da od onda prode 2 sekunde i da nakon toga tekar pošalje na pin 7 HIGH signal ili nešto? Razumijete, ona bude isla stalno HIGH LOW ali u jednom trenutku bude ostala LOW, e sad program bi nakon toga pokrenuo brojac koji broji, ako je prošlo 2 sekunde znaci više se ne mijenja mogu tek sad poslati signal na pin 7, a ne na svako stanje LOW, nego na trajno .
kolega Alkaline, probat cu ovo tvoje pa se javim
tako je
nije bitno kolko dugo bude high na pin 7, bitno je samo to da ako je low na pin di je ledica da se nakon toga dvije sekunde ceka i onda pošalje na pin 7 high
To bi onda bilo ovako nešto:
bool timerOn = false;
unsigned long timer;
void loop() {
bool newInput = digitalRead(inputPin) == HIGH;
if (!timerOn) {
if (!newInput) { // okidač za pokretanje timera
timerOn = true;
timer = millis();
}
} else { // ako se timer već vrti
if (newInput) timerOn = false; // ako je došao HIGH na input, prekinuti timer
else {
if (millis() >= timer + 2000) { // ako je prošlo dvije sekunde od prebacivanja na LOW stanje na ulazu
digitalWrite(7, HIGH);
timerOn = false;
}
}
}
}
kad ovo napišem u program i uplodam na plocicu, samo svijetli ledica na tom izlaznom pinu, stišcem tipkalo i ništa se ne događa
bool timerOn = false;
unsigned long timer;
int inputPin=A0;
int ledica=3;
void setup(){
pinMode(inputPin, INPUT);
pinMode(ledica, OUTPUT);
}
void loop() {
bool newInput = digitalRead(inputPin) == HIGH;
if (!timerOn) {
if (!newInput) { // okidač za pokretanje timera
timerOn = true;
timer = millis();
}
} else { // ako se timer već vrti
if (newInput) timerOn = false; // ako je došao HIGH na input, prekinuti timer
else {
if (millis() >= timer + 2000) { // ako je prošlo dvije sekunde od prebacivanja na LOW stanje na ulazu
digitalWrite(ledica, HIGH);
timerOn = false;
}
}
}
}
Ako ti je ulaz prve dvije sekunde LOW, onda ledica na izlazu mora početi svijetliti dvije sekunde nakon pokretanja pločice i cijelo vrijeme ostati uključena.
Što se događa ako promijeniš ovo:
pinMode(inputPin, INPUT_PULLUP);
Ako ti je ulaz prve dvije sekunde LOW, onda ledica na izlazu mora početi svijetliti dvije sekunde nakon pokretanja pločice i cijelo vrijeme ostati uključena.
Što se događa ako promijeniš ovo:
pinMode(inputPin, INPUT_PULLUP);
ništa, dali ima svrhe to pisat ako sam postavi tipkalo preko otpornika od 10k
Probao sam program i on radi točno onako kako i treba raditi.
Znači, nakon uključenja ledica ne svijetli (ja sam koristio ledicu na pinu 13, odnosno integriranu ledicu) i nakon dvije sekunde zasvijetli.
Ako stavim 10K pullup otpornik na A0, onda ledica uopće ne zasvijetli, sve dok ne kratpospojim A0 s GND (što bi bilo ekvivalentno pritisku tipkalu kojem je jedan pin spojen na A0, a drugi na GND) i onda nakon dvije sekunde ledica zasvijetli.
Znači, ili si fakat krivo opisao što ti zapravo želiš ili si krivo spojio stvari na pločici, jer program radi točno onako kako sam te ja shvatio - na ispravno spojenoj pločici.
budem se malo pozabavio time drugi tjedan, hvala zasad, moram malo to isprobavat da vidim
Ako budeš još imao problema, stavi shemu kako si to spojio.
Ako budeš još imao problema, stavi shemu kako si to spojio.
ovako je spojeno http://prntscr.com/huv3sk
Ja sam te shvatio da će ti gumb služiti za slanje LOW signala, a prema shemi ispada obratno.
mislim da sam uspio sloziti, barem za sad radi kako bih zelio, hvala puno
Dečki, trebao bih pomoć u vezi kupnje Arduino seta za početnike.
Ne znam jeli ovo okej ponuda ili može bolje za te novce?
Dečki, trebao bih pomoć u vezi kupnje Arduino seta za početnike.
Ne znam jeli ovo okej ponuda ili može bolje za te novce?
A nije prelose, na prvu ruku kad gledam po redu komponente mislim si za sve beskorisno, za otpornike, diode i slicno gledam ko da i nema jer razmisljam da je to besplatno kad imam doma na izvoz, breadboard sta ce mi jos jedan, moduli mi se cine low end, ali kad bolje razmislim ja sam na takvim stvarima poceo i jako puno naucio i mozda je bolje tako poceti nego s nekim modulima di ces odmah izgubiti volju.
Tako da sve u svemu za apsolutnog pocetnika ok set za nauciti osnove.
Stigo mi OLED 1.3" 128x64px s SH1106 driverom.
Preporod, kao da imam Full HD ekran naspram onog SSD1306 0.96" 128x64px :D
Stigo mi OLED 1.3" 128x64px s SH1106 driverom.
Preporod, kao da imam Full HD ekran naspram onog SSD1306 0.96" 128x64px :D
FullHD bi trebao oznacavati kvalitetu, a ti si izgubio na kvaliteti, a dobio na kvantiteti
Trebam prebacit kod na ATMega16, koristim USBasp programer s eBaya.
Ubodem ga u komp, instalirao drivere. Ali kod uploada dobijem
avrdude: Warning: cannot query manufacturer for device: No such file or directory
avrdude: Warning: cannot query product for device: No such file or directory
avrdude: error: could not find USB device with vid=0x16c0 pid=0x5dc vendor='www.fischl.de' product='USBasp'
Jel netko zna kako popravit?
Ne znam više šta da radim
Ako netko zeli bolji IDE od stock arduinovog:
http://platformio.org/get-started/ide?install=atom
Atom+PlatformIO
Lightweight, ne treba mu 2 dana da se pokrene ko Visual Studio, intellisense, oku ugodniji od stock(barem meni)
Ima cak i neki IOPlatform debugger ekstenzija, ali to nisam isprobao(zvuci korisno kad se zapne)
I jednostavan za instalaciju, jedino se automatski ne instaliraju driveri za serial(kod mene je bio slucaj kad su novi windowsi bili, rjesio sam instaliranjem i uninstaliranjem original IDE-a)
Jos jedna stvar je da podrzava puno plocica i razne platforme(Arduino, mbed, PIC, Atmel...)
Sublime se brže pokreće od Atoma.
Gledam malo temu i sad me zanima. Recim imamo one budilice koje su ujedno i radio. Mogu li se ti displaji iskoristiti? Mislim šteta bi bilo da se baci ako se da iskoristiti.
Još moram naći set i naručiti.
Gledam malo temu i sad me zanima. Recim imamo one budilice koje su ujedno i radio. Mogu li se ti displaji iskoristiti? Mislim šteta bi bilo da se baci ako se da iskoristiti.
Možeš. Isto to sam si i ja mislio napraviti!
Samo moraš identificirati je li common anode ili common cathode i identificirati segmente, odnosno koji pin (ili pinovi) kontrolira koji segment, što se jednostavnim ispitivanjem (prespajanjem žice s otpornikom u seriji).
Gledam malo temu i sad me zanima. Recim imamo one budilice koje su ujedno i radio. Mogu li se ti displaji iskoristiti? Mislim šteta bi bilo da se baci ako se da iskoristiti.
Možeš. Isto to sam si i ja mislio napraviti!
Samo moraš identificirati je li common anode ili common cathode i identificirati segmente, odnosno koji pin (ili pinovi) kontrolira koji segment, što se jednostavnim ispitivanjem (prespajanjem žice s otpornikom u seriji).
Jos je bitno i na kojem naponu rade.
Lightweight, ne treba mu 2 dana da se pokrene ko Visual Studio, intellisense, oku ugodniji od stock(barem meni)
Obožavam Atom, koristim ga stalno i puno mi je bolji nego Sublime, ali nikako nije lightweight.
Vrti se na electronu, koji je baziran na Chromiumu, odnosno desktop web app je.
Otvorim par prozora i ode giga memorije.