Sehr gut und detailliert erklärt, finde ich spitze.
@I-WANNA-KNOW
Жыл бұрын
Vielen Dank und liebe Grüße Kevin
@notze5344
2 жыл бұрын
Vielen Dank für das Video! Ich hatte noch gar nicht die Idee für so eine Funktion, finde sie aber super gut und das habe es mal direkt nach gestellt 👍👌
@rantovicannato9046
11 ай бұрын
Danke dir für deine super Videos !
@DBBahnospherix-BahnAtmospherix
6 ай бұрын
Super erklärt - danke
@brillianto3674
2 жыл бұрын
Danke für das Video ! Habe ich auf Anhieb verstanden 👌🏼
@DoubleDee2000
2 жыл бұрын
Cool, danke für das Video! :)
@I-WANNA-KNOW
2 жыл бұрын
Sehr gern :-)
@dziku1609
5 ай бұрын
Wie würdest du den Code so zu erweitern, dass das Gleiche noch einmal kopiert wird und die nächsten 5 LEDs von pin 7 bis 11 etwas schneller laufen? Für modellbau polizei lichtbalken. Dankeschön
@I-WANNA-KNOW
5 ай бұрын
Hi, magst du mir mal Bilder an info@i-wanna-know.de schicken, damit ich besser verstehe wie du es genau meinst? LG Kevin
@davidh7084
Жыл бұрын
Wie würdest du den code erweitern wenn das Lauflicht hin und zurück laufen soll und nicht immer wieder bei null startet?
@I-WANNA-KNOW
Жыл бұрын
Hallo david h, ich habe dein Kommentar leider jetzt erst gelesen. Vielleicht schaff ich es die Tage ein kurzes Video zu deiner Frage zu machen. LG Kevin
@I-WANNA-KNOW
Жыл бұрын
Den Aufbau und Code habe ich fertig, nun muss ich das nur Filmen und erklären, hoffe es reicht dir, wenn es am Wochenende kommt. LG Kevin
@davidh7084
Жыл бұрын
@@I-WANNA-KNOW Vielen Dank. Super von dir.
@I-WANNA-KNOW
Жыл бұрын
Hi david h, ich glaube ich schaffe das Video heute nicht mehr. Hier der Code (Aufbau ist der Selbe), Video folgt dann noch: int ledPin[5] = {2, 3, 4, 5, 6}; int ledDirection = 1; int Counter = 0; unsigned long previousMillis = 0; const long interval = 1000; void setup() { for (int i = 0; i= interval) { previousMillis = currentMillis; if (ledDirection == 1){ digitalWrite(ledPin[Counter - 1],LOW); digitalWrite(ledPin[Counter],HIGH); Counter = Counter +1; if (Counter > 4){ Counter = 4; ledDirection = 2; } } if (ledDirection == 2){ digitalWrite(ledPin[Counter + 1],LOW); digitalWrite(ledPin[Counter],HIGH); Counter = Counter -1; if (Counter < 0){ Counter = 1; ledDirection = 1; } } } }
@markusmitph8987
2 жыл бұрын
Vielen Dank für das Video! Trotz meiner Programmiererfahrung fiel es mir etwas schwer, deiner Erklärung zu folgen. Ich weiß nicht, ob du offen für Vorschläge bist, aber probiere uns nicht vor einen vollendeten Code zu setzen, sondern entwickle ihn mit uns gemeinsam. Vielleicht klappt das besser. Ich empfinde die Arduino IDE als eher ineffizient, deshalb habe ich mir mal die Freiheit genommen, und deinen Code neu zu schreiben und so effizient wie es mir möglich ist zu gestalten. Es ginge noch effizienter, wenn wir den gesamten Port D als Ausgang definieren und insgesamt 8 LED ansteuert, aber so hat das auch ganz gut geklappt. Das mit dem Counter ist halt etwas ungünstig, wenn man es mit Bitshifting macht, so wie ich es umgesetzt habe. Aber schau ihn dir gern mal an und lad' ihn auf deinen Arduino: // CODE START uint8_t counter = 0; unsigned long prevMillis = 0; unsigned long currMillis; unsigned long interval = 250; void setup() { // Ausgangsports DDRD = (0x7C); // LED Pins als Ausgang definieren DDRD = 0111 1100 } void loop() { currMillis = millis(); if (currMillis - prevMillis >= interval) { prevMillis = currMillis; PORTD = (1 6) { //PORTD = (0x04); counter = 2; } } } // CODE END Ich hoffe, ich nerve dich nicht mit meiner Diskussionsbereitschaft, aber ich bin dabei halt irgendwo voll in meinem Element und freue mich, wenn ich von dir was lerne.
@I-WANNA-KNOW
2 жыл бұрын
Hi Markus mit ph, ich finde deine Kommentare klasse! Ich werde deinen Vorschlag versuchen in Zukunft bestmöglich umzusetzen (keinen fertigen Code zu zeigen, sondern diesen im Video aufbauen). Dein Code mit dem Port D ist super, aber ich versuche es möglichst leicht zu halten, um Anfängern den Einstieg zu erleichtern :-) Ich freu mich, dass du dich mit diesem Aufbau auseinandergesetzt hast und freu mich auch schon auf zukünftige Kommentare von dir. Liebe Grüße und bis bald 🙋♂️ Kevin
@DoubleDee2000
2 жыл бұрын
Hm, was ist aber wenn man nur 5 LEDs ansteuern will, weil man die anderen Digitalpins für eine andere Aufgabe benötigt? Aber der Code ist schön kurz und knackig. Für mich ist es etwas schwerer zu verstehen was der Code an manchen Stellen macht.
@markusmitph8987
2 жыл бұрын
@@DoubleDee2000 Wenn deine Antwort auf meinen Code bezogen ist: Mein Code macht quasi genau das selbe, was der im Video macht. Kannst ihn gern einfach auf deinem Arduino ausprobieren. im void setup() setzt das "DDRB = (0x7C)" (das 0x7C ist die Hexadezimale Darstellung des binären "0111 1100", was genau die benötigten Ausgänge am Port D repräsentiert), die benötigten LED Pins auf "Ausgang", macht also das, was im Video mit dem "PinMode" gemacht wird. Mit dem Unterschied, dass wir direkt alle Register in einem schalten. Das ist hier in Textform schwierig zu erklären, weil ich auch nicht weiß, welches Vorwissen du hast. Mit dem Befehl PORTD im void loop() können wir grundsätzlich alle Pins aktivieren und deaktivieren. Was ich mit dem PORTD = (1
@DoubleDee2000
2 жыл бұрын
@@markusmitph8987 Aha, interesannt! Also ist das das Prinzip eines Schieberegisters! Naja, mein Vorwissen ist schon etwas mehr als ein Anfänger, ich hab mir schon einiges von KZitem Beipielen angesehen und dann auf meine Bedürfnisse angepasst! Allerdings komme ich bei den anspruchsvolleren Sachen an meine Grenzen und weiß ohne Hilfe nicht weiter! In diesem Fall hat mir Kevin sehr geholfen und ich habe wieder einiges mehr dazugelernt! :D In vielen fällen ist es so, dass ich garnicht weiß, welche möglichkeiten es giebt, um das Programm so zu schreiben, das es dass macht, was ich will.
Пікірлер: 21