-
Data: 2013-03-11 16:43:23
Temat: Re: Fast PWM - trójkąt zamiast sinusa na wyjściu
Od: Michal Schulz <m...@t...de> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Am 20.02.13 18:20, schrieb Atlantis:
>> volatile i const w jednym miejscu znaczy zazwyczaj "kompilatorze, zepsuj
>> mi tu optymalizacje".
>
> Kierowałem się analogią do wyczytanej kiedyś zasady, że wszystkie
> zmienne globalne używane w przerwaniach powinny mieć "volatile" przy
> definicji.
Marna to zasada bo zbytnio uogolnia.
>> Póki masz miejsce we flash to takie rzeczy powinieneś pakować w progmem.
>
> Jak rozumiem masz na myśli użycie avr/pgmspace.h i zdefiniowanie tablicy
> przez:
>
> prog_char sinus_buffer[] = {wartość 1, wartość 2, .., wartość n};
>
> oraz odczyt przez:
>
> pgm_read_byte(&sinus_buffer[sinus_ind])
Dokladnie o to chodzilo. Trzymanie tablicy ze stalymi w RAM to
marnotrastwo pamieci ktorej Atmel ma dosc malo. Tak samo jak trzymanie
tam np. wszelkich lancuchow tekstowych.
> Rozumiem, że przy definicji takiej tabeli nie muszę stosować "volatile",
> nawet jeśli będę się do niej odwoływał w przerwaniu?
Ale po co tam mialo by byc volatile? to slowo informuje kompilator, ze
zawartosc pamieci moze ulec zmianie w sposob dla kompilatora malo
przewidywalny, innymi slowy kompilatorowi nie wolno optymalizowac
dostepu do zmiennej.
Następne wpisy z tego wątku
- 11.03.13 16:49 Michal Schulz
Najnowsze wątki z tej grupy
- OpenPnP
- taka skrzynka do kablowki
- e-paper
- 60 mA dużo czy spoko?
- Dziwne zachowanie magistrali adresowej w 8085
- Współczesne mierniki zniekształceń nieliniowych THD audio, produkują jakieś?
- Jaki silikon lub może klej?
- Smar do video
- Litowe baterie AA Li/FeS2 a alkaliczne
- "ogrodowa linia napowietrzna"
- jaki zasilacz laboratoryjny
- jaki zasilacz laboratoryjny
- Puszka w ziemię
- T-1000 was here
- Ściąganie hasła frezem
Najnowsze wątki
- 2025-02-21 Warszawa => System Architect (background deweloperski w Java) <=
- 2025-02-21 Warszawa => Solution Architect (Java background) <=
- 2025-02-21 Lublin => JavaScript / Node / Fullstack Developer <=
- 2025-02-21 Pawel S
- 2025-02-21 Warszawa => Key Account Manager (Usługi HR) <=
- 2025-02-21 Katowice => Senior Field Sales (system ERP) <=
- 2025-02-21 Chrzanów => Programista NodeJS <=
- 2025-02-21 Wrocław => Konsultant wdrożeniowy Comarch XL/Optima (Księgowość i
- 2025-02-21 Warszawa => Administrator Systemów Windows IT <=
- 2025-02-21 Wrocław => Specjalista ds. Sprzedaży (transport drogowy) <=
- 2025-02-21 Bieruń => Spedytor Międzynarodowy (handel ładunkami/prowadzenie flo
- 2025-02-21 zmarła Izyda Goldman
- 2025-02-20 Odśnieżanie samochodu(1)
- 2025-02-20 wpadłem kołem w dziurę nocusz zdarza się
- 2025-02-20 OpenPnP