Skocz do zawartości

Kurs Qt – #9 – wielozadaniowość w Qt


Komentator

Pomocna odpowiedź

Kurs Qt – #9 – wielozadaniowość w Qt

Poprzednio poruszyliśmy temat współbieżności w obrębie jednego procesu (wielowątkowość), teraz zajmiemy się tematem współbieżności w obrębie systemu operacyjnego (wielozadaniowość). Uruchomimy proces prosto z aplikacji. Następnie omówimy mechanizmy wspierane przez Qt, które pozwalają na komunikację między procesami.

UWAGA, to tylko wstęp! Dalsza część artykułu dostępna jest na blogu.

Przeczytaj całość »

Poniżej znajdują się komentarze powiązane z tym wpisem.

Link do komentarza
Share on other sites

@SowaKiller Cześć, mam na Windows 11 Qt 5.15.2 (MSVC2019). Pobrałem Avrdude stąd a przykładowy blink.hex stąd. Avrdude rozpakowałem i razem z programem wrzuciłem do katalogu:

PS C:\avrdude-v7.1-windows-windows-x64> dir

    Directory: C:\avrdude-v7.1-windows-windows-x64

Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
-a----        14.11.2023     09:24         551067 avrdude.conf
-a----        14.11.2023     09:24        1278976 avrdude.exe
-a----        14.11.2023     09:24        9687040 avrdude.pdb
-a----        14.11.2023     09:30           4616 blink.hex

Następnie w processrunner.h dokonałem zmian w liniach 49 i 67 na takie:

    void run(const QString& _device, const QString& _binary)
    {
...
#ifdef Q_OS_WINDOWS
        _args << "-CC:/avrdude-v7.1-windows-windows-x64/avrdude.conf"
#else
...
#ifdef Q_OS_WINDOWS
        process.setProgram("C:/avrdude-v7.1-windows-windows-x64/avrdude.exe");
#endif
...
    }

Uruchomiłem aplikację, podałem program i wgrałem:

image.thumb.png.1228458335ff0ea5c45f84793637f84d.png

-----------------------------------------

Jak podam złą ścieżkę do .hex to dostaje info:

avrdude OS error: file C:/avrdude-v7.1-windows-windows-x64/1blink.hex is not readable: No such file or directory
avrdude done.  Thank you.

Jak złą do .conf to:

avrdude OS error: cannot open config file C:\avrdude-v7.1-windows-windows-x64\1avrdude.conf: No such file or directory
avrdude error: unable to process system wide configuration file C:\avrdude-v7.1-windows-windows-x64\1avrdude.conf

A jak złą do binarki Avrdude to:

QProcess::FailedToStart "Nie można rozpocząć procesu: Nie można odnaleźć określonego pliku."
  • Pomogłeś! 1
Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

35 minut temu, SowaKiller napisał:

jak np. umożliwić wgrywanie pliku .hex na platformę ESP8266 albo ESP32?

Do tego jest esptool - takie coś podobne do avrdude tylko przeznaczone specjalnie na ESP. No i oczywiście fafnaście różnych klikanych wgrywaczy (przy czym większość z nich - o ile nie wszystkie - to frontendy do esptool).

Link do komentarza
Share on other sites

1 godzinę temu, SowaKiller napisał:

No a jak by wyglądał w takim przypadku program w QT właśnie oparty nie o AVRDUDE jak w przykładzie a o esptool?

Zakładając, że pobieramy esptool stąd oraz patrząc do dokumentacji to mogłoby to wyglądać tak:

    void run(const QString& _device, const QString& _binary)
    {
        outputString.clear();

        QStringList _args;
        _args << "--port" << _device << "write_flash" << "0x1000" << _binary;

        process.setArguments(_args);
        process.setProgram("C:/esptool-v4.6.2-win64/esptool.exe");
        ...
    }

Ale właściwe argumenty - _args - wywołania esptool musisz już ustalić sam.

  • Lubię! 1
Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • 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.