Skocz do zawartości

ethanak

Użytkownicy
  • Zawartość

    906
  • Rejestracja

  • Ostatnio

  • Wygrane dni

    24

Wszystko napisane przez ethanak

  1. A możesz zrobić jakieś zdjęcie ekranu żeby cokolwiek dało się przeczytać?
  2. ethanak

    Diody wsk2812 szaleja

    Co znaczy "przypisać klawisz do pinu"? Możesz do zmiennej (którą jakoś tam fajnie nazwiesz) przypisać wartość (np. D5 odpowiadającą piątemu pinowi NodeMCU). Kompilator nie wie nic o klawiszach, pinach, diodach i innych wynalazkach - dla niego istnieją zmienne i wartości. I przecież to robisz pisząc: int klawisz1 = D5; prawda? Do zmiennej typu int o nazwie klawisz1 przypisujesz wartość początkową D5 (zdefiniowaną gdzieś wcześniej w plikach nagłówkowych NodeMCU). Co Ci nie odpowiada w tym zapisie i dlaczego uważasz, że zapis int klawisz 1 = D5; miałby być prawidłowy? Jak miałaby się nazywać zmienna do której przypisujesz D5?
  3. ethanak

    Diody wsk2812 szaleja

    A co to niby ma znaczyć? Że klawisz jest int to rozumiem, ale że jeszcze że do liczby 1 podstawiasz D5? To po tej operacji 1 to ma być w końcu 1 czy D5? Poza tym nie "wyrzuca mi błąd kompilacji" a włącz sobie wyświetlanie wszystkich błędów w ustawieniach IDE, to masz duże szanse że kompilator sam Ci wypisze co chce. Wtedy albo nie będziesz w ogóle musiał pytać na forum, albo zapytasz konkretnie "co oznacza taki to a taki błąd kompilatora".
  4. ethanak

    Diody wsk2812 szaleja

    Do esp8266 jest inna lepsza biblioteka - NeoPixelBus (steruje diody sprzętowo poprzez DMA lub UART). Ile diod można podłączyć... tyle na ile wystarczy pamięci. Pamiętaj tylko, że to szeregowa transmisja i przy 1000 diod może okazać się za wolna Może być tak, że pierwsza dioda nie jest prawidłowo wysterowana (napięcie z pinu ESP jest poza dopuszczalnym minimalnym napięciem sterującym i diody mogą świrować). Ja stosuję prosty trick - zasilam pierwszą diodę przez zwykłą diodę prostowniczą. Napięcie 4.3V jest wystarczające do jej działania, napięcie na pinie względem napięcia zasilania już jest wystarczające a następna dioda dostaje na wejściu już prawidłowe napięcie (powyżej 4V). Może to ten przypadek?
  5. Nie, to kwestia wstawienia w warunek while wyrażenia które się nie zmienia @wmaker - pomyśl sam: miałeś wyrażenie: while (aktualnyCzas - zapamietanyCzas < 500UL) { rób_coś(); } Ponieważ wartość zmiennej aktualnyCzas jest w tym momencie stała, wartość zapamietanyCzas również - nic dziwnego, że wykonywane było cały czas to samo porównanie... Kiedy zmieniłeś na millis() wszystko ruszyło - ale to tylko dlatego, że millis() wskazuje na rzeczywisty aktualny czas, a zmienna aktualnyCzas niestety tylko tak się nazywa
  6. Mówiłem o nieco innej branży (akurat nic wspólnego z robotyką) i zdaje się że wspominałem coś o grupie docelowej. To coś (lalka? robot?) jest dedykowane dla dzieci - ale to przecież nie dzieci wpłacają kasę na projekt - czyli osoby finansujące projekt to nie jest grupa docelowa. Inaczej mówiąc: nie wiadomo ile by zebrali nie świadczy to o tym, czy grupie docelowej będzie się podobać czy nie. A znając życie dzieci będą musiały być szczęśliwe... tak jak w tym starym kawale:
  7. Aha... co jeszcze trzeba zrobić za ciebie? Treker to nie jest interfejs do edytora.
  8. if (czujnik == "cisnienie"){var m = "hPa";var b = "mega";} else if (czujnik == "wilgZew"){var m = "%RH";var b = "mega";} else if ((czujnik == "tempZew")||(czujnik == "tempGrunt")||(czujnik == "tempSlonce")){var m = "°C";var b = "mega";} else if((czujnik == "pm1") || (czujnik == "pm2") || (czujnik == "pm10")){ var b = "pms";var m = "µg/m³";} Wywal to i w ogóle wszystkie informacje o bazie danych z javascriptu (nie wspominałem przypadkiem o tym?) i wrzuć do skryptu w PHP. Poza tym zamiast bandy nieczytelnych ifów zrób tablicę (nie wspominałem przypadkiem o tym?). Przesyłasz jeden parametr czujnik. Tak przy okazji: przecież przesyłasz dane o całym okresie - po co jeszcze liczysz min/max/średnia w bazie, kiedy masz wszystko co pozwoli policzyć to w javascripcie? Rozumiem, że gdyby to było jedno zapytanie ajaxowe to jeszcze ujdzie. Ale cztery??? Zrób to porządnie, jednym wywołaniem skryptu który zwraca obiekt zawierający wszystko co potrzebne. A przy okazji: do formatowania liczb (i nie tylko) w PHP służy... no zgaduj... zgaduj... o właśnie, sprintf!
  9. i dlatego ludzie co projektują lalki biorą ciężkie pieniądze za to, że będą się podobać grupie docelowej. akurat branżę znam i wiem, że po takim projekcie pan plastyk mógłby szukać roboty na budowie (i to nie z tych ładnych). jakiś garaż czy co...
  10. naucz się umieszczać linki...
  11. tłumaczy to co robi planer (czyli takie cóś, co w sql-owych bazach układa sobie plan wykonania twojego zapytania). po prostu w konsoli zamiast "select cośtam" wpisz "explain select cośtam". tu masz: https://x-coding.pl/blog/developers/mysql-explain-uzywac-czytac/
  12. do tego właśnie służy explain. "sprawdzam na bieżąco" to takie trochę mylące, bo sprawdzasz, działa, implementujesz, a potem się okazuje że działa ale tylko czasami (z reguły przy sprawdzaniu).
  13. nie jestem pewien (ślepowaty jestem i liczenie nawiasów na telefonie absolutnie nie jest moim hobby) ale coś podobnego powinno zadziałać. problem taki, że ty dwa razy przeszukujesz okres (okres jest co prawda wyznaczony przez indeksy, ale ciśnienie już nie) a ja tylko raz. sprawdź co powie explain w obu przypadkach.
  14. bez zagnieżdżania select cisnienie, czas from mega where czas between t1 and t2 order by cisnienie, czas desc limit 1 to na minimum, na maximum przy ciśnieniu dasz desc w order by. zwróci ciśnienie i ostatni czas. oczywiście w miejsce t1 i t2 podstawiasz co trzeba (w apostrofach!!!). twoje zapytanie nie będzie działać, jeśli minimalne ciśnienie było poza okresem (brak where w podzapytaniu). przy okazji - between kompiluje się na taki sam kod jak dwa porównania, ale wygląda ładniej i jest krótsze
  15. Bardzo ładnie - pomyśl o kilku wykresach jednocześnie (fajnie by było znać np. korelację temperatury i gęstości pyłu). Odczytywanie głosowe zostaw screenreaderowi, tylko go poinformuj że tak trzeba. Do tego służy ARIA (czyli zestaw dodatkowych atrybutów rozumianych przez technologie wspomagające). Krótko i po polsku masz opisane tutaj: http://saccessibility.pl/aria-role-wlasciwosci/ Coś takiego jak div w którym ukazują różne ciekawe rzeczy jest w terminologii ARIA określane mianem "region". Domyślnie czytana jest cała zawartość przy jakiejkolwiek zmianie treści, warto jedynie określić w jaki sposób będzie to czytane. Atrybut aria-live może przyjąć jedną z trzech możliwości: "off" - nic nie będzie czytane. Dobre do różnego typu zegarkóœ, bannerów ze zmienną treścią i innych wydmuszek których odczytywanie po prostu by przeszkadzało; "polite" - zmiana będzie odczytana wtedy, kiedy screenreader już powie co miał do powiedzenia. "assertive" - zmiana będzie odczytana natychmiast. W tym przypadku należy uzyć assertive, tak więc deklaracja diva wyświetlającego wyniki będzie wyglądać mniej więcej tak: <div id="wyniki" role="region" aria-live="assertive"> Jeśli teraz zainstalujesz sobie na kompie np. NVDA zobaczysz, że po klepnięciu w link z czujnikiem NVDA odczyta pokazujący się w divie wynik. Tu jedna uwaga: większość frameworków używa "display:none" lub "visibility:hidden" aby ukryć jakiś element (np. zwinięte menu). Niestety - taki zabieg ukrywa zawartość różnież przed screenreaderem, co raczej nie ułatwia nawigacji (użytkownik z reguły zaczyna przeglądanie strony od listy linków, a tych tam nie ma...). Jest na to sposób - poszukaj w sieci klasy screen-reader-text, która ukrywa element przed wzrokiem użytkownika a jednocześnie umożliwia screenreaderowi dostęp do treści. Oprócz różnych chowających się i pojawiających menu bardzo często stosuje się to w formularzach, np: <label for="nazwisko" class="obowiazkowy">Nazwisko <span class="screen-reader-text">pole obowiązkowe</span></label> W ten sposób widzący użytkownik zobaczy etykietę oznaczoną jako obowiązkowa (pewnie jakąś grafiką albo innym kolorem), niewidomy usłyszy "nazwisko pole obowiązkowe". Fajne, nie? A jak tam Twoje menu, screenreader wygra czy się podda?
  16. ethanak

    Instalacja Linux Mint 19.1 na laptopie "MSI GV62"

    jeśli to lts to chyba nie... wersja jajka musi być ta sama (przynajmniej w pewnym zakresie) a backporty nie są o ile pamiętam dołączone na dzień dobry...
  17. ethanak

    Instalacja Linux Mint 19.1 na laptopie "MSI GV62"

    lts - wersja sprzed roku? trudno wymagać od developerów kernela kompatybilności ze sprzętem którego jeszcze nie ma.
  18. ethanak

    Instalacja Linux Mint 19.1 na laptopie "MSI GV62"

    mint bazuje na ubuntu - zanim wyskoczysz z pretensjami sprawdź, czy ubuntu się instaluje (18.04 przede wszystkim, potem dopiero 18.10, 19.04 jeszcze nie ma ale jakieś wersje rc już istnieją). debiana to się da zainstalować na żelazku (z tych nowszych, na prąd, na duszę się nie da) więc nie ma co się dziwić
  19. sprawdź na dowolnym linuksie na pececie. tylko mi nie mów, że nie masz pod ręką ani linuksa ani virtualboxa
  20. Należę do ludzi szczęśliwych, którzy smartfona używają do właściwych celów, takoż do ludzi ostrożnych którzy wrażliwych danych na smartfona nie pchają. Sprawdź :-P
  21. Czyli dodatkowe urządzenie? W dodatku jak ktoś to ustrojstwo haknie to ma dostęp do wszystkich Twoich haseł? Dziękuję, nie skorzystam
  22. ...i gdzie będziesz miał tego menadżera haseł?
  23. Właśnie zostałeś wyznaczony na ochotnika
  24. No to wyobrażam sobie coś takiego: Strona z wykresami (oddzielna). Oprócz głównego kontenera (samego wykresu), mamy: checkboxy odpowiadające konkretnym czujnikom selektor (7/17/30/90), docelowo jeszcze pozycja "podaj okres", ale o tym za chwilę... oczywiście jakiś button "pokaż wykres". Możesz javascriptem ograniczyć, że nie może by więcej niż n czujników na jednym wykresie. https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/date Tylko przeczytaj wszystko do końca!
  25. Nie bardzo mam pomysł bo ja bym to robił zupełnie inaczej... Takie ważne pytanie: czy jesteś w stanie nałożyć na siebie dwa - trzy wykresy? Bo chyba najbardziej interesująca jest korelacja między kilkoma wartościami... wtedy to można całkiem zgrabnie rozwiązać. Aha, bardzo zręcznie ominąłeś kwestię literałów przy datetime Ale i tak będziesz musiał zrobić dane historyczne (np. w lipcu będziesz chciał wykresy z trzeciego tygodnia lutego).
×