eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaOptymalizacja w WinAVR i kod programu › Re: Optymalizacja w WinAVR i kod programu
  • Path: news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!not
    -for-mail
    From: "TomZor" <t...@p...onet.pl>
    Newsgroups: pl.misc.elektronika
    Subject: Re: Optymalizacja w WinAVR i kod programu
    Date: Sun, 20 Jun 2010 10:34:03 +0200
    Organization: http://onet.pl
    Lines: 85
    Message-ID: <hvqvpa$nrm$1@news.onet.pl>
    References: <hvaa6o$v3m$1@news.onet.pl> <4c18bbc8$0$17086$65785112@news.neostrada.pl>
    <4c1c8b00$0$17099$65785112@news.neostrada.pl>
    NNTP-Posting-Host: dyl134.neoplus.adsl.tpnet.pl
    Mime-Version: 1.0
    Content-Type: text/plain; format=flowed; charset="iso-8859-2"; reply-type=response
    Content-Transfer-Encoding: 8bit
    X-Trace: news.onet.pl 1277231722 24438 83.22.123.134 (22 Jun 2010 18:35:22 GMT)
    X-Complaints-To: n...@o...pl
    NNTP-Posting-Date: Tue, 22 Jun 2010 18:35:22 +0000 (UTC)
    In-Reply-To: <4c1c8b00$0$17099$65785112@news.neostrada.pl>
    X-Priority: 3
    X-MSMail-Priority: Normal
    X-Newsreader: Microsoft Windows Mail 6.0.6002.18197
    X-MimeOLE: Produced By Microsoft MimeOLE V6.0.6002.18197
    X-EsetScannerBuild: 7339
    X-EsetId: 985BCE2927F87069875DCE7D2FA93C
    Xref: news-archive.icm.edu.pl pl.misc.elektronika:590776
    [ ukryj nagłówki ]

    oto te delaye

    #define n_hp 20 // 40 // fosc = 8Mhz
    #define n_qp 10// 20


    void delay_hp(void) //hp - half i2c clock period delay
    normal: 5.0us
    {
    unsigned char time= 1+ (n_hp-7)/3;
    while(time--);
    }

    void delay_qp(void) //qp - quarter i2c clock period delay
    normal: 2.5us
    {
    unsigned char time= 1+ (n_qp-7)/3;
    while(time--);
    }

    Chodi o to ze program do obslugi i2c przy optymalizacji -00, 01 poprawnie
    kompiluje się, nie ma żadnych problemów z działaniem i2c.
    Natomiast przy pozostałych optymalizacjach juz odczyt zegarka po i2c a
    dokładnie DS1307 nie działa, więc może i mam źle coś napisane, ale skoro
    działa przy - 00 i 01 to tak do końca nie jest spaprane.
    ".....optimize("......." nie działa w WinAVR, szkoda, ale zobacze co
    jeszcze co kompilator wywala przzy różnych opcjach otymalizacji, bo może to
    nie wina procedur i2c ale gdzieś indziej...zobaczymy.




    Użytkownik "T.M.F." <t...@n...mp.pl> napisał w wiadomości
    news:4c1c8b00$0$17099$65785112@news.neostrada.pl...
    >>> WinAVR optymalizuje kod wynikowy za pomoca przelacznika -00,01,02,0s
    >>> jak zrobić aby dany kawałek programu źródłowego (w C) nie był
    >>> optymalizowany np (to tylko przykład)
    >>
    >> Trzeba dodać atrybut optimize do funkcji, która ma mieć inny poziom
    >> optymalizacji.
    >>
    >> void my_function(void) __attribute__((optimize("O1")))
    >> {
    >> [...]
    >> }
    >
    > Wszystko pieknie, zapomniales tylko napisac, ze tego atrybutu nie ma w gcc
    > 4.3.x, ktory jest w WinAVR.
    > A jesli Os cos knoci to znaczy, ze program jest do bani, a co jest do bani
    > to juz napisales.
    >
    >
    > --
    > Inteligentny dom - http://idom.wizzard.one.pl
    > http://idom.sourceforge.net/
    > Teraz takze forum dyskusyjne
    > Zobacz, wyslij uwagi, dolacz do projektu.
    >
    > __________ Informacja programu ESET NOD32 Antivirus, wersja bazy sygnatur
    > wirusow 5210 (20100619) __________
    >
    > Wiadomosc zostala sprawdzona przez program ESET NOD32 Antivirus.
    >
    > http://www.eset.pl lub http://www.eset.com
    >
    >


    __________ Informacja programu ESET NOD32 Antivirus, wersja bazy sygnatur wirusow
    5210 (20100619) __________

    Wiadomosc zostala sprawdzona przez program ESET NOD32 Antivirus.

    http://www.eset.pl lub http://www.eset.com




    __________ Informacja programu ESET NOD32 Antivirus, wersja bazy sygnatur wirusow
    5217 (20100622) __________

    Wiadomosc zostala sprawdzona przez program ESET NOD32 Antivirus.

    http://www.eset.pl lub http://www.eset.com



Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

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: