Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki

KURS HOME ASSISTANT

Chcesz zautomatyzować swój dom bez skomplikowanego kodowania?
Zastanawiasz się nad wyborem sprzętu, oprogramowania i aplikacji?
Od czego zacząć przygodę z HA w 2025? Co będzie najlepsze na start?

Nasz kurs Home Assistant nauczy Cię krok po kroku, jak łatwo zautomatyzować swój dom i oszczędzić na rachunkach za prąd i ogrzewanie. Bez chmur, bez zbędnych abonamentów. Twoja przygoda z Home Assistant zaczyna się tutaj!

↓↓↓

    Szanujemy Twoją prywatność. Możesz wypisać się w dowolnym momencie.




    Teraz jest 25 maja 2025, o 21:08


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 28 ] 
    Autor Wiadomość
    PostNapisane: 17 lut 2020, o 00:32 
    Offline
    Nowy

    Dołączył(a): 10 wrz 2018
    Posty: 24
    Pomógł: 0

    Witam :3
    Od pewnego czasu się zastanawiam nad zmianą środowiska do pisania w C. Dotychczas używałem Eclipsa po skonfigurowaniu go tak jak na poradnikach Mirka. Po sprawdzeniu masy innych programów najbardziej podpasował mi CLion. Czy jest tu ktoś kto używa CLion-a do pisania kodu na Atmege i na zestaw ATB? Czy jest w stanie pomóc mi skonfigurować go tak jak Eclipsa (tzn, piszę kod kompiluje i wysyłam do programatora żeby wgrał się program do Atmegi)? Czy jest w ogóle to możliwe?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 17 lut 2020, o 09:01 
    Offline
    Użytkownik

    Dołączył(a): 11 mar 2019
    Posty: 44
    Zbananowany użytkownik

    Pomógł: 5

    hmm, a czemu nie np VSCode + Cmake + Avrdude?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 17 lut 2020, o 09:06 
    Offline
    Użytkownik

    Dołączył(a): 25 lip 2013
    Posty: 2595
    Pomógł: 128

    Niestety nie znam CLiona, bo używam MkClipse'a. Patrzyłeś na niego?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 17 lut 2020, o 11:54 
    Offline
    Nowy

    Dołączył(a): 10 wrz 2018
    Posty: 24
    Pomógł: 0

    Nef napisał(a):
    hmm, a czemu nie np VSCode + Cmake + Avrdude?

    VS też jest spoko, ale czytałem ze działa na jednym rdzeniu i przy większych projektach strasznie wolno chodzi :/
    A jak dokładnie go skonfigurować czy podobnie do Eclipsa ? I czy będzie podobnie działał jak eclipse ?


    Cytuj:
    Niestety nie znam CLiona, bo używam MkClipse'a. Patrzyłeś na niego?

    Tak ale nie jest to program na którego chciałbym się przerzucić z Eclipsa.


    Przede wszystkim mi zależy na porządnym asystencie składni, ciemnym motywem i integracją z Github-em, clion najlepiej spełniał te wymagania



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 17 lut 2020, o 13:38 
    Offline
    Użytkownik

    Dołączył(a): 11 mar 2019
    Posty: 44
    Zbananowany użytkownik

    Pomógł: 5

    Claptonnn napisał(a):
    Przede wszystkim mi zależy na porządnym asystencie składni, ciemnym motywem i integracją z Github-em, clion najlepiej spełniał te wymagania


    VS code jest mały, szybki, zwinny, ma mnóstwo możliwości rozbudowy oraz potrafi otwierać duże projekty bez problemu,

    Instalujesz świerze VS Code, instalujesz wtyczkę C/C++ extension i dwie wtyczki od CMAKEów - Cmake i Cmake tools.

    Instaluesz cmake, instalujesz MinGW (chyba że działasz pod linuxem to Cię to nie dotyczy). Toolchain umieszczasz sobie w jakimś miejscu na dysku, Tworzysz sobie gdzieś w jakimś workspace swój przykjładowy projekt. Dodajesz tam swoje pliki źródłowe i plik CMakeLists.txt w którym opisujesz zgodnie ze skłądnią jakiego kompilatora C, C++ i asm ma używać projekt, jakie są ścierzki do inkludów itd. Jest przy tym trochę pracy ale robisz to raz a później kopijesz ten plik do każdego projektu. Tworzysz sobie katalog build, w tym katalogu wywołujesz cmake ze ścierzką do projektu i tworzy Ci makefile które za pomocą make z mingw odpalasz i voila -> masz binarke. Jest to na początku trochę skomplikowane ale polecam.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 17 lut 2020, o 13:43 
    Offline
    Nowy

    Dołączył(a): 10 wrz 2018
    Posty: 24
    Pomógł: 0

    Dzięki za pomoc, jak skończę prace to zobaczę co uda mi się zrobić i napiszę jak będę miał problemy :3



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 17 lut 2020, o 13:51 
    Offline
    Użytkownik

    Dołączył(a): 01 lis 2013
    Posty: 301
    Pomógł: 32

    Do VSCode jest również dodatek - PlatformIO, który całą konfigurację robi w locie przy zakładaniu projektu. wspiera różne platformy oraz kilka framework-ów. Oczywiście można pisać bez używania frameworka.
    AVR, usbasp oraz zestaw ATB działa bezproblemowo pod tym.

    _________________
    Pozdrawiam,
    sq8mvy, Paweł



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 17 lut 2020, o 14:11 
    Offline
    Użytkownik

    Dołączył(a): 11 mar 2019
    Posty: 44
    Zbananowany użytkownik

    Pomógł: 5

    Cytuj:
    Do VSCode jest również dodatek - PlatformIO, który całą konfigurację robi w locie przy zakładaniu projektu. wspiera różne platformy oraz kilka framework-ów. Oczywiście można pisać bez używania frameworka.
    AVR, usbasp oraz zestaw ATB działa bezproblemowo pod tym.


    Otóż to, to jest rozwiązanie plug and play ale nie pamiętam czy można tam otworzyć czysty projekt dla AVR czy trzeba "odsiewać ziarno od plew" w postaci kastrowania projektu arduino pod AVR



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 17 lut 2020, o 16:03 
    Offline
    Użytkownik

    Dołączył(a): 01 lis 2013
    Posty: 301
    Pomógł: 32

    Można jak najbardziej. Trzeba pamiętać aby po utworzeniu projektu w pliku konfiguracyjnym projektu zakomemtować lub usunąć linie z frameworkiem wskazującym na Arduino oraz zmienić nazwę pliku main.cpp na main.c

    Z bibliotekami Mirka również nie ma problemu. Skopiować do projektu i używać jak w Eclipse.

    Od jakiegoś czasu używam VSCode do AVR w ten sposób.
    A i pod inne platformy STM32, esp32 itp... można w tym samym środowisku pisać.

    _________________
    Pozdrawiam,
    sq8mvy, Paweł



    Ostatnio edytowano 17 lut 2020, o 16:09 przez gizmo5418, łącznie edytowano 1 raz

    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 17 lut 2020, o 16:05 
    Offline
    Użytkownik

    Dołączył(a): 11 mar 2019
    Posty: 44
    Zbananowany użytkownik

    Pomógł: 5

    ok, da się to jednak zrobić z Platformio. Instalujesz Platformio jako plugin, dodajesz nowy projekt i menu board wybierasz swoją atmegę, Wybierasz framework arduino i utworzy Ci projekt. Później w plku platformio.ini usuwasz framework == arduino a w pliku main.cpp usuwasz wszystko i zastępujesz to klasycznym int main(void) etc i voila. buduje się od stzrała. Wgrywanie to kwestia zdefiniowania odpowiednio w pliku platformio.ini np:

    [env:ATmega88P]
    platform = atmelavr
    board = ATmega88P
    upload_protocol = usbasp

    i tyle ;)

    aczkolwiek ja preferuje hard way :D

    ------------------------ [ Dodano po: kilkunastu sekundach ]

    gizmo5418 napisał(a):
    Można jak najbardziej. Trzeba pamiętać po utworzeniu projektu aby w pliku konfiguracyjnym projektu zakomemtować lub usunąć linie z frameworkiem wskazującym na Arduino.

    Używam tego zamiast Eclipsa.


    No sprawdziłem to właśnie ;) śmiga świetnie :D a nie jak to ociężałe eclipse zjavowe :D



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 18 lut 2020, o 00:34 
    Offline
    Nowy

    Dołączył(a): 10 wrz 2018
    Posty: 24
    Pomógł: 0

    Przy użyciu i skonfigurowaniu PlatformIO wyświetla mi taki błąd podczas wgrywania programu:
    avrdude: Warning: cannot query manufacturer for device: No such file or directory
    avrdude: Warning: cannot query product for device: No such file or directory
    avrdude: error: could not find USB device with vid=0x16c0 pid=0x5dc vendor='www.fischl.de' product='USBasp'



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 18 lut 2020, o 09:49 
    Offline
    Użytkownik

    Dołączył(a): 11 mar 2019
    Posty: 44
    Zbananowany użytkownik

    Pomógł: 5

    Claptonnn napisał(a):
    avrdude: Warning: cannot query manufacturer for device: No such file or directory
    avrdude: Warning: cannot query product for device: No such file or directory
    avrdude: error: could not find USB device with vid=0x16c0 pid=0x5dc vendor='www.fischl.de' product='USBasp'


    nie wiem czy atnelowski USBasp jest kompatybilny z tym avrdude. Może to jest problem



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 18 lut 2020, o 10:29 
    Offline
    Użytkownik

    Dołączył(a): 01 lis 2013
    Posty: 301
    Pomógł: 32

    Jest kompatybilny i programuje bez najmniejszego problemu. Proszę sobie dodać do pliku platformio.ini w katalogu projektu
    dodatkowe parametry dla programatora usbasp:

    upload_protocol = usbasp
    upload_flags = -Pusb

    Warto sobie dodać do tego pliku również inne parametry:

    board_build.f_cpu = 16000000L dla taktowania 16MHz lub inna wartość z którą taktowany jest procek

    monitor_speed = 9600 prędkość dla wbudowanego terminala szeregowego. Bautrate ustawiamy na taki, z jakim będziemy się komunikować

    _________________
    Pozdrawiam,
    sq8mvy, Paweł



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 19 lut 2020, o 10:42 
    Offline
    Użytkownik

    Dołączył(a): 11 mar 2019
    Posty: 44
    Zbananowany użytkownik

    Pomógł: 5

    Misiek_86 napisał(a):
    Poszukałem chwilkę i są poradniki jak integrować github do eclipse


    ale autor wątku napisał wyraźnie że nie chce Eclipse'a

    ------------------------ [ Dodano po: 1 minucie ]

    gizmo5418 napisał(a):
    upload_protocol = usbasp
    upload_flags = -Pusb

    Warto sobie dodać do tego pliku również inne parametry:

    board_build.f_cpu = 16000000L dla taktowania 16MHz lub inna wartość z którą taktowany jest procek

    monitor_speed = 9600 prędkość dla wbudowanego terminala szeregowego. Bautrate ustawiamy na taki, z jakim będziemy się komunikować


    napisałem tak bo nie wiem czemu miało by nie działać od strzała. U mnie na avrisp mk2 działa.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 19 lut 2020, o 11:05 
    Offline
    Użytkownik

    Dołączył(a): 25 lip 2013
    Posty: 2595
    Pomógł: 128

    To może któryś z kolegów pokusiłby się o stworzenie skróconego manuala krok po kroku ze screenshotami jak okiełznać inne środowiska?
    Byłby to fajny poradnik dla potomnych.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 21 lut 2020, o 22:29 
    Offline
    Nowy

    Dołączył(a): 10 wrz 2018
    Posty: 24
    Pomógł: 0

    gizmo5418 napisał(a):
    Jest kompatybilny i programuje bez najmniejszego problemu. Proszę sobie dodać do pliku platformio.ini w katalogu projektu
    dodatkowe parametry dla programatora usbasp:

    upload_protocol = usbasp
    upload_flags = -Pusb

    Warto sobie dodać do tego pliku również inne parametry:

    board_build.f_cpu = 16000000L dla taktowania 16MHz lub inna wartość z którą taktowany jest procek

    monitor_speed = 9600 prędkość dla wbudowanego terminala szeregowego. Bautrate ustawiamy na taki, z jakim będziemy się komunikować


    Dodałem te parametry i nadal nie działa, wyskakuje ten sam błąd.
    Używam programatora ATB-USBasp v. 4.2



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 lut 2020, o 00:08 
    Offline
    Użytkownik

    Dołączył(a): 01 lis 2013
    Posty: 301
    Pomógł: 32

    Mam ten sam programator v4.2 oraz zestaw ATB 1.05a. Nie mam problemów z obsługą pod VSC.

    Jakiego systemu używasz linux, windows, mac ?
    Jak uruchomisz AVRDUDE z "palca" w konsoli lub z poziomu programów Mirka, to taki sam dostajesz błąd, czy poprawnie rozpozna programator?
    Mi to wygląda na nie rozpoznane urządzenie w systemie, a nie problem z VSC

    Jeżeli używasz windowsa, to sprawdź w menedżerze urządzeń, czy usbasp jest poprawnie wykrywany.
    Jeżeli używasz linuksa, to dodaj regułkę do udev - było już to poruszane na tym forum.

    _________________
    Pozdrawiam,
    sq8mvy, Paweł



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 lut 2020, o 01:20 
    Offline
    Nowy

    Dołączył(a): 10 wrz 2018
    Posty: 24
    Pomógł: 0

    gizmo5418 napisał(a):
    Jakiego systemu używasz linux, windows, mac ?

    Windows 10

    Cytuj:
    Jak uruchomisz AVRDUDE z "palca" w konsoli lub z poziomu programów Mirka, to taki sam dostajesz błąd, czy poprawnie rozpozna programator?

    Poprawnie jest rozpoznawany, wykrywa też Atmege jak mam podłączoną.

    Cytuj:
    Jeżeli używasz windowsa, to sprawdź w menedżerze urządzeń, czy usbasp jest poprawnie wykrywany.

    Wykrywa mi go jako USBasp



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 lut 2020, o 01:52 
    Offline
    Użytkownik

    Dołączył(a): 01 lis 2013
    Posty: 301
    Pomógł: 32

    Wstaw zrzut ekranu z widoczną zawartością pliku platformio - jest w katalogu projektu.

    W dolnym oknie VSC w terminalu przejdź do katalogu z projektem, następnie wpisz pio run -v -t upload i pokaż logi z tego polecenia. U mnie jest błąd rc=-1, bo mam podpięty do pokazu tylko programator ATB-usbasp v4.2.
    Obrazek

    Obrazek

    Obrazek

    _________________
    Pozdrawiam,
    sq8mvy, Paweł



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 lut 2020, o 21:59 
    Offline
    Nowy

    Dołączył(a): 10 wrz 2018
    Posty: 24
    Pomógł: 0

    Dodatek PlatformIO w zakładce "Devices" wykrywa mi tylko zestaw ATB 1.05a a programatora ATB-USBasp 4.2 już nie :/

    Obrazek

    Obrazek

    Obrazek



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 lut 2020, o 23:00 
    Offline
    Użytkownik

    Dołączył(a): 01 lis 2013
    Posty: 301
    Pomógł: 32

    Bardzo dziwna sytuacja.

    Jeszcze jedno. Pokaż PID i VID programatora v4.2. Znajdziesz go w menedżerze urządzeń. Z komunikatu błędu wynika, że wbudowany avrdude nie ma dostępu do programatora, bo nie może odczytać Vid oraz Pid. Może jest jakiś problem z uprawnieniami ? Sterowniki do programatora instalowałeś? Najlepiej zrobić to z poziomu MkAVRcalculatora, ale wcześniej odinstaluj programator.
    Obrazek

    Jak nie aktualizowałeś jeszcze firmware w programatorze ATB-usbasp v4.2, to zrób to. Program do updatowania jest na witrynie Atnel https://atnel.pl/programator-atb-usbasp.html.

    W zakładce "Devices" zobaczysz m.in. porty szeregowe. ATB 1.05 jest rozpoznawany, ponieważ jest w nim hub USB, pod który podpięty jest USBASP oraz FT232. I to FT232 jest rozpoznany, jako port szeregowy a nie usbasp.

    _________________
    Pozdrawiam,
    sq8mvy, Paweł



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 lut 2020, o 23:23 
    Offline
    Nowy

    Dołączył(a): 10 wrz 2018
    Posty: 24
    Pomógł: 0

    VID_16C0
    PID_05DC

    Jeżeli o to chodzi, było w polu podpis cyfrowy, dokładnie to tak jest wpisane USB\VID_16C0&PID_05DC (libwdi autogenerated)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 lut 2020, o 23:40 
    Offline
    Użytkownik

    Dołączył(a): 01 lis 2013
    Posty: 301
    Pomógł: 32

    Tak, o te dane chodzi.

    Odinstaluj programator z menedżera urządzeń i zainstaluj sterowniki z poziomu MkAVRcalculator-a.

    _________________
    Pozdrawiam,
    sq8mvy, Paweł



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 lut 2020, o 00:21 
    Offline
    Nowy

    Dołączył(a): 10 wrz 2018
    Posty: 24
    Pomógł: 0

    nie pomaga
    PID i VID pozostają takie same



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 lut 2020, o 10:27 
    Offline
    Użytkownik

    Dołączył(a): 01 lis 2013
    Posty: 301
    Pomógł: 32

    Tak, mają zostać takie same.

    Z jakiegoś powodu AVRDUDE nie jest w stanie skomunikować się z programatorem.

    Komunikacja AVRDUDE z programatorem odbywa się poprzez bibliotekę libUSB0.dll. Swiadczyć to może o tym,
    że jakiś antywirus, wbudowany defender czy coś innego w systemie blokuje tą wersję biblioteki i AVRDUDE.
    Przeszukaj pod tym kątem ustawienia zabezpieczeń systemu. Może wystarczy dodać bibliotekę i avrdude do wyjątków w zabezpieczeniach...

    Nie jest to problem związany samym środowiskiem VSC, bo jak widać sam AVRDUDE jest poprawnie uruchamiany przez VSC.

    _________________
    Pozdrawiam,
    sq8mvy, Paweł



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 lut 2020, o 11:34 
    Offline
    Nowy

    Dołączył(a): 10 wrz 2018
    Posty: 24
    Pomógł: 0

    Przeszukałem wszystko i nie ma nigdzie takiej opcji jak blokowanie biblioteki :/
    Używam Kasperskiego jbc.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 24 lut 2020, o 09:08 
    Offline
    Użytkownik

    Dołączył(a): 01 lis 2013
    Posty: 301
    Pomógł: 32

    Jako, że używam linuksa, to nie znam tak głęboko windowsa. Mogę popatrzeć zdalnie na problem przez teamviewera, jak byś był zainteresowany. Obawiam się, że dalej nie będę w stanie pomóc. Poszukam, może ktoś miał już taki problem pod windowsem.

    AVRDUDE dostarczany z pluginem Platformio to jest całkiem niezależna aplikacja zewnętrzna i w żaden sposób nie jest powiązana z VSC. Ona jest tylko uruchamiana z parametrami przez VSC na żądanie użytkownika.
    Możesz dla testu, uruchomić tą wersję AVRDUDE z poziomu konsoli ręcznie. Ale nie za pomocą Pio, jak dla logów, tylko poprzez bezpośrednią ścieżkę do AVRDUDE z platformio.

    _________________
    Pozdrawiam,
    sq8mvy, Paweł



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 25 lut 2020, o 00:00 
    Offline
    Nowy

    Dołączył(a): 10 wrz 2018
    Posty: 24
    Pomógł: 0

    gizmo5418 napisał(a):
    Mogę popatrzeć zdalnie na problem przez teamviewera, jak byś był zainteresowany.

    O chętnie bym skorzystał z twojej pomocy, możesz dać jakiś kontakt do siebie żeby się umówić?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    Wyświetl posty nie starsze niż:  Sortuj wg  
    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 28 ] 

    Strefa czasowa: UTC + 1


    Kto przegląda forum

    Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 2 gości


    Nie możesz rozpoczynać nowych wątków
    Nie możesz odpowiadać w wątkach
    Nie możesz edytować swoich postów
    Nie możesz usuwać swoich postów
    Nie możesz dodawać załączników

    Szukaj:
    Skocz do:  
    Sitemap
    Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
    phpBB SEO