Zbyšek Voda
Vytvořené odpovědi
-
AutorPříspěvky
-
Zbyšek VodaSprávce
V pohodě.
Buď si koupíte nějaký relé shield a pak jednotlivá relé ovládáte třeba tak, že je zapínáte/vypínáte LOW/HIGH na pinu, nebo si koupíte relé, připojíte k němu nějaký budič (třeba ULN2003a) a ovládáte je pomocí něho.Zbyšek VodaSprávceTohle zvládne jakékoliv Arduino 🙂 Klidně Nano, UNO…
Ještě bych k tomu přidal nějaký modul reálného času (RTC) pro lepší přehled v čase.Zbyšek VodaSprávceJsem rád, že se problém vyřešil 🙂
Zbyšek VodaSprávceDobrý den,
to rozhodně schválně není. Vaše chyba je ale podivná. Zkoušel jsem ji reprodukovat ve více prohlížečích, ale všude mi zobrazování funguje správně (ať už stránkování na úvodní stránce, nebo v Novinky).
Když půjdete třeba sem: https://bastlirna.hwkitchen.cz/page/3/, zobrazí se vám třetí stránka novinek, nebo úvodní stránka?
Zbyšek VodaSprávceDobrý den,
když tak zběžně koukám na váš program, napadá mě jedna věc. Snad to bude ono.
Na začátku máte:
Timer1.initialize(100); Timer1.attachInterrupt(timerIsr);
což zapříčiní, že se bude funkce timerIsr volat každých 100µs.
Funci timerIsr máte definovanou jako
void timerIsr() { if(actual_speed == 0) return; tick_count++; if(tick_count == ticks) { // make a step digitalWrite(PIN_STEP, HIGH); digitalWrite(PIN_STEP, LOW); tick_count = 0; } }
čili každých 100µs se proměnná tick_count zvýší o jednu (pokud neplatí speciální podmínky – ty teď ale přeskočme). Proměnná tick_count je typu int.
int tick_count;
a to by mohl být ten problém. Proměnné typu int mohou uchovávat čísla od -32.768 do 32.767. Vy ale nemáte nijak pojištěno, co se stane, když vám tick_count přeteče.
Jako první krok zkuste použít jiný typ – například unsigned long, který může mít rozsah od 0 do 4.294.967.295.
unsigned long tick_count;
Pokud se problém vyřeší (respektive se o hodně odloží), budeme mít jistotu, že to byl skutečně problém použitého datového typu.
Poté můžete zkusit dodělat detekci přetečení proměnné. Jelikož ale při zvýšení každých 100µs „vydrží“ tato proměnná počítat asi pět dní, neviděl bych to jako nutnost 🙂
Zbyšek VodaSprávceDobrý den,
problémem v rychlosti myslíte to, že se řádky rozsvěcují moc pomalu a nevznikne pak dojem, že svítí všechny naráz?
Zkuste nám sem poslat váš program, to by také mohlo pomoci.
Zbyšek VodaSprávceProgram bude v pořádku. Mě tohle normálně fungovalo.
Nabízí se tedy hledat problém někde jinde. Koukal jsem třeba sem: http://stackoverflow.com/questions/9217084/arduino-lcd-only-showing-black-boxes-on-bottom-rowNabízí tam vícero tipů.
- Zkontrolovat zapojení – jestli nemáte nějaký vadný vodič.
- Zkontrolovat, jestli jsou piny dobře připájené k LCD.
- Před lcd.begin() dát delay(1000) – display by mohl potřebovat čas na naběhnutí
- Ujistěte se, jestli se program skutečně nahrál do Arduina (zkuste třeba nahrát blikání LEDkou a pak zase zpět na LCD hello world)
Takhle na dálku mě nenapadá nic dalšího.
Zbyšek VodaSprávceTakže když točíte kontrastním potenciometrem, tak se nic neděje?
Přijde mi, že toto dělá displej, když má nastavený maximální kontrast.Zbyšek VodaSprávceDobrý den, můžete sem postnout fotku vašeho zapojení? 🙂
Zbyšek VodaSprávcePokud jsem kód dobře pochopil, přijde mi, že sice máte zobrazená tlačítka, ale nemáte k nim obslužný kód.
Předpokládám, že chcete, aby po kliknutí na tlačítko program odeslal požadavek s informacemi o stavu relé.Dalo by se to udělat třeba tak, že z tlačítek uděláte odkazy vedoucí na určitou URL s přidanými parametry za url. Jak přidat URL ke tlačítku řeší třeba zde.
Arduino pak bude zpracovávat HTTP požadavek, ze kterého si vybere požadované informace z parametru.
Zbyšek VodaSprávceDobrý den,
můžete prosím popsat, co konkrétně vám nefunguje?
Taky by se hodil popis projektu – co to má dělat, jak to funguje…
Zbyšek VodaSprávceV Arduino IDE v nabídce Tools v Ports vyberte COM5
Zbyšek VodaSprávceNenapadá mě, kde by mohl být problém.
Navíc se mi nedaří najít jakékoliv info od výrobce (kromě nějakého fóra v čínštině). Možná by se dalo najít něco tam…Zbyšek VodaSprávceDobrý den,
zkuste ještě tady: http://www.arduined.eu/ch340g-converter-windows-7-driver-download/ stáhnout driver pro CH340G.
V ovládacích panelech otevřete Správce zařízení, připojte Arduino a mělo by se vám někde objevit. Pak kliknete pravým a zvolíte Aktualizovat systém ovladače. Poté doveďte instalační program na stažené drivery.
Potom zkuste znovu programování Arduina v IDE.
Zbyšek VodaSprávcePošlete mi prosím odkaz na ebay, kde jste to koupil
-
AutorPříspěvky