-
Data: 2009-10-16 11:32:50
Temat: Re: Dlaczego ATmega128 przekłamuje?
Od: "T.M.F." <t...@n...mp.pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]> Przepraszam, że się odzywam w temacie na którym się kompletnie nie znam.
> Na temat flag w postaci bitów w bajtach w AVR omawianych w kursie C na
> AVR w EP usłyszałem przed kilku laty mniej więcej taką wypowiedź:
> "Jak można podawać takie przykłady! Przecież trzeba znać maszynę, na
> której program będzie chodził. Widać, że ktoś bezmyślnie przepisał
> przykład z 51 na AVR. Potem ludzie tak napiszą i mamy to co mamy."
> Z tego co pamiętam to chodziło o to, że przestawienie bitu w bajcie na
> AVR wymaga więcej niż jednego rozkazu. No i w przykładzie przyjście
> przerwania miedzy tymi rozkazami prowadziło do błędu.
> Liczę na to, że ktoś piszący na AVR wypowie się na ten temat (bo nawet
> nie jestem pewien, czy te pretensje były uzasadnione).
> Z przebiegu wątku wygląda, że jego autor być może powstawia flagi do
> bajtów co być może doprowadzi do nowych błędów.
> No i chęć zapobiegnięcia temu skłoniła mnie do tej dość mętnej wypowiedzi.
AVR ma pewne wydzielone obszary pamieci na ktorych dzialaja instrukcje
umozliwiajace atomowe ustawienie lub wyzerowanie bitu, tylko, ze nie
mozna tego zrobic w SRAM, tylko w niektorych rejestrach IO. Niektore
AVRy maja w tej przestrzeni rejestry, ktore nie maja zadnej funkcji,
poza wlasnie przechowywaniem flag. Wiec da sie to zrobic atomowo, tyle,
ze to juz nie jest standardowe C.
--
Inteligentny dom - http://idom.wizzard.one.pl
http://idom.sourceforge.net/
Teraz takze forum dyskusyjne
Zobacz, wyslij uwagi, dolacz do projektu.
Następne wpisy z tego wątku
- 16.10.09 11:40 T.M.F.
- 16.10.09 11:58 Piotr Gałka
- 16.10.09 12:49 T.M.F.
- 16.10.09 14:22 Konop
- 16.10.09 14:24 Piotr Gałka
- 16.10.09 14:39 Piotr Gałka
- 16.10.09 15:22 T.M.F.
- 16.10.09 15:31 Ghost
- 16.10.09 15:33 Piotr Gałka
- 16.10.09 20:12 ELP
- 16.10.09 21:08 Ghost
- 16.10.09 21:26 Konop
- 17.10.09 10:25 T.M.F.
- 17.10.09 22:50 Adam Dybkowski
- 19.10.09 07:26 Darkac
Najnowsze wątki z tej grupy
- Thunderbird i dysk...
- opornosc falowa
- Bateria 9V 6F22, alkaliczna v cynkowa, samorozładowanie, bateria wysokiej trwałości do miernika
- Tani zakup z ali?
- w czasach LED komary mają ciężko
- walizka z kodami
- Rejestrator temperatur - termopara, siec
- Router LTE z możliwością zmian MTU
- Fajny film widziałem...
- Jaka ładowarka sieciowa do Iphona?
- Taśma izolacyjna do prac elektrycznych
- Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
Najnowsze wątki
- 2025-07-23 Gdańsk => Programista Delphi <=
- 2025-07-23 Gdańsk => Programista Mainframe (z/OS, Assembler) <=
- 2025-07-23 Warszawa => Starszy inżynier DevOps (AWS) <=
- 2025-07-23 Gdańsk => Mainframe (z/OS, Assembler) Developer <=
- 2025-07-23 Kraków => Senior Fullstack Engineer (Low-Code Platform) <=
- 2025-07-23 Wrocław => Senior Key Account Manager IT <=
- 2025-07-23 Trójmiasto => Head of Social Media <=
- 2025-07-23 Rzeszów => Spedytor Międzynarodowy <=
- 2025-07-23 Lublin => ERP Implementation Consultant (AP Module) <=
- 2025-07-23 Środa Wielkopolska => SAP FI/CO Internal Consultant <=
- 2025-07-23 Warszawa => Inżynier oprogramowania .Net <=
- 2025-07-23 Kraków => Kotlin Developer <=
- 2025-07-23 Żerniki => Dyspozytor Międzynarodowy <=
- 2025-07-23 Warszawa => Java Developer <=
- 2025-07-23 Wrocław => Konsultant wdrożeniowy (systemy controlingowe) <=