PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : AVRco - schonmal jemand probiert?



sebastian.heyn
28.06.2005, 09:58
Ich schaue gerade nach neuen compilern, und habe im netz diesen (etwas teueren) pascal compiler für avr gefunder, der ein sehr umfangreiches library mit sich bringt, und laut hersteller "multitasking" erzeugen kann. Hats schon jemand versucht!?

uwegw
28.06.2005, 14:34
ich arbeite mit der demo von avrco (die reicht für mich momentan aus) und bin sehr zufrieden damit. multitasking kann die demoversion aber nicht...

sebastian.heyn
28.06.2005, 16:07
Scahde.... das interessiert mich gerade. blööd. hast du irgendwo mal ne anleitung gefunden wo multitasking beschrieben wird? wie läuftn das? einfach mehrere routinen definieren?

uwegw
28.06.2005, 19:15
da der controller nur eine einzige rechenoperation zur selben zeit ausgführen kann, wird die insgesamt zur verfügung stehende rechenzeit auf mehrere tasks, also unabhängig laufende programmteile, aufgeteilt. der controller bearbeitet erst einen task, und nach einer festgelegten zeit kümmertz er sich dann ne zeitlang um einen anderen. da diese wechsel schenlle erfolgen, scheint es von außen betrachtwe so, also ob alle tasks gleichzeitig ablaufen würden...

wenn du es unbedingt braucst, kannst du dir nen multitasking system selbst programmieren... aber schreib doch erstmal was du damit vorhast, die meisten sachen llassen sich nämlich auch ohne multitaskinmng hinbekommen... der hohe programmier- und rechenzeitaufwand lohnt sich bei mikrocontrollern selten...


PS. lad dir doch erst mal zum ausprobieren die demo... in den hilfetexten dabei wird genau beschrieben wie multitaskuing abläuft...

sebastian.heyn
29.06.2005, 07:20
Hi,

also ich lese etwas von RS232 ein, rechne es um, und gebe es, sofern ein pin gertriggert wird wieder aus. eingelesen werden 512 bytes, plus umrechennzeit....
das einlesen selber soll komplett geschehen, das heisst ich muss mit dem trigger warten, bis er fertig eingelesen hat (priorität verlusstfrei). das bedeutet für den triggernden µcom evtl wartezeit. wenn ich jetzt multitasken würde (ich weiss übrigens was das bedeutet) dann kann ich einlesen und umrechnen (-> temporäre variable) und derweilen die ausgabe machen, ohne wartezeit für den anderen µcom

uwegw
29.06.2005, 10:30
dannn soltest du dich mit den interrupts beschäftigen... die sind für dein problem eine geeeignete lösung...

ein interrupt für den datenempfang
ein interrupt für den triggerkanal

sebastian.heyn
29.06.2005, 10:50
was passiert bei trigger wärend datenempfang?

uwegw
29.06.2005, 11:32
soll der triggerstatus gespeichert werden, wenn er während des empfangs ausgelöst wird? ansonsten könnte man den entsprechenden interrupt auch zwischenzeitig deaktivieren...