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

Konfiguracja symulatora programowego w AVR Studio – jak uruchomić i uniknąć błędów?

satanistik 11 Maj 2007 21:05 4231 11
REKLAMA
  • #1 3874595
    satanistik
    Poziom 27  
    Posty: 1938
    Pomógł: 61
    Ocena: 762
    jak skonfigurować avr studio tak aby symulacja była programowa
    Czego bym nie wybrał wywala ze symulator jest nie podłączony albo w ogóle się zawiesza.
    Czy jest do tego jakaś polska pomoc?
    Nigdy jeszcze nie korzystałem z tego środowiska i nie mogę się połapać.
  • REKLAMA
  • #2 3874763
    kris_gor
    Poziom 17  
    Posty: 240
    Pomógł: 14
    Ocena: 9
    satanistik napisał:
    jak skonfigurować avr studio tak aby symulacja była programowa
    Czego bym nie wybrał wywala ze symulator jest nie podłączony albo w ogóle się zawiesza.
    Czy jest do tego jakaś polska pomoc?
    Nigdy jeszcze nie korzystałem z tego środowiska i nie mogę się połapać.


    Jak zakładasz nowy projekt to w trakcie tego procesu na kolejnym którymś etapie masz do wyboru z czego chcesz korzystać. W tej chwili masz pewnie jakiegoś JTAG'a wybranego i dlatego się wywala.
  • REKLAMA
  • #3 3875186
    satanistik
    Poziom 27  
    Posty: 1938
    Pomógł: 61
    Ocena: 762
    Nie znaleznie od tego co wybiorę jest:
    program wykonał nieprawidłową operacje i nastąpiło jego zamknięcie.
    czy może to być wina systemu win98
    używam programu avrstudio 4
    bład nie pojawia się od razu ale dopiero gdy niebieski pasek postępu doidze do końca.
    Co może być tego przyczyna?
  • REKLAMA
  • #4 3875565
    GienekS
    Poziom 32  
    Posty: 1971
    Pomógł: 139
    Ocena: 15
    A to chyba jest wina systemu w twoim komputerze. U mnie AvrStudio dziala poprawnie i na Win98 i na XP
  • REKLAMA
  • #5 4038058
    shootky
    Poziom 15  
    Posty: 131
    Pomógł: 11
    Ocena: 20
    Witam
    Jak sobie poradziłeś z tym problemem? Mam tak samo, przy dojściu niebieskiego paska do końca AVR studio się "wysypuje".
  • #6 4038137
    Alchemik84
    Poziom 14  
    Posty: 100
    Pomógł: 8
    Ocena: 2
    Problem był już poruszany, wina leży w różnych wersjach WinAvr i AvrStudio. Ja mam wersje 4.12 AvrStudio i WinAvr z 2006 roku i wszystko działa, bo z tym nowym miałem właśnie takie problemy jak opisywane wyżej.
  • #7 4038223
    shootky
    Poziom 15  
    Posty: 131
    Pomógł: 11
    Ocena: 20
    Dziękuję, działa!
    AVR Studio 4.12 build 498
    WinAVR 20060421
    Problem jak ręką odjął.
  • #8 4219486
    dex
    Poziom 27  
    Posty: 1299
    Pomógł: 40
    Ocena: 100
    Mam pytania. Symuluje przerwanie INT0 w AVRStudio.

    1. Czy symulator jest taki mądry że rozrózni ręczną zmianie (ptaszkiem) stanu na PORTD.2 i sam automatycznie włączy flage żadania przerwania INT0 - mi wychodzi że trzeba to zrobić ręcznie bepośrednio klikając ptaszkiem flage INT0 w GIFR.

    2. Jesli jeden będzie na tak, to czy wychwyci, rodzaj zbocza? Na podstawie histori stanów na PORTD.2 - wychodzi mi że nie przez 1).

    3. Czy 'zaptaszkować' coś efektywnie w locie można tylko podczas podczas pracy auto-step? no i krokowej.
  • #9 4220105
    Arczi_89
    Poziom 12  
    Posty: 17
    Pomógł: 1
    Cytat:
    1. Czy symulator jest taki mądry że rozrózni ręczną zmianie (ptaszkiem) stanu na PORTD.2 i sam automatycznie włączy flage żadania przerwania INT0 - mi wychodzi że trzeba to zrobić ręcznie bepośrednio klikając ptaszkiem flage INT0 w GIFR.


    z tego co sprawdzałem tylko w rejestrze EIFR (nazwa zależna od procka) da się wywołać przerwanie

    Cytat:

    2. Jesli jeden będzie na tak, to czy wychwyci, rodzaj zbocza? Na podstawie histori stanów na PORTD.2 - wychodzi mi że nie przez 1).


    zgadzam się z tobą

    Cytat:
    3. Czy 'zaptaszkować' coś efektywnie w locie można tylko podczas podczas pracy auto-step? no i krokowej.


    tylko na chwilowym postoju procka da się zmienić stan rejestrów funkcyjnych(tak samo jest na JTAG Debugerze)
  • #10 4220109
    dex
    Poziom 27  
    Posty: 1299
    Pomógł: 40
    Ocena: 100
    No własnie tak mi na 'autostep' raz wchodziło a raz nie. Dzięki za utwierdzenie - chyba za dużo wymagałem od programu.

    A czy na JTAG-u nie mógłbym po prostu zadawać stan logiczny na wyprowadzeniu (fizycznie). Czy na JTAGu pętla opóźniająca np o sekunde wykonuje się rzeczywiście w sekunde?


    ----
    Nie rozumiem z czego wynika takie coś. Obsługa przerwania zostaje wykonana gdy zaptaszkuje flage przerwania INT0 (ptaszek to przeciez poziom wysoki) natomiast w dokumentacji piszą że przerwanie można wyzerowac kasująć flage INT) wpisując na nią "1" . Jakiś bezsens z czego to wynika???
  • #11 4220748
    GaPaTech
    Poziom 12  
    Posty: 18
    Pomógł: 2
    Ocena: 3
    Trochę to mylące ale tak jest. SFR to nie prosta komórka pamięci. To co tam wyczytasz i jak zareaguje sprzęt na zapis czegoś to zależy jak "Jego Atmelność" zbudował całą logikę. A chyba najlepszym tego przykładem jest odczyt i zapis UDR - ten sam adres ale 2 rejestry: seregowo-równoległy i równoległo-szeregowy.
    P.
  • #12 4220922
    Arczi_89
    Poziom 12  
    Posty: 17
    Pomógł: 1
    Cytat:
    A czy na JTAG-u nie mógłbym po prostu zadawać stan logiczny na wyprowadzeniu (fizycznie).


    Hmm na JTAGU możesz badać stan rzeczywisty procka ale nie możesz co poniektórych zmienić (np: PINx jest rejestrem statusowym i nie możemy go zmienić bo on w nastepnym takcie odczyta swój stan na nowo )
    do reszty mamy dostęp. Na pewno jest łatwiej debugować w układzie. Symulator dużo odbiega od rzeczywistości.

    co do czasu jeżeli uruchamiasz program krok po kroku to nie otrzymasz sekundy aczkolwiek włączając go w trybie normalnym (F5) będzie zsynchronizowany i układ czasu rzeczywistego zadziała
    pozdrawiam

Podsumowanie tematu

✨ Dyskusja dotyczy problemów z konfiguracją symulatora programowego w AVR Studio 4, szczególnie uruchomienia symulacji bez błędów. Główną przyczyną błędów i zawieszania programu jest nieprawidłowy wybór interfejsu debugowania (np. JTAG zamiast symulatora programowego) podczas tworzenia projektu. Problemy z awariami pojawiają się także w związku z niekompatybilnością wersji AVR Studio i WinAVR oraz systemem operacyjnym Windows 98, choć nie jest to regułą. Zalecane jest używanie AVR Studio 4.12 build 498 wraz z WinAVR z 2006 roku, co eliminuje większość problemów. W zakresie symulacji przerwań INT0 w symulatorze programowym, symulator nie automatycznie wykrywa zmian stanu na pinie i nie ustawia flagi przerwania – wymaga to ręcznej interwencji. Symulacja przerwań i zmiana rejestrów funkcyjnych jest możliwa tylko podczas zatrzymania symulacji (auto-step lub krokowej). W symulatorze programowym nie można w pełni odwzorować zachowania sprzętowego, np. niektóre rejestry statusowe (PINx) są odczytywane na nowo w każdym cyklu i nie można ich zmienić ręcznie. Debugowanie na rzeczywistym układzie przez JTAG pozwala na bardziej realistyczne testy, w tym pomiar czasu rzeczywistego, którego symulator nie odwzorowuje dokładnie podczas krokowania.
Podsumowanie wygenerowane przez AI na podstawie treści dyskusji.
REKLAMA