bobofrut
Guest
Mon Aug 23, 2010 12:46 pm
Witam wszystkich,
Pytanie jak w tytule, mam procesorek z rodziny AVR i procedurę
napisaną w C. W jaki sposób można policzyć jak długo wykonuje się
procedura? Dodam tylko, ze AVR Simulator w AVR Studio ma możliwość
sprawdzenia ile cykli zegarowych potrzebuje procedura (i o to mi
chodzi), z tym że w przypadku np. konwersji ADC jest bezużyteczna bo
np. w jaki sposób przeskoczyć tego typu linie: while(!(ADCSRA &
(1<<ADIF))); w owym symulatorze.
Z góry dziękuje za wszelkie odpowiedzi.
Dykus
Guest
Mon Aug 23, 2010 12:46 pm
Witam,
W dniu 2010-08-23 12:46, bobofrut pisze:
Quote:
z tym że w przypadku np. konwersji ADC jest bezużyteczna bo
np. w jaki sposób przeskoczyć tego typu linie: while(!(ADCSRA&
(1<<ADIF))); w owym symulatorze.
Nie wiem na ile symulator radzi sobie z przetwornikiem ADC, ale w
dokumentacji jest dokładnie opisane ile cykli zajmuje przetwarzanie
(pierwsze i kolejne), więc zawsze możesz wstawić NOPy, a jeśli dalsze
przetwarzanie zależne jest od wyniku, to można wstawić BreakPointy i
zmieniać wartości zmiennych... to tak mi przyszło na szybko do głowy.
Wszystko zależy jak bardzo skomplikowany masz problem...
--
Pozdrawiam,
Dykus.
EM
Guest
Mon Aug 23, 2010 4:42 pm
Dykus pisze:
Quote:
Witam,
W dniu 2010-08-23 12:46, bobofrut pisze:
z tym że w przypadku np. konwersji ADC jest bezużyteczna bo
np. w jaki sposób przeskoczyć tego typu linie: while(!(ADCSRA&
(1<<ADIF))); w owym symulatorze.
Nie wiem na ile symulator radzi sobie z przetwornikiem ADC, ale w
dokumentacji jest dokładnie opisane ile cykli zajmuje przetwarzanie
(pierwsze i kolejne), więc zawsze możesz wstawić NOPy, a jeśli dalsze
przetwarzanie zależne jest od wyniku, to można wstawić BreakPointy i
zmieniać wartości zmiennych... to tak mi przyszło na szybko do głowy.
Wszystko zależy jak bardzo skomplikowany masz problem...
AVRSTUDIO radzi sobie z takim przypadkiem. W moim przykładzie wyszło
208us na konwersję.
Zakładasz pułapkę tam gdzie zaczynasz konwersję i po tym while, gdy
kończysz, zapodajesz RUN i już wiesz wszystko...
Pozdr
EM