AVR-GCC a pointer na funkci

Miroslav Sinko sinkomiro@rocketmail.com
Středa Leden 2 10:37:30 CET 2008


--- Petr Tomasek <tomasek@etf.cuni.cz> wrote:

> To porad neresi ten problem, ze avr-gcc v kteresi ze sve 4.x verze
> je buggy natolik, ze pri "optimalizaci" se vykasle na klicove
> slovo "volatile". Me to napr. kod ve tvaru:
> 
>    PORTx|=(1<<Pxy);
>    // neco mezi tim
>    PORTx&=~(1<<Pxy);
> 
> "zoptimalizovalo" tak, ze prvni zapis na PORTx uplne vyhodilo! :(

O tomto sa natahovat nebudem :-) 
Mam teraz najnovsie GCC 4.2.2 z balika WinAVR-20071221, predtym som mal
GCC 4.2.1 z WinAVR-20070525 a predtym este o jedno starsiu verziu.
Vsetky problemy, sa nakoniec nasli medzi klavesnicou a stolickou.
Podobne ako aktualny "volatile void".

Teraz na GCC 4.2.2 som skusil
 
PORTB=0;
//nieco, co nemeni PORTB
PORTB=0;

Prelozilo to OK, oba nastavenia su v asm

miro



      ____________________________________________________________________________________
Never miss a thing.  Make Yahoo your home page. 
http://www.yahoo.com/r/hs



Další informace o konferenci Hw-list