Skocz do zawartości

kaczakat

Użytkownicy
  • Zawartość

    314
  • Rejestracja

  • Ostatnio

  • Wygrane dni

    5

kaczakat zajął 1. miejsce w rankingu.
Data osiągnięcia: 23 kwietnia 2019.

Treści użytkownika kaczakat zdobyły tego dnia najwięcej polubień!

Reputacja

102 Mistrz

1 obserwujący

O kaczakat

  • Ranga
    6/10

Informacje

  • Płeć
    Mężczyzna

Ostatnio na profilu byli

Blok z ostatnio odwiedzającymi jest wyłączony i nie jest wyświetlany innym użytkownikom.

  1. Jak byś jednak załączył schemat i kod, to można by rozwiać wątpliwości jak wielki babol zrobiłeś. Np. widziałem, że ktoś używał jednocześnie UART sprzętowy w UNO i softowy na pinach 0 i 1.
  2. Kable w USB specjalnie są różne z obu końców, by nie łączyć ze sobą dwóch hostów lub dwóch klientów. Jesteś odważny omijając mechaniczne zabezpieczania by dopiąć swego, nie zadając sobie trudu przeczytania w Internecie, czy to ma jakiś sens. Jak jakieś urządzenie może być jednocześnie klientem i hostem to ma dwa rodzaje gniazd, kiedyś były takie dyski sieciowe, można było podłączyć go do sieci komputerowej, do niego ( jako hosta) inny dysk USB, ale i ten dysk sieciowy można było podłączyć jako dysk USB (klient) do PC. Zamiast pisać wypracowanie należy opisać problem, pokazać kod i sche
  3. Typowe przykłady w Arduino to DEMA, używają funkcji delay() do zarządzania czasem. Pierwszy krok w kierunku pisania normalnych programów to zastąpienie delay funkcją millis. Można wtedy migać regularnie LED co 100-1000ms, jednocześnie (a na prawdę w "międzyczasie") wyświetlać dane na ekran, odczytywać czujniki, wejścia analogowe i cyfrowe. Nie zrobisz programu wielozadaniowego łącząc DEMA w jeden program. Ale można tak połączyć DEMA, że działa raz jedno, raz kolejne.
  4. kaczakat

    Problem z HC-06

    Tak, używasz biblioteki softserial i wtedy piny dowolne wolne, na 9600baud powinna działać bez problemu. Dzielnik napięcia zabezpiecza przed uszkodzeniem, ale jedynie obniża napięcie modułowi HC do poziomu 3V, nie podbija w drugą stronę do 5V dla UNO, choć oczywiście zwykle to działa, tak samo jak zwykle nic nie uszkadzałem podłączając HC bezpośrednio do 5V. Oczywiście są różne moduły HC. Pewne działanie jest wtedy gdy poziomy logiczne są niższe od 1/3 i wyższe od 2/3 Vcc, pośrednie poziomy dają pewną dozę niepewności.
  5. kaczakat

    Problem z HC-06

    Fotografie, które załączyłeś są nieczytelne. Dzielnik napięcia dajesz tylko na TX Arduino, jeśli w ogóle, wszystkie moduły HC-05 i HC-06, które miałem działają bez problemu na logice 5V. Już lepiej dać konwerter poziomów, wtedy sygnały z 3V również są podnoszone do 5V na odbiorniku Atmegi. Kolejna sprawa to UNO ma tylko 1 UART i jest podłączony do portu USB. Do komunikacji z innymi elementami pozostaje softserial na innych pinach lub użycie płytki, która ma więcej sprzętowych (Leonardo, MICRO, MEGA). To czasami może działać, są rezystory 1k między UNO i USB, ale nie musi.
  6. Jak masz problem z wgraniem kodu to zacznij od wgrania przykładu, który działa zawsze i wszędzie - blink. Od razu wiedziałbyś, że też się nie wgrywa i zamieszczanie na forum kodu od NRF nie ma żadnego sensu. Żeby coś wgrać musisz mieć sprawną płytkę, podłączoną sprawnym kablem, do właściwego portu COM wybranego w menu. Jak płytka ma objawy, że na jakimś kablu pojawia się i znika to ten kabel (czasami gniazdo USB płytki) można sobie schować w koszu. Z drugiej strony właściwy port COM powinien pojawiać się i znikać gdy podłączasz/odłączasz płytkę. Oczywiście płytka musi być taka sama jak wybrana
  7. Raczej po prostu zrobiłeś to źle. Jeśli chcesz mieć tekst na ekranie stały przez całe działanie programu to robisz sobie bufor - tablice char, o ilości znaków na cały ekran +1 i tylko na niej "piszesz", a raz na sekundę (poczytaj tu w kursie o millis(), zobacz przykład w Arduino blinkwithoutdelay) wysyłasz taką tablicę na drugą linię LCD, to nadpisuje całą linię LCD, ale tylko tą drugą, napis na pierwszej pozostaje bez zmian. Jeśli w którymkolwiek momencie użyjesz lcd.clear(); to cały ekran znika i musisz wszystko odrysować od nowa. Oczywiście możesz sobie ekran podzielić na 4 części, ale nie
  8. Wykonanie funkcji Serial.print w Arduino nie trwa istotnie długo w porównaniu do szukanego czasu, bo to tylko przepisanie danych z bieżącej zmiennej do bufora nadawczego, a prędkość 9600 czy 115200 ma znaczenie tylko w sensie przepełnienia tego bufora - jeśli będzie to 9600 jest większe prawdopodobieństwo, że zapełnimy bufor zanim zostanie to wystukane na UART.
  9. Ktoś miał, opisywał to na forum ArduinoPolska, zmienił bibliotekę PCF8574 na inną i tak rozwiązał problem. Jak tylko się przymierzasz to po prostu uruchom i sprawdź czy jest konflikt, może akurat od razu trafisz na zgodne. Większą pewność działania daje UART sprzętowy, np. MEGA ma 4, LEONARDO/MICRO ma jeden, ale "dodatkowy" - nieużywany do komunikacji z PC.
  10. 0x3F i 0x27 to popularne adresy LCD na I2C. Szybciej by było coś powiedzieć, gdybyś po prostu pokazał kod programu. Są funkcje do wysłania jednego znaku, są do wysyłania tekstu. Ta pierwsza jest zwykle wykorzystywana w drugiej.
  11. Chyba tego brakuje: |(1<<ADFR) //tryb Free run
  12. Znajdź sobie w Google "zadig 2.4 download", sprawdź w managerze urządzeń jakie masz zainstalowane sterowniki i podmień na inne. Można zainstalować co najmniej trzy różne, Arduino nie z każdym działa. Ja używam libusbK.
  13. kaczakat

    Tasma LED sterowana przez ESP

    Najlepiej podaj dokładnie co masz, gdzie kupiłeś. Ledy programowalne niekoniecznie muszą mieć 3 pola, jest nowy typ z bypassem i ma 4 pola, a 5V sugeruje raczej właśnie te programowalne.
  14. HC-05 podłączasz do komputera i komendami AT sprawdzasz jak jest skonfigurowany. Np. może być ustawiony w tryb master i nikt go nie zobaczy, bo czeka na komendy AT do inicjalizacji połączenia ze SLAVE. Choć oczywiście typowo przylatują ustawione na SLAVE 9600b. Podłącz sobie go do konwertera UART-USB, zasilanie, GND, TX i RX na krzyż, wciśnij przycisk, podłącz do portu USB by zasilić, po chwili puść przycisk, powinien być w trybie komend AT na prędkości 38400b, podłącz się terminalem Arduino, ustaw taką prędkość i wyślij AT, zobacz czy odpowie OK. Potem PDF tego modułu do ręki i ustaw sob
  15. Zasilanie i logika nie do końca idą w parze, niektóre moduły wymagają zasilania 4.4V a logikę mają 2.8V (GSM) i na odwrót - NRF41l01 wymaga zasilania 3.3V, a radzi sobie z logiką 5V doskonale. Podciąganie linii komunikacyjne I2C powinno być dobrane adekwatnie do pojemności linii, napięcia zasilania i prędkości komunikacji. Ostatecznie można użyć jakiegoś multipleksera i zrobić przełącznik, 1 magistrala z uC, osiem urządzeń I2C na osobnych - TCA9548A I2C Multiplexer, rozdzielisz to co się ze sobą gryzie.
×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.