Skocz do zawartości

rziomber

Użytkownicy
  • Zawartość

    55
  • Rejestracja

  • Ostatnio

Reputacja

49 Bardzo dobra

O rziomber

  • Ranga
    4/10

Ostatnio na profilu byli

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

  1. A spróbuj Blockscad3d. To taka Scratch - nakładka na OpenSCADa. Można uzyskać podgląd kodu w tym środowisku. Prawdę mówiąc to właśnie blockscad3d przekonał mnie do przejścia na czystego OpenSCADA. Wcześniej nie uwierzyłbym, że tworzenie pudełek do urządzeń w czystym kodzie źródłowym może być tak proste.
  2. unsigned long lastTimeInterrupt = 0; void interruptHandler(){ if(millis() - lastTimeInterrupt > costam) { lastTimeInterrupt = millis(); dalsza czesc przerwania } } Problem podobny do switch bouncing?
  3. http://blog.daum.net/jedi_jaja/3 Do tego projektu jest nawet aplikacja na Androida w Google Play.
  4. Najpierw doinstaluj toolchain ESP8266 do Arduino IDE.
  5. unsigned long momentOfBegining = 0; void loop(){ if(jakis warunek rozpoczynajacy prace){ momentOfBegining = millis(); } if(!momentOfBegining && millis() - momentOfBegining >= 1000){ momentOfBegining = millis(); odswiezLCD(); } }
  6. Pewnie Python i R. Przejrzyj oferty pracy w tej dziedzinie i zobacz czego oczekują.
  7. Niepoprawne osadzenie HTML w kodzie C++? Brakuje znaku ucieczki przed " ? Może raw string literals pomogą?
  8. W przykładzie masz metodę readFromPort(), Wystarczy, że dodasz tam sprawdzanie otrzymanego ciągu znaków.
  9. Ale w ognisku nie chcesz umieścić zwykłego panelu fotowoltaicznego, tylko np wspomnianą wodę w naczyniu? Im lustro niewiele pomoże. Bardzo szybko się przegrzewają, a ich sprawność spada. Ciekawostka: silnik Stirlinga na "antenie satelitarnej": https://www.power-technology.com/projects/maricopasolarplantar/
  10. Można samemu wykonać przetwornicę np na układzie XL4012. Str 3: http://www.ksmcu.com/pdf/XL4012 datasheet.pdf
  11. Wystarczy dodać moduł GPS - UART. Po przeniesieniu konieczne byłoby wypoziomowanie i ustawienie na południk lokalny.
  12. Czy mógłbym prosić o rozwinięcie w dalszych częściach kursu problematyki sygnałów i slotów? Pojawiły się one w części o komunikacji przez UART, ale rozwiązuje to przy okazji wiele innych problemów ze świata QT. Jako ktoś rozpoczynający przygodę z QT wydaję mi się, że zaoszczędziłbym wiele czasu, gdyby taki kurs pojawił się wcześniej Podobne zagadnienie pojawiło się w projekcie aplikacji wysyłającej SMSy do bazy kontaktów. Program "rozmawia" przez port szeregowy z modułem GSM - UART. Okno główne (edycyjne) otwiera drugie z książką adresową (opartą na SQLite). Do przekazywania danych z okna do okna (a tym samym między klasami) użyłem mechanizmu Signal - Slot. Przy tworzeniu nowego okna : void MainWindow::on_phoneBook_clicked() { PhoneBook phonebook; phonebook.setModal(true); connect(&phonebook, SIGNAL(sendSignal(QString)), this, SLOT(setSlots(QString))); phonebook.exec(); } Wysyłanie danych z drugiego okna: QString str = "costam"; emit sendSignal(str); Odbieranie danych w oknie głównym: void MainWindow::setSlots(QString receivedData){ // w receivedData mamy dane z drugiego okna } Pamiętać należy, że metoda odbierająca dane musi być zadeklarowana w pliku nagłówkowym (.h) w kategorii "slots" private slots: void setSlots(QString receivedData); a nadawcza w "signals": signals: void sendSignal(QString);
  13. Taką samą, jak moduł SPP Bluetooth "rozmawia" z UART. Domyślnie prawie zawsze jest to 9600. https://wiki.pinguino.cc/index.php/SPP_Bluetooth_Modules 38400 to baud rate stosowany w HC-05, ale tylko w trybie konfiguracji. Jeżeli nie zmieniono nic w ustawieniach, domyślnie podczas normalnej pracy będzie to 9600. Prędkości komunikacji telefonu z modułem SPP Bluetooth nie trzeba zmieniać - wszystko odbywa się automatycznie. NIe warto więc szukać ustawień baud rate w środowisku, w którym tworzymy aplikację na komórkę.
  14. Pierwsze podejście do Bluetooth w QT. Wcześniej pisałem "aplikacje" mobilne w Apache Cordova, w QT tylko na desktopy. Korzystałem m.in. z blogu oraz repozytorium z przykładami z książki Qt-5-Projects. O dziwo QByteArray readingsLine = bt.socket->readLine(); receivedData = QString(readingsLine) + receivedData; zniekształca otrzymywany tekst z mikrokontrolera (brakuje np pierwszej litery). Swoją drogą jaki jest właściwy sposób przechowywania wskaźników QBluetoothDeviceDiscoveryAgent *agent = new QBluetoothDeviceDiscoveryAgent; QBluetoothSocket *socket; tak by były dostępne z różnych klas (różnych okien aplikacji)? Static pointer w oddzielnej klasie? Źródło mojej radosnej twórczości: ESP32Controller.zip
  15. Zobacz do przykładów w sekcji Summary: ArduinoJSON
×
×
  • Utwórz nowe...