eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaAVR32 - jak ruszyc z tym prockiem
Ilość wypowiedzi w tym wątku: 39

  • 11. Data: 2009-11-09 04:51:19
    Temat: Re: AVR32 - jak ruszyc z tym prockiem
    Od: SM <b...@k...com.pl>

    > Ale coś się tak uczepił asemblera.

    Bo dla mnie ważna jest szybkość procka.
    W ASMie sam mogę dobrać sobie każdą instrukcję, najbardziej
    optymalną, nie ma zbędnych "dodatków" jakie generuje kompilator.
    Żaden kompilator języka wysokiego poziomu nie da tak
    wydajnego kodu jak pisanie samemu w ASMie.

    > Istnieje przecież na świecie
    > kompilator gcc - czyli bez dodatkowych wydatków można pisać programy w
    > C. To nie PIC w końcu. No a program napisany w C/C++ zawsze w
    > przyszłości będziesz mógł łatwo przenieść np. na bardziej wydajną
    > platformę.

    Osiągi jakie ma AVR32 idealnie mi pasują. Do tej pory robiłem na
    ARMach Atmela, Philipsa, Analoga i brakowało mi wielu rzeczy jakie
    ma AVR32 (np. sprzętowego szybkiego dzielenia).
    Spośród procków mających kilkadziesiąt MIPSów i będących w cenie
    AVR32, to te wypadają najlepiej.

    > Po co zawracać sobie głowę asemblerem właściwie (tzn. znać
    > warto aby rozumieć, co wyprodukował kompilator - ale nie warto pisać
    > samemu w asm).

    Przy dużych projektach robię tak, że procedurki pisze w ASMie
    (przede wszystkim przerwania) a potem łącze to w logiczną całość
    w C. Wtedy mam idealne jak dla mnie rozwiązanie - w miarę szybkie
    (dzięki ASM) a jednocześnie logicznie przejrzyste działanie programu
    jakie daje język wysokiego poziomu.

    Fajne były ARMy Atmela SAM7S ale okazało się że mają problemy
    ze startem przy zbyt wolnym narastaniu napięcia zasilającego.
    Po prostu nie startował. Zależało mi na procku który ma
    zewnętrzny reset, abym mógł mocno filtrowac napięcie zasilania
    (układ pracuje w mocno zakłóconym środowisku), i puścić go
    kiedy będzie już można do tego sprzętowe dzielenie. SAM7S tego
    nie miały.

    SM



  • 12. Data: 2009-11-09 18:16:08
    Temat: Re: AVR32 - jak ruszyc z tym prockiem
    Od: cepu69 <c...@t...pl>

    SM wrote:

    > Ja nie chcę używać żadnych gotowych OS-ów. Chce mieć tylko i
    > wyłącznie swój soft w ASMie żeby wycisnąć z procka ile się da.
    Jedno bynajmniej nie wyklucza drugiego.
    Apropo OS'a:
    Typow implementacja watkow we wlasnym, wycisnietym sofcie ->
    Odpytywanie non-stop wszystkich pocedurek czy czasem ktoras nie ma czegos do
    zrobienia - jakiez to szybkie i wydajne;)
    Wszak przeciez scheduler to diabel wcielony, ktory zzera nasze cene zasoby a
    nasza "petla glowna" nie.

    > >> Ale coś się tak uczepił asemblera.
    >
    > Bo dla mnie ważna jest szybkość procka.
    > W ASMie sam mogę dobrać sobie każdą instrukcję, najbardziej
    > optymalną, nie ma zbędnych "dodatków" jakie generuje kompilator.
    > Żaden kompilator języka wysokiego poziomu nie da tak
    > wydajnego kodu jak pisanie samemu w ASMie.
    Taaaa. Moze pora "wlaczyc" optymalizacje w kompilatorze ;)


  • 13. Data: 2009-11-09 22:04:13
    Temat: Re: AVR32 - jak ruszyc z tym prockiem
    Od: Jerry1111 <j...@w...pl.pl.wp>

    SM wrote:
    >> Ale coś się tak uczepił asemblera.
    >
    > Bo dla mnie ważna jest szybkość procka.
    > W ASMie sam mogę dobrać sobie każdą instrukcję, najbardziej
    > optymalną, nie ma zbędnych "dodatków" jakie generuje kompilator.
    > Żaden kompilator języka wysokiego poziomu nie da tak
    > wydajnego kodu jak pisanie samemu w ASMie.

    Poeksperymentuj - gcc czesto jest 'dosc' pomyslowy. Mi sie juz od kilku
    lat nie kalkuluje czasowo pisanie w ASM. Jedynie krytyczne czasowo
    przerwania pisze w ASM (a i to staram sie to ograniczyc do wrzucenia
    danej do kolejki do dalszego przetwarzania w C).

    > Fajne były ARMy Atmela SAM7S ale okazało się że mają problemy
    > ze startem przy zbyt wolnym narastaniu napięcia zasilającego.
    > Po prostu nie startował.

    AVR32 (na pewno UC3A0512) ma to samo - jak za wolno napiecie narasta to
    procek sie zatrzaskuje i grzeje, wiec uwazaj. W pdfie nigdzie o tym nie
    znalazlem.


    --
    Jerry1111


  • 14. Data: 2009-11-09 22:53:33
    Temat: Re: AVR32 - jak ruszyc z tym prockiem
    Od: Adam Dybkowski <a...@4...pl>

    SM pisze:

    >> Ale coś się tak uczepił asemblera.
    >
    > Bo dla mnie ważna jest szybkość procka.
    > W ASMie sam mogę dobrać sobie każdą instrukcję, najbardziej
    > optymalną, nie ma zbędnych "dodatków" jakie generuje kompilator.
    > Żaden kompilator języka wysokiego poziomu nie da tak
    > wydajnego kodu jak pisanie samemu w ASMie.

    No to pościgaj się z gcc. Duet kompilator+optymalizator potrafi czasami
    tak wymyślić sekwencję instrukcji, dodatkowo ze zmienioną kolejnością,
    że w ASM musiałbyś długo siedzieć i kombinować, czy W OGÓLE da się to
    napisać jeszcze optymalniej. A biorąc pod uwagę czas zużyty na pisanie
    programu (czyli kasa w firmie na to wydana) - to ASM jest kompletnie
    nieopłacalny. Dolicz jeszcze czas usuwania błędów z tysięcy linii kodu w
    asemblerze, brrrr.

    --
    Adam Dybkowski
    http://dybkowski.net/

    Uwaga: przed wysłaniem do mnie maila usuń cyfry z adresu.


  • 15. Data: 2009-11-10 05:20:10
    Temat: Re: AVR32 - jak ruszyc z tym prockiem
    Od: SM <b...@k...com.pl>

    > ...No to pościgaj się z gcc. Duet kompilator+optymalizator potrafi czasami
    > tak wymyślić sekwencję instrukcji, dodatkowo ze zmienioną kolejnością,
    > że w ASM musiałbyś długo siedzieć i kombinować, czy W OGÓLE da się to
    > napisać jeszcze optymalniej.

    No to może trochę się nim pobawie. Tak z ciekawości zobaczę jaki kod
    mu wyjdzie z włączona na maksa optymalizacją. Tym bardziej że muszę
    napisać sobie obsługę USB-CDC w ASMie. Raz już pisałem dla
    SAM7S, teraz muszę ją przepisać na AVR32. Zobacze jak to wyjdzie w ASM
    i GCC.

    >... A biorąc pod uwagę czas zużyty na pisanie
    > programu (czyli kasa w firmie na to wydana) - to ASM jest kompletnie
    > nieopłacalny. Dolicz jeszcze czas usuwania błędów z tysięcy linii kodu w
    > asemblerze, brrrr.
    >

    Mam taką metodę pisania programów że błędy raczej mi się nie zdarzają,
    więc ASM to nie problem.

    SM


  • 16. Data: 2009-11-10 05:22:35
    Temat: Re: AVR32 - jak ruszyc z tym prockiem
    Od: SM <b...@k...com.pl>

    > AVR32 (na pewno UC3A0512) ma to samo - jak za wolno napiecie narasta to
    > procek sie zatrzaskuje i grzeje, wiec uwazaj. W pdfie nigdzie o tym nie
    > znalazlem.

    Nieee. Tylko nie to! A czy pomaga zewnętrzny reset? Zewnętrzny układ
    który trzyma reset procka, zamiast jego wewnętrznego brownout.
    Może tylko jego wewnętrzny układ kontroli napięcia działa niepoprawnie?
    Może na zewnętrznym resecie będzie OK?

    Ale byłby numer jakby znów wpakował się w atmela co zastartować
    nie potrafi. Zaraz zrobię testy.

    SM


  • 17. Data: 2009-11-10 05:28:58
    Temat: Re: AVR32 - jak ruszyc z tym prockiem
    Od: SM <b...@k...com.pl>

    > Typow implementacja watkow we wlasnym, wycisnietym sofcie ->
    > Odpytywanie non-stop wszystkich pocedurek czy czasem ktoras nie ma czegos do
    > zrobienia - jakiez to szybkie i wydajne;)
    > Wszak przeciez scheduler to diabel wcielony, ktory zzera nasze cene zasoby a
    > nasza "petla glowna" nie.

    Zawsze będzie wolniej. Nawet pomijając osługę zdarzeń, semaforów,
    mutexów, czyli robiąc w przerwaniu tylko obsługę przełączania wątków,
    to sama ta obsługa przełączania zajmuje czas. Trzeba do kontekstu
    zapisać stan bierzącego wątku i odtworzyć stan kolejnego
    wątku z tablicy.
    Tym bardziej że ja potrzebuję akurat w przerwaniu wywoływanym
    z częstotliwością kilkuset herzów liczyć trajektorię dla
    4 osi silników wraz z zachowaniem trapezowego profilu prędkości.

    SM


  • 18. Data: 2009-11-10 05:36:29
    Temat: Re: AVR32 - jak ruszyc z tym prockiem
    Od: SM <b...@k...com.pl>

    SM pisze:
    >> AVR32 (na pewno UC3A0512) ma to samo - jak za wolno napiecie narasta
    >> to procek sie zatrzaskuje i grzeje, wiec uwazaj. W pdfie nigdzie o tym
    >> nie znalazlem.
    >
    > Nieee. Tylko nie to! A czy pomaga zewnętrzny reset? Zewnętrzny układ
    > który trzyma reset procka, zamiast jego wewnętrznego brownout.
    > Może tylko jego wewnętrzny układ kontroli napięcia działa niepoprawnie?
    > Może na zewnętrznym resecie będzie OK?
    >
    > Ale byłby numer jakby znów wpakował się w atmela co zastartować
    > nie potrafi. Zaraz zrobię testy.
    >
    > SM

    Zrobiłem szybki test. Bardzo wolno podawałem na LDO (obniża napięcie
    z 5V do 3,3V dla procka) napięcie od 0 to 5V. Procek zastartował
    poprawnie. Oczywiście ostateczne potwierdzenie wyjdzie dopiero
    w kompletnym docelowym układzie - główne zasilanie odkłócone
    przez filtr LC, podpięte do procka pozostałe elementy (np. mały
    CPLD). Może być tak że coś "zbiera" przez zabezpieczenia przepięciowe
    wejść i podaje to sobie gdzieś wewnątrz na zasilanie i głupieje
    bo brownout czy reset tego nie widzi. Każda nóżka dostaje różne
    napięcia w różnym czasie. Niektóre te same 3V3 które ma procek
    na VCCIO, inne 5V (np. z CPLD) które przecież narasta inaczej niż
    to co on widzi na 3V3 czy resecie.

    SM


  • 19. Data: 2009-11-10 08:37:50
    Temat: Re: AVR32 - jak ruszyc z tym prockiem
    Od: shg <s...@g...com>

    On 10 Lis, 06:36, SM <b...@k...com.pl> wrote:
    > Oczywiście ostateczne potwierdzenie wyjdzie dopiero
    > w kompletnym docelowym układzie - główne zasilanie odkłócone
    > przez filtr LC, podpięte do procka pozostałe elementy (np. mały
    > CPLD).

    LC na zasilaniu? Oczywiście sprawdziłeś, jak się ten filtr zachowuje
    (co pojawia się na jego wyjściu) w stanach przejściowych, zwłaszcza
    przy włączaniu zasilania i nagłych skokach obciążenia?


  • 20. Data: 2009-11-10 08:50:04
    Temat: Re: AVR32 - jak ruszyc z tym prockiem
    Od: SM <b...@k...com.pl>

    shg pisze:
    > On 10 Lis, 06:36, SM <b...@k...com.pl> wrote:
    >> Oczywiście ostateczne potwierdzenie wyjdzie dopiero
    >> w kompletnym docelowym układzie - główne zasilanie odkłócone
    >> przez filtr LC, podpięte do procka pozostałe elementy (np. mały
    >> CPLD).
    >
    > LC na zasilaniu? Oczywiście sprawdziłeś, jak się ten filtr zachowuje
    > (co pojawia się na jego wyjściu) w stanach przejściowych, zwłaszcza
    > przy włączaniu zasilania i nagłych skokach obciążenia?

    Tak. Bardzo ładnie wszystko filtruje. Miałem problemy w mocno
    zakłóconym środowisku, zakłócenia na zasilaniu, itp. Teraz
    jest OK.

    SM

strony : 1 . [ 2 ] . 3 . 4


Szukaj w grupach

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: