logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Programator kompatybilny z Microchip Studio dla ATmega32

stolarzwojciech1 12 Mar 2023 20:24 1323 19
REKLAMA
  • REKLAMA
  • #2 20483391
    funak
    Poziom 27  
    Posty: 1087
    Pomógł: 101
    Ocena: 461
    Bardzo dobry programator, mam go już kilka lat :)
    https://kamami.pl/programatory-avr/232102-ata...okontrolerow-cortex-m-i-avr-firmy-atmel-.html

    Ja mam model z obudową i kabelkami :)
  • REKLAMA
  • REKLAMA
  • #6 20487450
    jarek_lnx
    Poziom 43  
    Posty: 22732
    Pomógł: 4197
    Ocena: 6123
    Asembler w dzisiejszych czasach ma niewiele sensu, były dwa powody stosowania asemblera, optymalizacja szybkości wykonywania kodu i objętości.

    Ja zaczynałem od asemblera na 8051, bo wszyscy tak robili, później jak pojawiły się AVR pisałem głównie w C czasami robiłem procedury obsługi przerwań w asemblerze. Wtedy uświadomiłem sobie że asemblera używałem do nadrabiania braków w peryferiach (i tam zależało mi na szybkości), skoro dzisiaj mogę dostać mikrokontroler z takimi peryferiami, jakich potrzebuję, dlaczego miał bym klepać jakieś softwarowe uarty i rozszerzenia timerów?
    Zdarzało mi się też wygenerować kod asemblerowy z C i ręcznie poprawić.

    Asemblerem można się pobawić żeby lepiej poznać działanie mikrokontrolera, ale jak trzeba napisać program który ma coś więcej do roboty to lepiej C.

    Książka do AVR, Arkadiusza Krysiaka była niezła, obawiam się że na temat asemblera będziesz musiał poszukać starych książek.

    W przypadku x86 jest dużo zawiłości, w czasach popularności asemblera ludzie pisali kod uruchamiany w trybie kompatybilności (rzeczywistym, 16 bitowym) pod DOSem dzisiaj czegoś takiego pewnie nawet nie uruchomisz na współczesnym OS-ie choć procesor pewnie by dał radę. Tu trzeba by znaleźć literaturę która opisuje przynajmniej pracę w trybie chronionym i wiele innych szczegółów zależnych od systemu operacyjnego, strukturę plików wykonywalnych, API, korzsytanie z bibliotek...
    Nie chciało by mi się, mimo że sam kiedyś używałem asemblera.
    EDIT: taki najprostszy program w asemblerze x86, nie jest aż tak trudno, jak mi sie zdawało:
    https://www.youtube.com/watch?v=HgEGAaYdABA
  • #8 20487575
    jarek_lnx
    Poziom 43  
    Posty: 22732
    Pomógł: 4197
    Ocena: 6123
    Atmegę 8A programuje się przez SPI, nie ma tu JTAG-a a którego piny pytasz. Rozkład pinów dla SPI jest w dokumentacji JTAG iCE.
    W pierwszym poście pisałeś o ATMEGA32 tam jest JTAG. Warto podczas pisaniu programu używać mikrokontrolerów które mają jakiś interfejs debugera, może to być JTAG, może być UPDI i jeszcze kilka innych. Czyli przykładowo pisać na ATMEGA32 a do docelowej aplikacji wrzucić do ATMEGA8A,

    Typowo do SPI daje się pinheader o takim układzie wyprowadzeń i do tego pasuje kabel od programatora
    Programator kompatybilny z Microchip Studio dla ATmega32
  • #11 20488056
    stolarzwojciech1
    Poziom 4  
    Posty: 211
    Ocena: 4
    mam taki błąd.

    avrdude warning: USB device with VID: 0x03eb and PID: 0x2141 not found
    avrdude error: no device found matching VID 0x03eb and PID list: 0x2141
    avrdude error: unable to open programmer atmelice_isp on port usb

    avrdude done. Thank you.

    Dodano po 15 [minuty]:

    Już chyba działa tylko pytanie jak się wgrywa pliki na ten mikrokontlorer? Która opcja
  • REKLAMA
  • #12 20488113
    jony
    Specjalista elektronik
    Posty: 7552
    Pomógł: 1823
    Ocena: 885
    stolarzwojciech1 napisał:

    Już chyba działa tylko pytanie jak się wgrywa pliki na ten mikrokontlorer? Która opcja

    W jakim programie?
  • #13 20488120
    stolarzwojciech1
    Poziom 4  
    Posty: 211
    Ocena: 4
    mkAVRCalkulator bo nie działa mi opcja wszytaj plik jak wybiorę zakładkę ZAPIS. i teraz mam takie błąd
    avrdude_mk.exe: Can't find programmer id "atmelice_isp"

    Zainstalowałem AVRDUDE z ustawień podałem scieżkę i wszystko się popsuło
  • #14 20489387
    stolarzwojciech1
    Poziom 4  
    Posty: 211
    Ocena: 4
    Problemy rozwiązane. WAczytywanie i odczytywanie danych działa.

    Teraz wgrałem program do atmegi8a-pu:

    taki:
    #define F_CPU 20000000 // AVR clock frequency in Hz, used by util/delay.h
    #include <avr/io.h>
    #include <util/delay.h>

    int main() {
    DDRD |= (1<<DDD1); // set LED pin PD1 to output
    while (1) {
    PORTD |= (1<<PORTD1); // drive PD1 high
    _delay_ms(100); // delay 100 ms
    PORTD &= ~(1<<PORTD1); // drive PD1 low
    _delay_ms(900); // delay 900 ms
    }
    }



    i ni działa mi dioda na porcie PC0 ktoś pomoże?
  • #15 20489741
    miszcz310
    Poziom 25  
    Posty: 718
    Pomógł: 46
    Ocena: 178
    stolarzwojciech1 napisał:
    i ni działa mi dioda na porcie PC0 ktoś pomoże?


    Może dlatego, że ten kod jest napisany dla portu D pinu 1.
  • #17 20490724
    jarek_lnx
    Poziom 43  
    Posty: 22732
    Pomógł: 4197
    Ocena: 6123
    stolarzwojciech1 napisał:
    czym kompilować bo w Atmel studio coś mi nie wychodzi?
    Co nie wychodzi? U mnie działa.
  • #18 20491409
    stolarzwojciech1
    Poziom 4  
    Posty: 211
    Ocena: 4
    Już wychodzi. Miałem problem w kodzie i nie chciało skompilować z błędem do urządzenia.

    Dodano po 4 [godziny] 57 [minuty]:

    Teraz mam inny problem.
    Po podłączeniu Atmegi8 wszytsko mi działa i mogę programować a jak podłączam Atmega328P to wywala mi błąd.

    Dodano po 14 [minuty]:

    Programator kompatybilny z Microchip Studio dla ATmega32

Podsumowanie tematu

LABEL_AI_GENERATED
Użytkownik poszukiwał programatora kompatybilnego z Microchip Studio dla mikrokontrolera ATmega32. W dyskusji polecono programator Atmel ICE, jednak użytkownik szukał tańszej alternatywy. Pojawiły się pytania dotyczące podłączenia programatora do ATmega8A-PU oraz problemów z programowaniem, w tym błędów związanych z identyfikacją urządzenia przez AVRDUDE. Użytkownik z powodzeniem wgrał program do ATmega8A-PU, ale napotkał trudności z ATmega328P. Wskazówki dotyczące podłączenia pinów oraz rozwiązywania problemów z programowaniem były również omawiane.
Podsumowanie AI na podstawie dyskusji. Może zawierać błędy.
REKLAMA