-
Path: news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!new
sfeed.neostrada.pl!atlantis.news.neostrada.pl!news.neostrada.pl!not-for-mail
From: Grzegorz Kurczyk <g...@c...slupsk.pl>
Newsgroups: pl.misc.elektronika
Subject: Re: Problem lekko OT, ale w WinAVR ;-)
Date: Sat, 13 Jun 2009 12:31:18 +0200
Organization: TP - http://www.tp.pl/
Lines: 27
Message-ID: <h0vvnn$q5t$1@nemesis.news.neostrada.pl>
References: <h0qku7$a6o$1@atlantis.news.neostrada.pl>
<h0ud45$219$1@atlantis.news.neostrada.pl> <h0udur$2j2d$1@news.mm.pl>
<h0v0bq$jmg$1@nemesis.news.neostrada.pl>
<h0vhtr$i32$1@atlantis.news.neostrada.pl>
<h0voto$eke$1@nemesis.news.neostrada.pl>
NNTP-Posting-Host: control.slupsk.pl
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-2; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: nemesis.news.neostrada.pl 1244889655 26813 80.52.170.66 (13 Jun 2009
10:40:55 GMT)
X-Complaints-To: u...@n...neostrada.pl
NNTP-Posting-Date: Sat, 13 Jun 2009 10:40:55 +0000 (UTC)
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; PL; rv:1.8.1.21) Gecko/20090403
SeaMonkey/1.1.16
In-Reply-To: <h0voto$eke$1@nemesis.news.neostrada.pl>
X-Antivirus: avast! (VPS 090612-0, 2009-06-12), Outbound message
X-Antivirus-Status: Clean
Xref: news-archive.icm.edu.pl pl.misc.elektronika:565328
[ ukryj nagłówki ]Użytkownik T.M.F. napisał:
> Skad masz makra sei() i cli()? To twoja wlasna definicja czy z
> biblioteki avr-glibc - pliku interrupts.h?
> Zakladam, ze twoja wlasna, stad problemy. Oryginalna prawidlowa
> definicja wyglada tak:
> #define sei() __asm__ __volatile__ ("sei" ::)
Niestety oryginalne z interrupt.h i są one tam zdefiniowane dokładnie
tak jak Kolega napisał.
> Zwroc uwage na slowo volatile. Swoja droga przeczytaj jak volatile
> dziala to rozwiaze sie wiele twoich dziwnych klopotow.
W dużym uproszczeniu ogranicza kompilatorowi możliwości optymalizacji. W
stosunku do zmiennej wymusza bezwarunkowe każdorazowe czytanie aktualnej
wartości zmiennej z pamięci przed wykonaniem jakichkolwiek operacji na
zmiennej. Czyli kompilatorowi nie wolno dla uproszczenia/przyśpieszenia
kodu banglać przez cała procedurę na wartości skopiowanej do rejestrów.
Inaczej mówiąc zmienna ma być tak traktowana jakby jej zawartość mogła
się w każdej chwili zmienić (np. przez inny wątek programu). W
kontekście powyższego (chyba, że jest jednak inna definicja volatile)
nadal nie mogę zrozumieć z jakiej paki rozkaz sei() umieszczony na końcu
funkcji znalazł się nagle na jej początku.
Pozdrawiam
Grzegorz
Następne wpisy z tego wątku
- 13.06.09 10:34 Grzegorz Kurczyk
- 13.06.09 10:35 J.F.
- 13.06.09 11:01 Grzegorz Kurczyk
- 13.06.09 11:24 J.F.
- 13.06.09 11:37 Grzegorz Kurczyk
- 13.06.09 17:48 T.M.F.
- 13.06.09 12:17 Grzegorz Kurczyk
- 13.06.09 13:09 J.F.
- 13.06.09 22:49 Grzegorz Kurczyk
- 14.06.09 14:51 T.M.F.
- 14.06.09 09:34 Zbych
- 14.06.09 10:23 Grzegorz Kurczyk
- 14.06.09 10:46 Grzegorz Kurczyk
- 14.06.09 18:20 T.M.F.
- 14.06.09 18:23 T.M.F.
Najnowsze wątki z tej grupy
- Prośba o identyfikację komponentu
- Smart gniazdko straciło na zasięgu wifi?
- Smart gniazdko straciło zasięg wifi?
- nurtuje mnie
- dziwna sprawa...
- Laptop MSI się nie uruchamia.
- Dobra listwa LED (CRI 90-95, bez migotania)
- masowe programowanie AVR
- Fajny pomysł na monitor z klawiaturą
- Sprzedawanie zaszyfrowanych filmów na płytach Blu-Ray bez kluczy deszyfrujących
- Aparat, zewnętrzny mikrofon, brum
- Wieszanie się przy aktywnym SMP
- Prognozowanie zużycia energii przez PGE?
- Odkurzacz mnie bije :(
- Rapsberry Pi i synchronizacja plików
Najnowsze wątki
- 2024-10-18 Marsz niepodleglosci
- 2024-10-18 Pożar parkingu w Luton
- 2024-10-18 Łódź => Spedytor Międzynarodowy <=
- 2024-10-18 Gdańsk => Technical Lead ( (Java Background)) <=
- 2024-10-18 Warszawa => Head of International Freight Forwarding Department <=
- 2024-10-18 uwazajmy na haczyki w umowach
- 2024-10-18 Warszawa => Account Manager - Usługi rekrutacyjne <=
- 2024-10-18 Białystok => Full Stack web developer (obszar .Net Core, Angular6+) <
- 2024-10-18 Gdańsk => Software .Net Developer <=
- 2024-10-18 Warszawa => Junior Rekruter <=
- 2024-10-18 Warszawa => Key Account Manager <=
- 2024-10-18 Przeróbka na zgrzewarkę "równoległą"
- 2024-10-18 Ostrów Wielkopolski => Laravel PHP Developer <=
- 2024-10-18 Warszawa => Data Scientist / Data Engineer (modele predykcyjne) <=
- 2024-10-18 doładowania 5zł