W poniższym poście pokażę, jak ustawić avrcalculator, żeby wgrywać nim programy na mikrokontroler w Linuxie. Miałem z tym pewne problemy, lecz sam znalazłem rozwiązanie, więc zamieszczę tu krótką instrukcję dla tych, którzy mogliby mieć z tym kłopoty.
Instalujemy (różnie, w zależności od dystrybucji, w Archu poprzez menager pacman) program avrdude. Podłączamy programator w trybie com (a więc zworka niebieska jest zdjęta).
W konsoli logujemy się na konto roota (w Arch Linux: sudo su) i sprawdzamy, co mamy podpięte pod USB poleceniem lsusb:
Jak widać system wykrywa nasz programator: Bus 002 Device 004: ID 16c0:05e1 Van Ooijen Technische Informatica CDC-ACM class devices (modems)
Nastepnie sprawdzamy pod jakim portem jest on ustawiony poleceniem dmesg | grep tty
Widzimy, ze jest przypisany jako ttyACM0, a jako, że każde urządzenie w Linuxie jest "widziane" w systemie jako osobny plik w folderze /dev to wnioskujemy, ze nasz programator będzie widziany pod postacią: /dev/ttyACM0
Teraz system musi "pozwolić" na to, żeby zwykły użytkownik miał dostęp do programatora (system widzi go jako wirtualny port szeregowy, a do nich zwykły user nie ma dostępu).
Najprościej wpisać w drugim okienku konsoli zalogować się na konto roota, wpisać nazwę przeglądarki plików (w XFCE jest to Thunar) i wyszukać poprzez nią plik ttyACM0 w folderze /dev.
Teraz klikamy właściwości i w zakłądce uprawnienia pozwalamy innym użytkownikom na odczytywanie i zapisywanie.
Więc teraz programując nasz mikrokontroler musimy wpisać jego ścieżkę dostępu (/dev/ttyACM0) do polecenia.
Sprawdźmy więc czy działa - zapytajmy avrdude, jaki mikrokontroler podłączyliśmy do programatora:
System widzi nasza atmegę:
Więc jest wszystko ok.
Teraz ściągamy program mkAVRCalculator i otwieram go poprzez Wine, w polu port (domyślnie będzie tam wpisane USB) wpisujemy ścieżkę dostępu do naszego programatora: /dev/ttyACM0
Teraz możemy sprawdzać podłączony mikrokontroler, ustawiać fusebity i wgrywać na niego programy.
Instalujemy (różnie, w zależności od dystrybucji, w Archu poprzez menager pacman) program avrdude. Podłączamy programator w trybie com (a więc zworka niebieska jest zdjęta).
W konsoli logujemy się na konto roota (w Arch Linux: sudo su) i sprawdzamy, co mamy podpięte pod USB poleceniem lsusb:
Bus 002 Device 004: ID 16c0:05e1 Van Ooijen Technische Informatica CDC-ACM class devices (modems)
Bus 002 Device 002: ID 0458:003a KYE Systems Corp. (Mouse Systems) NetScroll+ Mini Traveler / Genius NetScroll 120
Bus 002 Device 003: ID 0a81:0101 Chesen Electronics Corp. Keyboard
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hubJak widać system wykrywa nasz programator: Bus 002 Device 004: ID 16c0:05e1 Van Ooijen Technische Informatica CDC-ACM class devices (modems)
Nastepnie sprawdzamy pod jakim portem jest on ustawiony poleceniem dmesg | grep tty
[root@tomek tomek]# dmesg | grep tty
[ 0.000000] console [tty0] enabled
[ 0.667683] 00:06: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
[ 40.074065] cdc_acm 2-8:1.0: ttyACM0: USB ACM deviceWidzimy, ze jest przypisany jako ttyACM0, a jako, że każde urządzenie w Linuxie jest "widziane" w systemie jako osobny plik w folderze /dev to wnioskujemy, ze nasz programator będzie widziany pod postacią: /dev/ttyACM0
Teraz system musi "pozwolić" na to, żeby zwykły użytkownik miał dostęp do programatora (system widzi go jako wirtualny port szeregowy, a do nich zwykły user nie ma dostępu).
Najprościej wpisać w drugim okienku konsoli zalogować się na konto roota, wpisać nazwę przeglądarki plików (w XFCE jest to Thunar) i wyszukać poprzez nią plik ttyACM0 w folderze /dev.
Teraz klikamy właściwości i w zakłądce uprawnienia pozwalamy innym użytkownikom na odczytywanie i zapisywanie.
Więc teraz programując nasz mikrokontroler musimy wpisać jego ścieżkę dostępu (/dev/ttyACM0) do polecenia.
Sprawdźmy więc czy działa - zapytajmy avrdude, jaki mikrokontroler podłączyliśmy do programatora:
avrdude -p atmega8 -c stk500v2 -P /dev/ttyACM0System widzi nasza atmegę:
Cytat:[root@tomek tomek]# avrdude -p atmega8 -c stk500v2 -P /dev/ttyACM0
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.02s
avrdude: Device signature = 0x1e9307
avrdude: safemode: Fuses OK
Więc jest wszystko ok.
Teraz ściągamy program mkAVRCalculator i otwieram go poprzez Wine, w polu port (domyślnie będzie tam wpisane USB) wpisujemy ścieżkę dostępu do naszego programatora: /dev/ttyACM0
Teraz możemy sprawdzać podłączony mikrokontroler, ustawiać fusebity i wgrywać na niego programy.
Fajne? Ranking DIY