HomeMade
Programowanie Atmega328AU - Wersja do druku

+- HomeMade (http://sp-hm.pl)
+-- Dział: Oprogramowanie (/forum-84.html)
+--- Dział: Technika programowania mikroprocesorów (/forum-85.html)
+--- Wątek: Programowanie Atmega328AU (/thread-2966.html)

Strony: 1 2


Programowanie Atmega328AU - TOMEKT - 11-03-2017 12:23

Szanowni koledzy, jakim programem programujecie Atmega328AU?, oraz z jakiego interfejsu korzystacie?
Próbowałem avrdude ale on nie ma na liście atmega328 tylko atmega328p, Burn-O-Mat to samo, Khazama to samo, SinaProg też.


RE: Programowanie Atmega328AU - SP9RQA - 11-03-2017 15:46

avrdude -p?

(...)
m325 = ATmega325
m3250 = ATmega3250
m328 = ATmega328
m328p = ATmega328P
m329 = ATmega329
(...)

I na tych dwóch nie działa?


RE: Programowanie Atmega328AU - SQ8MVY - 12-03-2017 0:41

Witaj,
A jaką wersję avrdude posiadasz ? Pobierz najnowszą - obecnie 6.3 ->AvrDude.

A interfejs mogę polecić - UsbAsp - tani i przyzwoity pod USB
Nakładka graficzna na avrdude :
- AvrDudess ( windows, linuks),
- MkAVRCalculator ( windows )


RE: Programowanie Atmega328AU - TOMEKT - 12-03-2017 11:14

(11-03-2017 15:46)SP9RQA napisał(a):  avrdude -p?

(...)
m325 = ATmega325
m3250 = ATmega3250
m328 = ATmega328
m328p = ATmega328P
m329 = ATmega329
(...)

I na tych dwóch nie działa?
Dziękuję Krzysztof za odpowiedź, w avrdude używałem składni: avrdude -c usbasp -p m328 i program "wyrzucił" mi całą listę procesorów za wyjątkiem Atmega 328 AU.
Na obecną chwilę nie jestem w stanie tego sprawdzić bo mam jakiś defekt systemu windows 10 (nie mogę nawet przywrócić systemu za pomocą funkcji: przywracanie systemu, sporo ludzi sygnalizuje ten błąd i Microsoft na chwilę obecną nie rozwiązał problemu). Próbując uruchomić avr dude windows nie rozpoznaje komendy. W khazamie jak wybiorę 328p to pojawia się monit że jest niedopasowanie i dla 328 sgnatura jest: 0x1e9514 a spodziewana sygnatura dla 328p jest: 1E950F. Wobec tego nie próbowałem dalej.

(12-03-2017 0:41)SQ8MVY napisał(a):  Witaj,
A jaką wersję avrdude posiadasz ? Pobierz najnowszą - obecnie 6.3 ->AvrDude.

A interfejs mogę polecić - UsbAsp - tani i przyzwoity pod USB
Nakładka graficzna na avrdude :
- AvrDudess ( windows, linuks),
- MkAVRCalculator ( windows )

Witaj Paweł,
dziękuję za odpowiedź. Mam ściągniętą avrdude 6.3 jak pisałem Krzysztofowi, niestety ale coś się podziało mi w windows 10 i nie mogę uruchomić avrdude ani nawet kalkulator systemowy mi nie działa. Wszystkie porady z netu nie pomogły w rozwiązaniu problemu. Ale ściągnąłem Avrdudess i powiem, że program współpracuje z interfejsem bezbłędnie (jak na razie). Z uwagi na to, że będzie to moje pierwsze programowanie pozwolę sobie zapytać jak właściwie się do tego zabrać i co powinienem najpierw. Mam wsad do Atmega 328 (konkretnie 328AU) mam podane fusbity: h DE, l FF, e 05. W programie mam flash i eeprom. Czy najpierw muszę zapisać fusbity, czy wsad powinienem zapisać jako flash i eeprom? Jeśli mógłbyś Pawle podpowiedzieć jak się do tego zabrać byłbym wdzięczny.


RE: Programowanie Atmega328AU - SP9RQA - 12-03-2017 12:06

Wg mnie powinien to być 328 (bez P)
Zobacz tutaj na pdf:
http://www.atmel.com/images/Atmel-8271-8-bit-AVR-Microcontroller-ATmega48A-48PA-88A-88PA-168A-168PA-328-328P_datasheet_Complete.pdf

str. 625 i 626
i mamy dwie wersje:
ATmega328-AU oraz
ATmega328P-AU

a na stronie 7 masz porównanie procesorów. Jak widać AU tutaj nic nie znaczy dla wersji 328, ważne jest czy to jest z literką P,
czy nie.


RE: Programowanie Atmega328AU - TOMEKT - 12-03-2017 12:57

(12-03-2017 12:06)SP9RQA napisał(a):  Wg mnie powinien to być 328 (bez P)
Zobacz tutaj na pdf:
http://www.atmel.com/images/Atmel-8271-8-bit-AVR-Microcontroller-ATmega48A-48PA-88A-88PA-168A-168PA-328-328P_datasheet_Complete.pdf

str. 625 i 626
i mamy dwie wersje:
ATmega328-AU oraz
ATmega328P-AU

a na stronie 7 masz porównanie procesorów. Jak widać AU tutaj nic nie znaczy dla wersji 328, ważne jest czy to jest z literką P,
czy nie.
Tak Atmega 328 ma być, bez litery P, tak jak wcześniej pisałem nie wszystkie programy obsługują Atmega 328. Z tych które testowałem na swojej liście mają MKavrcalculator (to jest wersja płatna programu) i Avrdudess, którą polecił kol. Paweł. Z tego co przetestowałem to Avrdudess dokonuje prawidłowo detekcji Atmega 328, odczytuje fusbity, natomiast jeśli chcę zczytać flash bądź eeprom to w oknie programowym pojawia się komunikat: avrdude exe: warning: cannot set sck period, please check for usbasp firmware update. Przestawiłem zworkę w interfejsie, ponownie próbuję odczytać flash i eeprom, pojawia się taki sam komunikat. Powinienem zignorować komunikat czy nie?
Żeby zaktualizować firmware w usbasp potrzebuje mieć drugi usbasp jak się domyślam.


RE: Programowanie Atmega328AU - SQ8MVY - 12-03-2017 20:22

Witaj,
A jaką wersję programatora USBASP masz ?
Tą tanią chińską na niebieskim laminacie, robioną własnoręcznie, czy Atnel-a ?

Jak ten chiński, to musisz sobie zaktualizować w nim firmware do najnowszej wersji, aby przestał się komunikat pojawiać.

To jest tylko warning wyświetlany przez avrdude, który mówi, że firmware programatora nie obsługuje programowej zmiany szybkości programowania / odczytu układu docelowego. ( jak dobrze pamiętam, jest to parametr -B dla avrdude).

Tak, do zmiany firmware potrzebny jest drugi programator. Ale jak masz jakąś płytkę arduino, to można jej użyć, programując ją z poziomu środowiska arduino wsadem AVR ISP. W takim układzie
zapoznaj się z z tym artykułem


RE: Programowanie Atmega328AU - TOMEKT - 13-03-2017 9:28

(12-03-2017 20:22)SQ8MVY napisał(a):  Witaj,
A jaką wersję programatora USBASP masz ?
Tą tanią chińską na niebieskim laminacie, robioną własnoręcznie, czy Atnel-a ?

Jak ten chiński, to musisz sobie zaktualizować w nim firmware do najnowszej wersji, aby przestał się komunikat pojawiać.

To jest tylko warning wyświetlany przez avrdude, który mówi, że firmware programatora nie obsługuje programowej zmiany szybkości programowania / odczytu układu docelowego. ( jak dobrze pamiętam, jest to parametr -B dla avrdude).

Tak, do zmiany firmware potrzebny jest drugi programator. Ale jak masz jakąś płytkę arduino, to można jej użyć, programując ją z poziomu środowiska arduino wsadem AVR ISP. W takim układzie
zapoznaj się z z tym artykułem
Witaj,

programator jest na niebieskim laminacie (kupując go nie miałem pojęcia, że nie ma najnowszego firmware, szkoda ). Dziękuję Pawle za podesłane materiały, niestety arduino nie mam.

Czy programować nie przejmując się tym ostrzeżeniem czy nie? Nie zablokuje procesora?


RE: Programowanie Atmega328AU - SQ8MVY - 13-03-2017 10:22

Witaj,

Nic Ci nie zablokuje. Sam tak dłuższy czas programowałem. Jak wpadł mi w ręce drugi programator, to wtedy zaktualizowałem firmware.

Przy programowaniu najbezpieczniej w pierwszej kolejności ładować do flash/eeprom, a na końcu fusy.
Co prawda avrdude sam dba o tą kolejność programowania, ale lepiej dmuchać na zimne.....


RE: Programowanie Atmega328AU - TOMEKT - 13-03-2017 20:19

(13-03-2017 10:22)SQ8MVY napisał(a):  Witaj,

Nic Ci nie zablokuje. Sam tak dłuższy czas programowałem. Jak wpadł mi w ręce drugi programator, to wtedy zaktualizowałem firmware.

Przy programowaniu najbezpieczniej w pierwszej kolejności ładować do flash/eeprom, a na końcu fusy.
Co prawda avrdude sam dba o tą kolejność programowania, ale lepiej dmuchać na zimne.....

Witaj Paweł,

Właśnie wpadł mi w ręce drugi taki sam chiński programator, dzięki niemu zaktualizowałem firmware w swoim. Zaprogramowałem układ z tym, że najpierw zapisałem fusy o potem flash. Zaznaczając zapis fusbitów przy programowaniu flash "wskoczył" natomiast fusy zostały jak w oryginale układu. Zastanawia mnie: Pamięć flash Atmega328 to 32kB, wsad który został wgrany to 80kB, domyślam się że te przestawione fusbity to dodatkowy obszar pamięci.?
Paweł serdecznie Ci dziękuję za wszystkie wskazówki, podziękowania również dla Kolegi SP9QRA Krzysztofa, dzięki Wam cała procedura poszła jak po sznurku.