Du musst wie ich oben schon geschrieben habe natürlich alle 40 ms die usbpoll aufrufen.
Also abwechselnd 40ms warten dann USB poll das ganze t genau ne 25x dann hast genau eine sekunde.
Du musst wie ich oben schon geschrieben habe natürlich alle 40 ms die usbpoll aufrufen.
Also abwechselnd 40ms warten dann USB poll das ganze t genau ne 25x dann hast genau eine sekunde.
Kabel - das ist nach üblichem Sprachgebrauch in der Elektrotechnik ein länglicher Draht (oder mehrere) mit einer isolierenden Hülle. Die Drähte - sofern sie aus der Hülle raussehen, sind Ein- oder Ausgänge - da muss nix deklariert werden - wenn man links Strom reinschickt, kommt der meist rechts wieder raus.
Du meinst vermutlich was ganz Anderes. Du willst wissen, wie man die Portpins von Controllern als Ein- oder Ausgänge deklariert. Dazu gibts hier (einfach klicken) ein hübsches Tutorial. Und wenn Du noch mehr über Ein- oder Ausgänge wissen willst, kannst Du (neben vielen anderen Quellen) hier nachlesen.
Und hier stehen noch mehr Tutorials, die Dir bei Deinen Experimenten helfen könnten, weniger darüber zu jammern, dass schon wieder das Lab kaputt sei.
Ciao sagt der JoeamBerg
Das verstehe ich nicht wirklich.
Ich habe eine zweite while schleife gemacht und darin den befehl mit sleep 250 millisekunden eingefügt.
dann leichtet die Led überhaupt nicht.
Danke für die Tutoriallinks.
WSchau dir mal 1-2 C Tuturials an, wenn du einen while Schleife mit sleep(250) machst schläft er natürlich für immer. zumindest länger als die erlaubten 40ms und damit springt das lab gleich wieder in den Bootmodus.
Ich hatte ja 2 while schleifen eine für die 40 mmillisekunden USB poll und das andere hat die Led getoggelt.
Macht genausowenig sinn hört sich jedenfalls so an, poste doch einfach die paar Zeilen code.
Ich mag keine hALBEN SACHEN ALSO:
Was genu macht eigentlich PortB.Output.Bit3 ^= 1;Code:#include "avrlab.h" #include "gpio.h" #include "sleep.h" //#define SIMULATION int main(void) { AvrLabInit(); //your code goes here PortB.DataDirection.Bit3 = DataDirectionOutput; while (1) { //or here Sleep(40,Milliseconds); AvrLabPoll(); //must be called at least every 40 ms //muss mindestens alle 40 ms aufgerufen werden } while (1) { PortB.Output.Bit3 ^= 1; Sleep(200,Milliseconds); AvrLabPoll(); } }
Schaltet es den Pin bei jedem durchlauf ein und aus oder ändert er immer minus und plus?
Wie definiert man eigentlich ob minus oder Plus aus dem jeweiligem Pin kommt?
Und wieso wird return nicht verwendet?
while (1) macht ständig etwas, er kommt also nie in die 2. schleife.
Den Port immer umschalten.Was genu macht eigentlich PortB.Output.Bit3 ^= 1;
+ und - gibts dort eigentlich nicht.
Es gibt am Portpin nur High und Low was in dem fall 3,3V und 0V sind.
PortB.Output.Bit3 = 1;
setzt den Pin auf 3,3V resp. HIGH
PortB.Output.Bit3 = 0;
auf 0V resp. LOW
Ok dankwe jetzt müsste ich auch was eigenes hinkriegen.
Aber wie mache ich es denn das beide Schleifen durchlaufen werden?
Lesezeichen