-
Data: 2009-03-09 22:35:44
Temat: Re: uC poczatek
Od: "T.M.F." <t...@n...mp.pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]>> Znaczy jak? Bo moge w kazdej chwili zablokowac pojedyncze typy
>> przerwan poprzez blokowanie flag na nie zezwalajacych. Flagi
>> zgloszenia poszczegolnych przerwan moge rowniez programowo zerowac.
>> Wiec w czym jest problem?
>
> W czasie jaki to zajmuje. Parę postów wcześniej próbowałeś udowodnić, że
> priorytety są zbędne, bo możesz odblokować inne przerwania w pierwszej
> instrukcji. Otóż nie zawsze możesz, bo albo peryferium na to nie pozwala
> (vide UART), albo musisz softowo blokować przerwania, których nie chcesz
> wpuścić. Wszystko to zajmuje czas.
Chyba sobie zartujesz w tym momencie. Dla '51 samo wejscie w procedure
obslugi przerwania trwa 3-9 cykli maszynowych (czyli 36-108 cykli
zegara). AVR w tym czasie wykona procedure o zlozonosci powaznego
schedulera dla OSu.
Zreszta policzmy ile to kosztuje
Najgorszy mozliwy wariant, czyli rejestr kontrolny jest spoza zasiegu
sbi/cbi:
PUSH R16
LD R16,rejestr z flaga
ORI R16, blokowane przerwania
STS rejestr, R16
SEI
Zajelo to 5 taktow. Dodatkowo 6 taktow kosztuje wejscie w procedure
obslugi, razem 11 taktow. W tym czasie '51 nie zdazy nawet zauwazyc, ze
jest przerwanie (aktywny poziom musi trwac co najmniej 12 taktow). Wiec
o czym ty mowisz?
Oczywiscie mozesz zapytac co kiedy masz kilka flag do zablokowania? No
problem, na malych prockach wiekszosc miesci sie w jednym rejestrze.
Jesli nawet w roznych to ciagle mamy spory zapas czasowy w stosunku do '51.
BTW, o co ci chodzi z tym UARTem?
Następne wpisy z tego wątku
- 09.03.09 23:00 Zbych
- 09.03.09 23:29 T.M.F.
- 09.03.09 23:52 zbyszek
- 10.03.09 08:00 T.M.F.
- 10.03.09 09:04 J.F.
- 10.03.09 09:23 Zbych
- 10.03.09 15:03 T.M.F.
- 10.03.09 18:33 Zbych
- 10.03.09 19:10 T.M.F.
- 10.03.09 19:42 Zbych
- 10.03.09 21:39 ArekS
- 10.03.09 21:51 Artur M. Piwko
- 11.03.09 23:19 zbyszek
- 12.03.09 18:21 T.M.F.
- 12.03.09 20:27 zbyszek
Najnowsze wątki z tej grupy
- 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
- Głośnik potrzebny
Najnowsze wątki
- 2025-11-25 Dwie umowy dożywocia
- 2025-11-24 Domowy switch 1GBit/8 portów, ale lepszy niż najtańsze
- 2025-11-24 Kraków => Production Coordinator / Representant Product Dev <=
- 2025-11-24 Warszawa => Przedstawiciel handlowy / KAM (branża TSL) <=
- 2025-11-24 Białystok => Solution Architect (Workday) - Legal Systems <=
- 2025-11-24 Białystok => Konsultant ERP Microsoft Dynamics 365 Commerce <=
- 2025-11-24 Rzeszów => ERP Microsoft Dynamics 365 Commerce Consultant <=
- 2025-11-24 Białystok => Programista React ze znajomością C++ <=
- 2025-11-24 Gdańsk => Dynamics 365 Commerce/POS Developer <=
- 2025-11-24 Białystok => Microsoft Dynamics 365 Finance Consultant <=
- 2025-11-24 Białystok => Senior Microsoft Dynamics 365 Business Central Konsultan
- 2025-11-24 I kolejne mleko się rozlało
- 2025-11-24 kolorowy e-paper
- 2025-11-24 Białystok => Konsultant Microsoft Dynamics 365 Finance <=
- 2025-11-24 Białystok => Programista Delphi <=




Ile kosztują tanie mieszkania w polskich metropoliach?