Skocz do zawartości

Programowanie arduino pro z atmel studio 7


Karolus

Pomocna odpowiedź

Witajcie

Do tej pory Atmel studio używałem tylko razem z Arduino Mega, wtedy żadnych problemów z programowaniem nie miałem.

Ponieważ nie ma co nawet porównywać możliwości AS i IDE, postanowiłem przesiąść się również z innymi projektami, w tym z tymi na Arduino pro mini. No i zonk.... nie jestem w stanie ogarnąć programowania z poziomu AS 😞

Obejrzałem sporo poradników, stworzyłem nowe "External tools" z parametrem "-C "C:\Program Files\arduino-1.8.12\hardware\tools\avr\etc\avrdude.conf" -v -p atmega328p -c arduino -P COM4 -b 115200 -D -U flash:w:”$(ProjectDir)Debug\$(TargetName).hex”:i"
ale mam problem z dostępem do portu.

Jeśli wpisuje -c arduino w oknie output wyświetla mi się avrdude.exe: ser_open(): can't open device "\\.\COM4": Odmowa dostępu.
przy próbie uruchomienia z parametrem -c arduinoisp otrzymuje avrdude.exe: Error: Invalid -P value: 'COM4'
                                                                                                                   Use -P usb:bus:device

Nie mam pojęcia w czym problem, wyczerpałem chyba wszelkie możliwe kombinacje 😞

Pomożecie? 🙂

 

Z góry dzięki

Link do komentarza
Share on other sites

Nie wiem, jak to wygląda w Atmel Studio, ale spróbuj zmienić port szeregowy, albo w Atmel Studio, albo w menedżerze urządzeń. Może coś przez przypadek usunąłeś, więc możesz zrobić reinstall Atmel Studio.

Ps. Przepraszam za powtórzenia.

Edytowano przez KHX
Link do komentarza
Share on other sites

okazało się że port zablokował po prostu terminal otwarty w AS, więc problem dostępu do portu rozwiązany, ale nadal nie jestem w stanie zaprogramować z AS arduino pro mini.

Mam teraz taką głupia sytuację że program piszę w AS7, ale programować muszę z IDE... upierdliwe lekko 😞

Myślę że problem leży w braku resetu modułu arduino pro mini przez programator, w IDE radzę sobie z tym naciskając w odpowiednim momencie reset, nie wiem dlaczego ale z poziomu AS7, ten sam "myk" nie pomaga 😞

Naprawde nikt z forumowiczów nie programuje arduino pro mini (lub podobnych arduino bez interfejsu USB) z poziomu Atmel Studio?

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

1 godzinę temu, Karolus napisał:

Mam teraz taką głupia sytuację że program piszę w AS7, ale programować muszę z IDE... upierdliwe lekko 😞

Masz na myśli Arduino IDE? 

1 godzinę temu, Karolus napisał:

Myślę że problem leży w braku resetu modułu arduino pro mini przez programator

Co to za programator? Najlepiej pokarz (foto ,rysunek) jak to jest podłączone do arduino.

1 godzinę temu, Karolus napisał:

Naprawde nikt z forumowiczów nie programuje arduino pro mini (lub podobnych arduino bez interfejsu USB) z poziomu Atmel Studio?

Pewnie czytałeś wątek na forum pod tytułem "dlaczego arduino jest fajne". Ja na chwilę obecną korzystam z notepada++ oferuje naprawdę wiele możliwości. Kompilacja i upload też jest z poziomu notepada++(lub progISP do upload). Z Arduino IDE w zasadzie już nie korzystam od jakiegoś czasu. A atmelStudio nie przypadło mi do gustu. Notepad++ ma opcje , których niema w atmelStudio (Oczywiście działa to też w drugą stronę 🙂).

Edytowano przez slon
Link do komentarza
Share on other sites

tak, oczywiście pisałem o arduino IDE

standardowy programator na CH340, w zasadzie programator to dużo powiedziane, to konwerter USB/RS taki https://sklep.avt.pl/konwerter-usb-rs232-ch340g.html moduły arduio oczywiście mają wgrany bootloader

notepada++ nie testowałem, może sprawdzę, AS daje możliwość debugowania, nawet poprzez taki prymitywny konwerter jak ten  mój, dlatego mi się spodobało, "debugowanie" polecniami serial.print jest hmmmmm ciut upierdliwe 😉

 

Link do komentarza
Share on other sites

8 godzin temu, Karolus napisał:

Mam teraz taką głupia sytuację że program piszę w AS7, ale programować muszę z IDE... upierdliwe lekko

czyli rozumiem, że wklejasz lub zaznaczasz w arduino IDE(external editor) kod, który piszesz w AS7 następnie kompilujesz i wgrywasz przez Arduino IDE?

8 godzin temu, Karolus napisał:

Myślę że problem leży w braku resetu modułu arduino pro mini przez programator, w IDE radzę sobie z tym naciskając w odpowiednim momencie reset, nie wiem dlaczego ale z poziomu AS7, ten sam "myk" nie pomaga

Czy przy tym konkretnym arduino pro mini za każdym razem jak naciśniesz reset program wgrywa się przez arduino IDE ? Czas jaki masz na wciśnięcie przycisku reset jest bodajże zależny od bootloadera (w arduinowym jest go naprawdę niewiele). CH340 posiada sygnał DTR tyle , że w tym konwerterze nie jest wyprowadzony (aczkolwiek można by go było wyprowadzić).  Jeśli masz kilka sekund na wciśnięcie przycisku reset (ponoć w niektórych bootloaderach nawet około 5s) to spokojnie można obejść się bez DTR.

Link do komentarza
Share on other sites

na szczęście AS7 pozwala pracować na plikach ino, więc jak chce zaprogramować moduł to muszę odpalić IDE skompilować program i zaprogramować moduł.

Myk z resetem ręcznie działa w IDE, niestety w AS nie... nie do końca rozumiem dlaczego 😞

Link do komentarza
Share on other sites

Dla pewności sprawdziłem jak to działa w arduino-cli.

arduino-cli upload -b arduino:avr:pro:cpu=16MHzatmega328 -p COM16 mysketch

Konwerter mam z wyprowadzonym sygnałem DRT więc celowo go nie podpinałem. Za trzecim podejściem wgrałem kod przy ręcznym resetowaniu pro mini a więc stwierdzenie :

Dnia 26.06.2020 o 17:21, Karolus napisał:

to chyba nie pomoże

jest nieprawdziwe. Rozwiązanie masz sprawdzone i możesz go użyć z dowolnym edytorem pod windows/linux.

Link do komentarza
Share on other sites

A nie możesz po prostu kupić sobie USBasp do programowania przez ISP, kosztuje raptem kilkanaście zł. a oszczędzasz miejsce w pamięci procka na bootloader arduino. Widziałem też gdzieś firmware do asp umożliwiający oprócz programowania realizowanie funkcji konwertera RS/USB ale jest gorszy od CH340 o wiele. AS7 chyba jako jedyny ma ten symulator pełniący funkcję debugera ale wyszła jakaś wersja beta dodatku do MPLAB intergującego avr może się przyda do czegoś.

Link do komentarza
Share on other sites

@atMegaTona jeśli piszesz do mnie to ja usbISP czy usbasp-clone? posiadam. Używam z progISP(przy zakupie programatora dostałem informację , że z avrdude nie jest kompatybilny)

boot.thumb.jpg.6ac0c7bb5ca0d302078f464f4fe7e70e.jpg

Jeśli chodzi o ilość miejsca przeznaczonego na bootloader to tak jak widać mam 4 opcje dla fusebitu BOOTSZ (tak też podaje reference manual). Czyli jak by nie patrzeć to i tak muszę zarezerwować przynajmniej 4 strony w pamięci flash chociaż bootloadera nie wgrywam. Więc jak to w zasadzie jest z tym oszczędzanie miejsca? O BLB NRWW i RWW tylko pobieżnie przeczytałem ale jakoś w całość mi się to nie ułożyło. Jak byś miał trochę czasu i chęci to opisz ja to dokładnie wygląda.

Link do komentarza
Share on other sites

@Karolus odpaliłem dzisiaj AS7 żeby zobaczyć jak to dokładnie wygląda. W external tools w polu command wklejasz:

C:\Program Files (x86)\Arduino\hardware\tools\avr\bin\avrdude.exe

poniżej w arguments

-p m328p -c arduino -PCOM4 -b 57600 -D -v -Uflash:w:"$(ProjectDir)Debug\$(TargetName).hex":i
  • -b 57600 będzie poprawne dla większości klonów z atmegą 328p
  • -b 115200 dla orginalnego uno R3 (może inne też)

Możesz sobie podejrzeć te wartości w :

C:\Program Files (x86)\Arduino\hardware\arduino\avr\boards.txt

Wstaw poprawny numer portu com i daj znać czy działa.

Zapomniałem o avrdude.conf. Aby to zadziałało skopiuj wspomniany plik avrdude.conf z

C:\Program Files (x86)\Arduino\hardware\tools\avr\etc

do

C:\Program Files (x86)\Arduino\hardware\tools\avr\bin

czyli tam gdzie jest avrdude.exe. W ten sposób nie będziesz musiał przekazywać parametru -C. Lub jak chcesz możesz go przekazać w polu arguments

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.