Wybierz swój język

AVRFusesCalc_icon

 AVRFusesCalc jest pierwszą aplikacją z graficznym interfejsem użytkownika na macOS, dzięki której w prosty sposób, bez obaw o zablokowanie mikrokontrolera, można ustawić fusebity oraz lockbity w procesorach ATmega i ATtiny. Do poprawnego działania programu, wymagane jest środowisko AVR-GCC zainstalowane w systemie, wraz z programem "avrdude". Można też wykorzystać "avrdude" z pakietu Arduino. Nie trzeba wtedy instalować AVR-GCC, ponieważ wszystkie potrzebne biblioteki są dostarczane wraz z aplikacją Arduino. Jest to w sumie najszybszy i najmniej kłopotliwy sposób, na rozpoczęcie przygody z mikrokontrolerami AVR. Jak użyć "avrdude" z Arduino, opisałem w poradniku do którego link znajduje się na końcu tego artykułu. Oprócz oprogramowania, niezbędny jest też programator poprzez który aplikacja będzie się komunikować z podłączonym mikrokontrolerem.

Jedną z większych korzyści z używania AVRFusesCalc jest oszczędność czasu. Po pierwsze, w przejrzysty i prosty sposób można dokonać zmiany ustawień fusebitów. A po drugie, podłączamy programator do mikrokontrolera i o nim zapominamy. Nie trzeba już zaprzątać sobie głowy tym, czy przestawiło się zworkę SlowSCK na programatorze czy też nie. Aplikacja rozpozna podłączony mikrokontroler, bez względu na ustawioną prędkość taktowania mikrokontrolera. Potrafi również określić, jaki protokół programowania, SPI lub TPI, jest wymagany do komunikacji z podłączonym mikrokontrolerem.

AVRFusesCalc składa się z dwóch części. Jedna jest przeznaczona dla zaawansowanych użytkowników, a druga dla tych co dopiero stawiają pierwsze kroki w świecie mikrokontrolerów AVR.

Część dla początkujących nazwana została „Fusebity uproszczone”. Korzystając z tej opcji, ma się ograniczone możliwości konfiguracji mikrokontrolera tylko do tych najbardziej niezbędnych. Między innymi można ustawić prędkość taktowania zewnętrznego lub wewnętrznego. Można również włączyć lub wyłączyć niektóre bity dodatkowe, takie jak JTAG czy CKDIV8. Najistotniejsze jest jednak to, że na 99,99% nie zablokujemy procesora korzystając z fusebitów uproszczonych. Nawet ustawienie zegara na częstotliwość 128 kHz plus podział jej przez 8 (CKDIV8), nie przeszkodzi programowi w poprawnym rozpoznaniu mikrokontrolera. Jak wspominałem, jest to idealne rozwiązanie dla osób początkujących, którym zależy tylko na ustawieniu taktowania i które nie mają jeszcze dostatecznej wiedzy na temat fusebitów w procesorach AVR.

Druga część jest przeznaczona dla osób które nie boją się mnogości kontrolek i ustawień. Nazywa się "Fuse / Lock Bits AVR". Tutaj ma się dostęp do wszystkich bitów konfiguracyjnych mikrokontrolera, łącznie z Lockbitami. Korzystając z tej opcji, należy posiadać wiedzę na temat poszczególnych bitów dostępnych w konkretnym mikrokontrolerze. Nierozważne włączenie lub wyłączenie jakiegoś bitu może doprowadzić do zablokowania procesora, a dokładnie uniemożliwienia powtórnego zaprogramowania, np. wyłączenie linii reset (RSTDISBL). Z jednej więc strony trzeba zachować ostrożność, ale za to z drugiej ma się pełną kontrolę nad mikrokontrolerem.

Poza ustawianiem w tej zakładce fusebitów i lockbitów, istnieje też możliwość wgrania „wsadu” do mikrokontrolera, oraz odczytania „wsadu” z mikrokontrolera i zapisania go do pliku. Możliwe jest również przywrócenie fabrycznych ustawień fusebitów, oraz skasowanie pamięci mikrokontrolera wraz z resetem Lockbitów.

Na chwilę obecną program został przetestowany na programatorach zgodnych z USBAsp oraz na Arduino UNO. Zaimplementowana jest co prawda obsługa wirtualnych portów szeregowych, ale nie miałem możliwości przetestowania innych programatorów które z portu szeregowego korzystają. Dlatego też proszę o informację, jak wygląda współpraca aplikacji z innymi programatorami.

Poproszę również o wyrażenie swojej opinii na temat aplikacji, jak i o jej ocenę w App Store.

Jak skonfigurować i używać AVRFusesCalc

Wymagania systemowe:

  • komputer Mac z procesorem Intel lub Apple Silicon
  • system opreacyjny min. macOS 10.11

 

https://apps.apple.com/pl/app/avrfusescalc/id1333215226?l=pl&mt=12

<\/a>\r\n<a class=\"uk-button uk-button-link\" href=\"https:\/\/www.youtube.com\/watch?v=iL2e2KitOyE\"><img src=\"\/images\/buttons\/YouTubeButton.png\"><\/a>\r\n<p>&nbsp;<\/p>\r\n<p style=\"font-family: 'Droid Sans', sans-serif, Helvetica, Arial; font-size: 10px; font-style: normal; text-align: justify;\"><span style=\"font-size: 10pt; text-decoration: underline;\"><span style=\"font-family: helvetica;\">Historia:<\/span><\/span><\/p>\r\n<ul>\r\n<li>v 1.2.1 (06.2018)<\/li>\r\n<\/ul>\r\n<p style=\"padding-left: 30px;\"><span style=\"font-family: helvetica; font-size: 10pt;\">Poprawiona została współpraca z wirtualnymi portami szeregowymi.<\/span><\/p>\r\n<p style=\"padding-left: 30px;\"><span style=\"font-family: helvetica; font-size: 10pt;\">Optymalizacja programu.<\/span><\/p>\r\n<ul>\r\n<li>v 1.2.0 (06.2018)<\/li>\r\n<\/ul>\r\n<p style=\"padding-left: 30px;\"><span style=\"font-family: helvetica; font-size: 10pt;\">Dodana została możliwość używania \"avrdude\" dołączonego do aplikacji Arduino. Folder w którym należy szukać \"avrdude\" z Arduino, znajduje się na domowym koncie użytkownika w folderze biblioteki. Nazwa tego folderu to \"Arduino15\".<\/span><\/p>\r\n<p style=\"padding-left: 30px;\"><span style=\"font-family: helvetica; font-size: 10pt;\">Optymalizacja programu.<\/span><\/p>\r\n<ul>\r\n<li>v 1.1.5 (01.2018)<\/li>\r\n<\/ul>\r\n<p style=\"padding-left: 30px;\"><span style=\"font-family: helvetica; font-size: 10pt;\">Uaktualnienie programu dla macOS 10.13 (HighSierra).<\/span><\/p>\r\n<p style=\"padding-left: 30px;\"><span style=\"font-family: helvetica; font-size: 10pt;\">Optymalizacja programu.<\/span><\/p>\r\n<p style=\"padding-left: 30px;\"><span style=\"font-family: helvetica; font-size: 10pt;\">Pierwsza dystrybucja aplikacji w AppStore.<\/span><\/p>\r\n<ul>\r\n<li>v 1.0.3 (10.2016)<\/li>\r\n<\/ul>\r\n<p style=\"padding-left: 30px;\"><span style=\"font-family: helvetica; font-size: 10pt;\">Uaktualnienie programu dla macOS 10.12 (Sierra).<\/span><\/p>\r\n<p style=\"padding-left: 30px;\"><span style=\"font-family: helvetica; font-size: 10pt;\">Usunięcie błędów związanych z panelem preferencji.<\/span><\/p>\r\n<ul>\r\n<li>v 1.0.2 (03.2016)<\/li>\r\n<\/ul>\r\n<p style=\"padding-left: 30px;\"><span style=\"font-family: helvetica; font-size: 10pt;\">Uaktualniono bazę obsługiwanych mikrokontrolerów. Zostały dodane: ATmega 48PB, ATmega 88PB, Atmega168PB, ATtiny 28, ATmega 32M1, AT90s2333.&nbsp;<\/span><\/p>\r\n<p style=\"padding-left: 30px;\"><span style=\"font-family: helvetica; font-size: 10pt;\">Program został przygotowany do pracy z \"avrdude\" w wersji 6.3.<\/span><\/p>\r\n<p style=\"padding-left: 30px;\"><span style=\"font-family: helvetica; font-size: 10pt;\">Naprawiony błąd zapisu preferencji programu.<\/span><\/p>\r\n<ul>\r\n<li>v 1.0.1 (02.2016)<\/li>\r\n<\/ul>\r\n<p style=\"padding-left: 30px;\"><span style=\"font-family: helvetica; font-size: 10pt;\">Dodano możliwość wpisywania ścieżki dostępu do \"avrdude\". Do tej pory można było tylko wybierać ją poprzez okno dialogowe.<\/span><\/p>\r\n<p style=\"padding-left: 30px;\"><span style=\"font-family: helvetica; font-size: 10pt;\">>Naprawiono błąd powodujący niewłaściwe odczytywanie fusebitów w sytuacji, gdy aplikacja została uruchomiona na jednym koncie użytkownika a następnie przełączono się na inne konto użytkownika. Po przełączeniu i uruchomieniu na nim aplikacji, występował błąd odczytu fusebitów.<\/span><\/p>\r\n<ul>  \r\n<li>v 1.0 (01.2016)<\/li>\r\n<\/ul>\r\n<p style=\"padding-left: 30px;\"><span style=\"font-family: helvetica; font-size: 10pt;\">Pierwsza oficjalna dystrybucja.<\/span><\/p>\r\n<ul>  ",

    "state": "1",

    "catid": "8",

    "created": "2016-01-14 00:00:00",