-
Data: 2019-02-11 11:10:21
Temat: Re: Zagwozdka w C Keil.
Od: Mateusz Viste <m...@n...pamietam> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On Mon, 11 Feb 2019 10:02:24 +0100, Grzegorz Niemirowski wrote:
>> Może należało by sprawdzić najpierw jedną połówkę, później drugą i
>> ponownie pierwszą, dla pewności.
>
> Można.
Niby można, ale to dalej będzie lichota, bo nic nie gwarantuje, że przy
trzecim sprawdzaniu BAM! znów interrupt nie strzeli.
Ktoś mógłby powiedzieć "no tak, ale to przerwanie wyzwala się raz na
jakiś czas, kilka cykli CPU to za krótko by dwa razy zdążyło się
wyzwolić" - ale to nie do końca słuszne założenie. Może być tak, że
uruchomi się nasze przerwanie, zaraz za nim jakieś obce przerwanie które
robi coś dłuuuugo i zaraz po nim znów wraca to nasze, z nowym (złośliwie
ustawionym) DEL_STEP.
> Można też zastosować sekcję krytyczną czyli wyłączyć przerwania
> na moment testu.
To tak. Ale moje skromne i niezobowiązujące zdanie jest takie, że z
_disable() należy obchodzić się tak jak z goto. Są przypadki gdzie można
się tym pokusić bo coś uprości i będzie wszystkim żyło się lepiej, ale
jeśli tylko można - lepiej unikać, bo potem człowiek się uzależni i
zacznie produkować potworki. No i oczywiście wyłączenie przerwań
poskutkuje tym, że ich wykonywanie obarczone będzie jitterem (bo przy
dłuższych sprawach przerwania nam się zakolejkują) - a to może być, w
niektórych zastosowaniach/warunkach, jakimś problemem. Do tego takie
ręczne wyłączanie przerwań wprowadza stan, o którym należy pamiętać (tj.
nie zapomnieć o włączeniu przerwań z powrotem) - przy większym codeflow
który może różnymi ścieżkami pobiec łatwo robi się wtedy mętlik.
Mateusz
Następne wpisy z tego wątku
- 11.02.19 11:54 Queequeg
- 11.02.19 11:59 Queequeg
- 11.02.19 12:17 J.F.
- 11.02.19 13:45 k...@g...com
- 11.02.19 14:27 Mateusz Viste
- 12.02.19 02:33 k...@g...com
- 12.02.19 09:31 Mateusz Viste
- 12.02.19 22:39 Irek.N.
- 12.02.19 23:02 stary grzyb
- 13.02.19 09:10 HF5BS
- 13.02.19 10:44 Piotr Gałka
- 13.02.19 11:28 J.F.
- 13.02.19 13:48 Janusz
- 13.02.19 16:22 stary grzyb
- 13.02.19 21:13 Irek.N.
Najnowsze wątki z tej grupy
- Leżakujące SSD gubią po roku dane
- kolorowy e-paper
- Sterownik kotła CO praca PWM
- Jakie baterie A23 i LR44?
- OLED SSD1306 - degradacja?
- Który symulator AVR jest ,,prawilny"?
- Disk on Module, czym to odczytać?
- Pasta ochronna? Lutownicza?
- zagadka pneumatyczna
- Klip testowy, jak sie to używa
- Jak sie smazy elektronike z odleglosci kilkuset metrów?
- William Shockley, co-inventor of the transistor
- Gazowy kocioł CO regulacja cyklingu i regulacja pogodowa
- Zamek elektroniczny
- szablon do pasty DIY
Najnowsze wątki
- 2025-12-02 logowanie do wifi
- 2025-12-02 przelew przychodzący Alior
- 2025-12-02 Czyli już wolno "likwidować" rozbitków USA? [Wzajemności zasada najświętszą jest]
- 2025-12-01 #motodziennik 356 - 3.0TDI wraca, Tesla z PRZYCISKAMI, Fiat 500 z ceną, OPŁATA DROGOWA od ELEKTRYKÓW
- 2025-12-01 Białystok => Konsultant Microsoft Dynamics AX/365 SCM Consultant - Se
- 2025-12-01 Białystok => Dynamics 365 Commerce/POS Developer <=
- 2025-12-01 Białystok => Konsultant ERP Microsoft Dynamics 365 Commerce <=
- 2025-12-01 Białystok => React Developer with knowledge of C++ <=
- 2025-12-01 Poznań => Specjalista ds. Marketingu Online (PPC) <=
- 2025-12-01 Białystok => Microsoft Dynamics 365 Finance Consultant <=
- 2025-12-01 Warszawa => Fullstack PHP Developer <=
- 2025-12-01 Warszawa => Senior Frontend Developer (React + React Native) <=
- 2025-12-01 Wrocław => Programista React ze znajomością C++ <=
- 2025-12-01 Warszawa => Spedytor Międzynarodowy <=
- 2025-12-01 Warszawa => Architekt rozwiązań (Workday) - Legal Systems <=




Ile kosztują tanie mieszkania w polskich metropoliach?