|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.....
Od: bggbcvgg
|
Pridané:
6.10.2015 11:14
Posielam external interrupt
|
|
Re: .....
Od: RTOS
|
Pridané:
6.10.2015 11:22
Ďakujem, ale netreba. Viem si ho vytvoriť sám. A pri opakovanom externom sa vždy rozhodnem, či si ho opäť vôbec všimnem.
|
|
Re: .....
Od: ufyydgfddg
|
Pridané:
6.10.2015 11:28
aj listy tiez pises sam sebe a potom sa rozhodujes ci na ne odpovies?
|
|
Re: .....
Od: Opak
|
Pridané:
6.10.2015 12:34
Veď píše, že ako kedy. Zrejme si niekedy predtým jednoducho rovno zatelefonuje. :-D
|
|
Re: .....
Od reg.: raketa
|
Pridané:
6.10.2015 15:21
ze vo "vesmirnych lodiach", na konci clanku, no ja som sa skoro dostal :D :D :D
|
|
Re: .....
Od: quix_
|
Pridané:
6.10.2015 15:34
a dolovat z asteroidov a podobne nemozu lietat na linuxovych lodkach? mozu ;)
|
|
Re: .....
Od reg.: raketa
|
Pridané:
6.10.2015 21:37
no jasne, vsak Star Trek, ale ten tiez funguje na Windowse http://bit.ly/1PgYQum
|
|
Re: .....
Od: Deer
|
Pridané:
6.10.2015 12:14
Ked som sa venoval AVRkam, v jednom example som si vsimol, ze vystupny port je napojeny na INT0 vstup. Inak povedane, procesor si sam vedel "hodit" prerusenie. Nechapem naco je toto dobre.
|
|
Re: .....
Od: GBAA
|
Pridané:
6.10.2015 12:21
Je to veľmi užitočné keď potrebuješ spraviť softvérový interrupt, keďže AVR ho nemá.
|
|
Re: .....
Od: avr
|
Pridané:
6.10.2015 13:13
ale vsak prerusenie je viazane na volanie definovanej funkcie. a ked naco posielat signal na pin, aby vyvolal prerusenie, ktore zavola tuto funciu, ked ju program moze volat priamo ? ani ja teda nechapem, naco je to dobre...
|
|
Re: .....
Od: safsdfasdf
|
Pridané:
6.10.2015 13:50
Obsluha prerusenia moze robit viac. Napriklad sa da jednoducho menit obsluha na jednom mieste a programy o sebe nemusia vobec vediet.
Pri volani funkcie je to ovela narocnejsie, kedze tam sa caka bud staticke linkovanie (nemozes menit funkciu) alebo dynamicke (potrebuje runtime linker). Ani pri dynamickom linkovani nejde uplne jednoducho menit funkciu za behu. Este je moznost volat funkciu cez pointer, ale ten by mal byt na zadanom mieste v pamati a na tom by sa aplikacie museli zhodnut. Naproti tomu taketo prerusenie sa robi ovela jednoduchsie.
|
|
Re: .....
Od: hhjgh
|
Pridané:
6.10.2015 14:23
mozem vykonanie funkcie podmienit globalnym priznakom (if(flag)return), tak isto ako podmienit vykonanie prerusenia "globalnym" registrom (neaky interrupt enable bit). Ak mam preruseniami podmienovat vykonanie funkcie, prichadzam zbytocne o piny mcu.
Hm, rozumiete? :)
|
|
Re: .....
Od: asdfasdfasdf
|
Pridané:
6.10.2015 17:11
Ale prerusenie pride bez ohladu na to, ci to niekde testujes. V extreme by si tvoj flag musel testovat po kazdom riadku, co je neefektivne. Testovat flag sa teoreticky da na zaciatku funkcie, ale pamatat na to pri kazdom cykle, to uz je narocnejsie.
|
|
Re: .....
Od: avr
|
Pridané:
6.10.2015 14:38
hovorime stale o avr ? programy ? robit multitasking na avr je dost hardcore. ked uz potrebujem menit obsluhu na zaklade niecoho, tak pouzijem jednoduchy switch(), a nebudem obsazovat zbytocne pin, ktorych je aj tak malo...
|
|
Re: .....
Od: ddddddddddd
|
Pridané:
6.10.2015 17:17
Co mas proti multitaskingu? Vsak riesenie preemptivneho multitaskingu pre avr s timerom napise ktorykolvek aspon trochu schopny programator za 2 tyzdne do 2k SLOC a moze to pouzivat znovu a znovu. A potom lahko spravi watchdog a hned sa s tym robi lepsie ;-).
|
|
Re: .....
Od: syntaxterrorX
|
Pridané:
6.10.2015 14:13
Kvôli HW izolácii kernel scopu. RTOS tým na HW úrovni zabezpečuje, že kernel nespomalí ani nezhodí žiadna kombinácia paralelne spustených programov( sám sebe pánom). Opačný príklad sa dá jednoducho nasimulovať súčasným zasunutím viacerých USB kľúčov pod non-RTOS. Alebo odpojením disku nepripojeného cez hot-swap.
|
|
Re: .....
Od: qwreew
|
Pridané:
6.10.2015 14:26
Vedia AVRka izolovat kernel od procesov? Pokial viem tak nemaju ani ring3 ani MMU...
|
|
Re: .....
Od: avr
|
Pridané:
6.10.2015 14:34
nie. a nemaju,
|
|
Re: .....
Od: syntaxterrorX
|
Pridané:
6.10.2015 14:55
A výstupný port napojený na prioritný INT0 vstup je podľa vás čo? PCI?
|
|
Re: .....
Od: hghhhhhhh
|
Pridané:
7.10.2015 9:38
aky vystupny port ? port je port a kazdy pin sa da konfigurovat ako vstup alebo vystup, to ze ma neaky pin funkciu externeho prerusenia, neznamena ze musi byt toto prerusenie povolene a neznamena to ze ked je prerusenie povolene, tak ten pin musi byt nastaveny ako vystup. cize ak mam aplikaciu kde obsluhujem externe prerusenie, tak nastavim pin ako vstupny a povolim prerusenie. co tu stale splietate o neakom prepojeni vystupu pinu na vonkajsie prerusenie?
|
|
Re: .....
Od: ggjgg
|
Pridané:
7.10.2015 9:45
ale ak sa niekto chce silou mocou skrabat nohou po uchu, a chce spustat funkciu obklukou, tak moze generovat pwm signal, ten prepojit na vstup analogoveho komparatora ktoreho vystup porovna s adc hodnotu prevodnika, vysledok posle na dalsi pin priletovany na int ktory spusti pozadovanu funkciu....
|
|
Re: .....
Od: syntaxterrorX
|
Pridané:
7.10.2015 11:43
...čím na zariadení, ktorého vlastný os/firmware nemá vstavanú podporu RING vzniká čo?:)
|
|
Re: .....
Od: Opak
|
Pridané:
6.10.2015 12:41
Je možné odizolovať ostatné externé vstupy, keď má loopnutý vstup najvyššiu prioritu. Napríklad slúchadlá s aktívnym potláčaním šumu. Taká elektronická meditácia.
|
|
Re: .....
Od: bghnbh
|
Pridané:
6.10.2015 14:13
pokial viem avrka nemaju cisto vystupny port. Port, resp. pin na porte sa konfiguruje prislusnym registrom. Ak chces vyuzivat na urcenom pine externe prerusenie tak ho prepnes do rezimu vstupu a urcis akym sposobom sa prerusenie vyvola (nabezna/dobezna hrana, logicka 1/0). Naco by som vyvolaval externe prerusenie samotnym procesorom?
|
|
rozsirenie vyuzitia
Od: niekto iny
|
Pridané:
6.10.2015 11:27
mozno sa tymto zacne/rozsisi pouzitie linuxových distribúcii napr pri ovladacích systemoch aut
|
|
Re: rozsirenie vyuzitia
Od: sdfasdfasdfx
|
Pridané:
6.10.2015 12:54
Linux je velky moloch, preto myslim, ze skor nie. Ved aj po osekani ma skompilovany cez 600KB!
(Teraz si predstav auditovanie takeho kusu kodu)
|
|
Re: rozsirenie vyuzitia
Od reg.: Trolitel
|
Pridané:
6.10.2015 16:41
To by si račej prehliadal zdrojáky MS-DOSu?
http://dopice.sk/eWJ
|
|
Re: rozsirenie vyuzitia
Od: asdfadsfasdf
|
Pridané:
6.10.2015 17:09
Nie, je tu VxWorks, RTEMS, FreeRTOS a dokonca mame aj L4 (s formalnou verifikaciou seL4).
Na taketo pouzitia je kopec lepsich rieseni ako pouzivat nezmensitelny moloch, ktory ma bezne cez 1MB a aj po vykuchani sietoveho stacku zostava viac ako pol MB. A naviac ma relativne vela bugov, co sa odvija od velkosti codebase a od chybajucej formalnej verifikacie.
|
|
Re: rozsirenie vyuzitia
Od: <<<>>>
|
Pridané:
6.10.2015 18:43
tak, tak... este aj windows ce je na tom lepsie :D
|
|
Re: rozsirenie vyuzitia
Od: lolo5+26
|
Pridané:
6.10.2015 20:26
a PLC v aute?:) postave
|
|
teda....
Od: luke peterson
|
Pridané:
6.10.2015 16:18
zlata Amiga.
|
|
sorry for being late
Od: Arch_Bastard
|
Pridané:
6.10.2015 19:11
Install Arch
|
|
pwm Titulok príspevku musí mať dĺžku aspoň 5 znakov.
Od: hac0
|
Pridané:
6.10.2015 20:10
konecne rozbeham to pwm na tom atherose od D-Linku
|
|
Re: pwm Titulok príspevku musí mať dĺžku aspoň 5 znakov.
Od: hgvghcdf
|
Pridané:
7.10.2015 9:40
to by sa zislo aj na rpi
|
|
A s čím sa to konzunuje?
Od: Hejdy
|
Pridané:
6.10.2015 23:02
A s čím sa to konzumuje? S kečupom alebo horčicou? :-D
|
|
LCARS v StarTreku
Od: Ein-Zwei-DreiStein
|
Pridané:
6.10.2015 23:08
takže operačný systém na StarFleet lodiach bude, /je, /bol vyvynutý na linuxovom jadre, /základoch,
(s prvkami windowsovskích OS, a ich GUI..
:p 8) ;Dlol
|
|
Komplikované kódy.
Od: 4Maniak.
|
Pridané:
7.10.2015 10:19
Aby bol OS v reále aj správne funkčný, nemôže to byť OS, a už vôbec nie s miliónmi riadkov kódu.
To sú totiž úplne protichodné veci!!!
Systém "real time" musí byť predovšetkým jednoduchý a spoľahlivý. A to žiaden OS nie je, a nikdy v dnešnej podobe nebude.
Tí čo neveria, vrátťe sa na dostatočne dlhý čas do programovania v ére PMI-80 z TESLA Piešťany.
|