EmbSys
EmbSys
  • 60
  • 208 435
[10] Code-Beispiel, Ein/Ausgabe: mit NAND-Gattern zum Computer - Die NandGame Lösung - Teil 10
Wie baut man aus NAND Gliedern einen funktionierenden Computer?
Alle Lösungen des NandGame im Schnelldurchlauf mit Erklärung.
Folge 10, Mikroprozessor, Ein- und Ausgabe:
00:00 Mikroprozessor (Computer)
01:25 Beispielprogramm: Semmel und Brezel zusammen
09:14 Ein- und Ausgabe (Input and Output)
Link zu NANDGame: www.nandgame.com
Credits:
Olav Junker Kjær (NANDGame)
Jo @jn3008 jn3008 (Inspired Outro Graphic)
www.washhouse-basement-stompers.de (Outro Music)
Переглядів: 886

Відео

[9] Prozessorbaugruppen : aus NAND-Gattern zum Computer - Die NandGame Komplettlösung - Teil 9
Переглядів 4733 роки тому
Wie baut man aus NAND Gliedern einen funktionierenden Computer? Alle Lösungen des NandGame im Schnelldurchlauf mit Erklärung. Folge 9, Prozessorbaugruppen (Processor): 00:00 Register und RAM (Combined Memory) 04:00 Befehle entschlüsseln (Instruction Decoder) 11:40 Steuerungseinheit (Control Unit) 19:24 Befehlszähler (Program Engine) Link zu NANDGame: www.nandgame.com Credits: Olav Junker Kjær (...
[8] OP-Codes & Sprungbedingung: aus NAND-Gattern zum Computer - Die NandGame Komplettlösung - Teil 8
Переглядів 3783 роки тому
Wie baut man aus NAND Gliedern einen funktionierenden Computer? Alle Lösungen des NandGame im Schnelldurchlauf mit Erklärung. Folge 8, Maschinenbefehle (OP-Codes), (Sprung-)Bedingungen: 00:00 X, Y direkt ausgeben 02:49 X, Y bitweise Verunden (AND) 04:14 X, Y bitweise Verodern (OR) 05:32 X, Y bitweise Invertieren (NOT) 06:46 Addieren 06:59 Subtrahieren 09:45 Konstante 0 10:19 Konstante -1 10:46 ...
Assembler Simulator - Teil 2: Crash Kurs
Переглядів 1,2 тис.3 роки тому
Welche Assembler Befehle gibt es? Was bewirken sie? Mit dem Assembler Simulator von Marco Schweighauser sehen wir genau, was im Computer passiert, wenn ein Programm ausgeführt wird. Teil 2 (Crash Kurs): 00:00 Übersicht 03:05 Daten kopieren 06:43 Daten verarbeiten 16:55 Sprünge 19:59 Daten vergleichen 22:18 Bedingte Sprünge 26:32 Subroutinen 30:22 Stack 32:59 Programmende 35:32 Beispiele im Simu...
Assembler Simulator - Teil 1: Vorstellung
Переглядів 2,2 тис.3 роки тому
Wie programmiere ich einen Computer in Assembler? Der Assembler Simulator von Marco Schweighauser - hier sehen wir genau, was im Computer passiert, wenn ein Programm ausgeführt wird. Teil 1: 00:00 Vorstellung Praktikumsaufgabe "Prüfsumme" 02:52 Vorstellung Simulator 05:10 Beispielprogramm 19:30 Bedienungshinweise Link zum Simulator: schweigi.github.io/assembler-simulator/
[7] Arithmetisch Logische Einheit ALU: aus NAND-Gattern zum Computer - Die NandGame Lösung - Teil 7
Переглядів 7503 роки тому
Wie baut man aus NAND Gliedern einen funktionierenden Computer? Alle Lösungen des NandGame im Schnelldurchlauf mit Erklärung. Folge 7, Arithmetisch Logische Einheit ALU: 00:00 ALU Baugruppe (Unary ALU) 04:08 Arithmetisch Logische Einheit (ALU) 09:22 ALU optimale Lösung Link zu NANDGame: www.nandgame.com Credits: Olav Junker Kjær (NANDGame) Jo @jn3008 jn3008 (Inspired Outro Graphic) ...
[6] Register, Zähler, RAM: aus NAND-Gattern zum Computer - Die NandGame Komplettlösung - Teil 6
Переглядів 4623 роки тому
Wie baut man aus NAND Gliedern einen funktionierenden Computer? Alle Lösungen des NandGame im Schnelldurchlauf mit Erklärung. Folge 6, Register, Zähler, RAM: 00:00 Register (Register) 01:29 Zähler (Counter) 05:41 Arbeitsspeicher (RAM) 10:19 RAM optimale Lösung Link zu NANDGame: www.nandgame.com Credits: Olav Junker Kjær (NANDGame) Jo @jn3008 jn3008 (Inspired Outro Graphic) www.washh...
[5] Bits speichern: aus NAND-Gattern zum Computer - Die NandGame Komplettlösung - Teil 5 (Latch)
Переглядів 6523 роки тому
Wie baut man aus NAND Gliedern einen funktionierenden Computer? Alle Lösungen des NandGame im Schnelldurchlauf mit Erklärung. Folge 5, Bits speichern: 00:00 Flipflop (Latch) 02:34 Daten-Flipflop (Data Filp-Flop) 05:07 Daten-Flipflop optimale Lösung Link zu NANDGame: www.nandgame.com Credits: Olav Junker Kjær (NANDGame) Jo @jn3008 jn3008 (Inspired Outro Graphic) www.washhouse-basemen...
[4] Signalverteilung: aus NAND-Gattern zum Computer - Die NandGame Komplettlösung - Teil 4
Переглядів 4123 роки тому
Wie baut man aus NAND Gliedern einen funktionierenden Computer? Alle Lösungen des NandGame im Schnelldurchlauf mit Erklärung. Folge 4, Signalverteilung: 00:00 Auswähler (Selector) 04:45 Umschalter (Switch) Link zu NANDGame: www.nandgame.com Credits: Olav Junker Kjær (NANDGame) Jo @jn3008 jn3008 (Inspired Outro Graphic) www.washhouse-basement-stompers.de (Outro Music)
Mars Rover Perseverance Überraschung!
Переглядів 1243 роки тому
Mars Rover Perseverance Überraschung!
[3] Arithmetik: aus NAND-Gattern zum Computer - Die NandGame Komplettlösung - Teil 3
Переглядів 6093 роки тому
[3] Arithmetik: aus NAND-Gattern zum Computer - Die NandGame Komplettlösung - Teil 3
[2] Addieren: aus NAND-Gattern zum Computer - Die NandGame Komplettlösung - Teil 2
Переглядів 1,2 тис.3 роки тому
[2] Addieren: aus NAND-Gattern zum Computer - Die NandGame Komplettlösung - Teil 2
[1] Challenge: Aus NAND-Gattern zum Computer - Die NandGame Komplettlösung - Teil 1 (OR, XOR)
Переглядів 2,9 тис.3 роки тому
[1] Challenge: Aus NAND-Gattern zum Computer - Die NandGame Komplettlösung - Teil 1 (OR, XOR)
Geheimtipp: @Attractor - humanoide Roboter, Elektronik, Digital - Interview - Teil 3
Переглядів 4293 роки тому
Geheimtipp: @Attractor - humanoide Roboter, Elektronik, Digital - Interview - Teil 3
@Attractor für Digitaltechnik, Elektronik, Roboter - Interview mit Prof. Manfred Hild -Teil 2
Переглядів 7253 роки тому
@Attractor für Digitaltechnik, Elektronik, Roboter - Interview mit Prof. Manfred Hild -Teil 2
Geheimtipp: Videos zu Elektronik, Digitaltechnik, Roboter - Interview mit @Attractor - Teil 1
Переглядів 1 тис.3 роки тому
Geheimtipp: Videos zu Elektronik, Digitaltechnik, Roboter - Interview mit @Attractor - Teil 1
How Does a Computer Work?
Переглядів 6 тис.3 роки тому
How Does a Computer Work?
Reflections on the CAN bus - demonstration (subtitles)
Переглядів 2,8 тис.3 роки тому
Reflections on the CAN bus - demonstration (subtitles)
My trick for reading hex code!
Переглядів 5 тис.3 роки тому
My trick for reading hex code!
Kurze Führung durchs Labor Mikrocomputertechnik
Переглядів 5543 роки тому
Kurze Führung durchs Labor Mikrocomputertechnik
I²C Bus - Drängelautomatik mit VL6180 Time-Of-Flight Sensor
Переглядів 1,7 тис.4 роки тому
I²C Bus - Drängelautomatik mit VL6180 Time-Of-Flight Sensor
I2C Bus - Einführung in das Two-Wire-Interface
Переглядів 1,3 тис.4 роки тому
I2C Bus - Einführung in das Two-Wire-Interface
Serielle Datenübertragung - das AVR USART Modul im Detail
Переглядів 3,8 тис.4 роки тому
Serielle Datenübertragung - das AVR USART Modul im Detail
Was macht die Arduino Funktion millis()? ... wenn keiner zuschaut?
Переглядів 5 тис.4 роки тому
Was macht die Arduino Funktion millis()? ... wenn keiner zuschaut?
PWM erklärt - was macht analogWrite()?
Переглядів 8064 роки тому
PWM erklärt - was macht analogWrite()?
Arduino: Timer1 Interrupt selbst konfigurieren
Переглядів 2,9 тис.4 роки тому
Arduino: Timer1 Interrupt selbst konfigurieren
Arduino: AD-Wandler ohne analogRead()
Переглядів 2,1 тис.4 роки тому
Arduino: AD-Wandler ohne analogRead()
Klarer Quellcode: Bitoperationen auf Register
Переглядів 5414 роки тому
Klarer Quellcode: Bitoperationen auf Register
Arduino: mit dem Komparator Spannungen vergleichen
Переглядів 1,1 тис.4 роки тому
Arduino: mit dem Komparator Spannungen vergleichen
Was passiert im Detail, wenn im Arduino ein Interrupt ausgelöst wird?
Переглядів 7674 роки тому
Was passiert im Detail, wenn im Arduino ein Interrupt ausgelöst wird?

КОМЕНТАРІ

  • @mo7aZa
    @mo7aZa Місяць тому

    schönes video. Danke

  • @paulpreu2225
    @paulpreu2225 2 місяці тому

    In jedem Datenblatt steht Master-Slave... Als Lernender ist die Herangehensweise eher erschwerend... Ein Video in Atmel Studio zumindest die Initialisierung der Register bei nem AVR wäre ja mal sinnvoll. Das wären eher sinnvolle Gedanken um was lernen zu können

    • @EmbSys
      @EmbSys 2 місяці тому

      @@paulpreu2225 Nicht in jedem Datenblatt. Seit 2021 verwendet beispielsweise NXP in ihrer I2C Spezifikation die Begriffe "Controller" und "Target". Warum auch nicht, da kann ich gut mit leben.

  • @mcsroberto1
    @mcsroberto1 3 місяці тому

    Is there an option like this, but for the Arduino Mega?

    • @EmbSys
      @EmbSys 3 місяці тому

      @@mcsroberto1 As far as I know, the Aruino Mega already supports hardware debugging by itself. But I have never used a Mega, so I can't say it for sure.

    • @mcsroberto1
      @mcsroberto1 2 місяці тому

      @@EmbSys I bought the ATmega328P Xplained Mini board, but although my device administrator recognizes it as mEDBG Virtual COM Port, the Microchip Studio IDE does not recognize it, following your tutorial in the Tool part only Simulator and Custom Programming Tool appear as options, and following the User Guide i ´got stuck in the 2.3.1.2 Part

  • @lucianbetke
    @lucianbetke 3 місяці тому

    Sehr schade, dass die Corona-Zeit vorbei ist. Was alles in dieser Zeit enststanden ist, davon werden Lernwillige noch sehr lange etwas haben.

    • @EmbSys
      @EmbSys 3 місяці тому

      @@lucianbetke Freut mich, von Ihnen zu hören! Sind Sie mit Ihrem Projekt vorwärts gekommen?

    • @lucianbetke
      @lucianbetke 3 місяці тому

      @@EmbSys wir sind abgebogen. machen einen kleinen umweg. uns fehlten immer wieder grundlagen und das stört. dann sind auf auf prof. hild gestoßen und dachten 66 videos könnten weiterhelfen. es wird jede schaltung nachgebaut, jede herleitung verstanden und auch kleine seitenexperimente dazu gemacht. alles wird in einem selbstgeschriebenen buch festgehalten. oszi, signalgenerator und labornetzgeräte sind unsere f reunde geworden. dann kam noch ein 10 jähriger junge dazu, der auch was über elektronik lernen möchte. der junge mann hat talent, er ist autist und sieht die welt anders. für den entwickeln wir eigene aufgaben. sein mathe war gruselig, mit bruchrechnen sind wir angefangen, jetzt kann er gleichungen lösen. ja wir sind weitergekommen aber mehr was notwendige grundlagen angeht. sinusschwingungen erzeugen wir nicht mehr per code, pwm nicht mehr mit dem arduino, den brauchen wir für die regelungstechnik. 2 motoren können wir schon regeln. n motoren auch. wir sind jetzt bei experiment 60 die restlichen 6 schaffen wir auch noch. wie lange wir für die restlichen 33 brauchen können wir noch nicht sagen. die hardware für unser projekt haben wir auch schon, aber nix geht gut ohne grundlagen. jetzt kommt der hammer, wir haben fpga entdeckt und da natürlich auch schon ein halbes buch durch mit experimenten. sie lachen jetzt bitte nicht. aber meine frau wird sich in ki vertiefen, sie ist schon seit einem jahr dabei und macht jetzt ihre bacherlorarbeit darin. (das war die chemikerin), wir müssen uns zusammenreissen, das wir das thema nicht auch noch mit aufnehmen. also: ja unser experiment geht voran, aber anders als wir uns das am anfang vorgestellt haben.

    • @lucianbetke
      @lucianbetke 3 місяці тому

      @@EmbSys sollten sie ein thema suchen: trainieren sie eine ki auf das erstellen von elektronischen symbolen, gibt es noch nicht. meine frau hat schon nach trainingsdaten geschaut, das könnte eine bombengrundlage sein für das erstellen von schaltkreisen. sie werden jetzt lachen, aber wir ärgern uns über unsere fantasie und machen an der stelle auch nicht weiter....

  • @BlackVirtue
    @BlackVirtue 4 місяці тому

    Great! Literally the only person on the whole youtube who doesn't "speedrun" it by creating clunky exponentially growing frankensteins, but actually does maximum optimization with adequate commentary. Thanks.

  • @franhdez4711
    @franhdez4711 6 місяців тому

    Great instruction, really stepping up from Arduino IDE. Thanks from Spain.

  • @lucianbetke
    @lucianbetke 7 місяців тому

    Hallo an den Autor. Wir (altes Ehepaar) schauen beide Kanäle, sind begeistert und haben uns in einen von den beiden festgefressen. Es geht um die Kunstwerke von Prof. Hild. Wir bauen alle Experimente nach, machen Variationen und diskutieren darüber täglich. Inzwischen haben wir einen dritten Mitstreiter gefunden. Ein Junge, 10 Jahre alt, dem wir die notwendige Mathematik dafür beibringen. Ja, 10-Jährige können Gleichungen lösen und umstellen, wenn man das ordentlich erklärt. Leider sind wir Corona dankbar dafür, ohne Corona hätte es das nicht gegeben. Hild ist für uns ein Held in der Scene. Da einer von uns als Hobby studiert (Medizintechnik) warten wir darauf, bis eine Hochschule nur noch aus solchen Kursen besteht. Es wäre möglich und eine Revolution in der Bildung. In Deutschland erwarten wir das nicht. Mikroprozessoren sind wichtig, aber für eine Sinusschwingung benötigt man 3 Kondensatoren, 3 Widerstände, einen Transistor und Kenntnisse in Mathematik. Richtig böse sind wir nur, weil Prof Hild nur 100 Videos gemacht hat (ironisch). Wir überlegen täglich, wie man das ändern könnte.

  • @thomaskunz149
    @thomaskunz149 7 місяців тому

    Danke für deine Mühe...damit meine ich auch die ganzen anderen Videos zum Arduino wo du alles soo fundiert erklärst!

    • @EmbSys
      @EmbSys 7 місяців тому

      Vielen Dank, so ein netter Kommentar freut mich natürlich sehr!

  • @EmbSys
    @EmbSys 8 місяців тому

    In der aktuellen Version des NAND Game (2024) darf der STORE des zweiten Latch nicht mehr direkt angesteuert werden, sondern er muss mit dem nichtinvertierten CLOCK UND verknüpft werden. Meine hier gezeigte Lösung wird so nicht mehr akzeptiert.

  • @jensschroder8214
    @jensschroder8214 8 місяців тому

    sicher kann ein LED ohne Vorwiderstand an einer Stromquelle betrieben werden. Wenn du anders sicher stellst, das der Strom begrenzt wird. Zum Beispiel wenn du ein Kondensatornetzteil verwendest. Oder mit einem Transistor den Strom begrenzt.

    • @EmbSys
      @EmbSys 8 місяців тому

      Wer so ein gutes Verständnis von Spannung und Strom hat, wie Sie, darf meine LED natürlich gerne an einer Stromquelle betreiben.

  • @BergflitzerFoto
    @BergflitzerFoto 8 місяців тому

    Gut und voll umfänglich erklärt habe was dazu gelernt 🤗 Danke dafür !!!

    • @EmbSys
      @EmbSys 8 місяців тому

      Damit fängt der Spaß doch erst an. Jetzt wünsche ich fröhliches Stecken und viele funktionierende Schaltungen!

  • @En1Gm4A
    @En1Gm4A 8 місяців тому

    gene updaten und die code version noch dazu ergäzen :-D Top erklärt

  • @stefanwolf5646
    @stefanwolf5646 8 місяців тому

    Hallo, welche Widerstände sind besser: Kohlewiderstände oder Metalwiderstände ?

    • @EmbSys
      @EmbSys 8 місяців тому

      Metallschichtwiderstände haben eine geringere Toleranz, und der Widerstandswert ist temperaturstabiler. Siehe Wikipedia "Schichtwiderstand". Für die meisten Anwendungen sind Kohleschichtwiderstände jedoch völlig ausreichend.

  • @janhibiskus2845
    @janhibiskus2845 8 місяців тому

    Sehr gut erklärt, ein Anfänger bedankt sich ganz herzlich.

  • @janhibiskus2845
    @janhibiskus2845 8 місяців тому

    Sehr gut erklärt, ein Anfäger bedankt sich ganz herzlich.

    • @EmbSys
      @EmbSys 8 місяців тому

      Das freut mich! Ich wünsche viel Spaß und Erfolg, bei welchem Projekt auch immer.

  • @joergfoerster8043
    @joergfoerster8043 8 місяців тому

    2-V-LED an 5 V mit Vorwiderstand: Da geht wohl mehr Leistung am Vorwiderstand verloren, als die LED bekommt.

  • @joergfoerster8043
    @joergfoerster8043 8 місяців тому

    Die Erklärung ist korrekt, was Standard-LEDs betrifft. Ich habe mir kürzlich eine blinkende LED zugelegt, die in einem weiten Spannungsbereich funktioniert und da keinen Vorwiderstand braucht. Da ist natürlich eine integrierte Schaltung mit eingebaut.

  • @carstenengelhardt6080
    @carstenengelhardt6080 9 місяців тому

    Ich danke dir soooo sehr. Ich habe diesen Timer nicht verstanden. Wir haben dieses Thema seit 2 Monaten im Unterricht aber nicht ein bischen verstanden. Ein Video von dir hat gerreicht und ich verstehe jetzt alles. DANKE!

    • @EmbSys
      @EmbSys 9 місяців тому

      Das freut mich sehr! Für genau diesen Zweck habe ich die Videos aufgenommen. Ich frage mich nur: Schule? Studium? In welchem Unterricht befasst Ihr Euch monatelang mit Mikrocontrollern?

    • @kaosaron
      @kaosaron 9 місяців тому

      Olle ist ja auch Carsten hier, morgen Klausur nicht vergessen ;)

  • @daCount0
    @daCount0 9 місяців тому

    Wohin verschwinden den die Kommentare hier?

  • @daCount0
    @daCount0 9 місяців тому

    Erinnert mich ein wenig an das Projekt "von Nand zu Tetris" von israelischen Professoren.

  • @daCount0
    @daCount0 9 місяців тому

    Erinnert mich ein bißchen an das Projekt "von Nand zu Tetris" von israelischen Kollegen .

  • @daCount0
    @daCount0 10 місяців тому

    Danke wieder mal ... ihre Sachen sind meist Gold wert.

    • @EmbSys
      @EmbSys 10 місяців тому

      Danke, freut mich! Solche Kommentare bekommen von mir eindeutig Platinstatus! 😀

  • @daCount0
    @daCount0 10 місяців тому

    Coole Sache wie immer wenn hier ein Video kommt.

  • @Rolexx-hh3zv
    @Rolexx-hh3zv 10 місяців тому

    Endlich mal richtig gut verständliche Videos zu dem ganzen Thema <3 studiere gerade Elektrotechnik und muss echt sagen: Vielen Dank für diese tolle Erklärung, du bringst endlich Licht ins Dunkel

    • @EmbSys
      @EmbSys 10 місяців тому

      Danke! Freut mich, dass die Filmchen immer noch geguckt werden.

  • @audiophilssociety
    @audiophilssociety Рік тому

    Klasse erklärt und super Tipps und links! Vielen Dank!

  • @thorstenfricke3257
    @thorstenfricke3257 Рік тому

    Hi, kann ich das xplained mini auch mit Visual studio debuggen?

    • @EmbSys
      @EmbSys Рік тому

      Ich denke, das geht nicht. Lasse mich aber gerne vom Gegenteil überzeugen, falls jemand weiß, dass/wie es doch geht.

    • @thorstenfricke3257
      @thorstenfricke3257 Рік тому

      @@EmbSys ok danke

  • @lucianbetke
    @lucianbetke Рік тому

    Perfekt. Prof Hild hat einen Versuch mit zwei parallel geschalteten Widerständen gemacht. Ein wenig was zum Nachdenken. Aber hier ist nix ausgelassen worden zu den Werten einer Diode. Richtig pingelig, wir lieben das.

  • @lucianbetke
    @lucianbetke Рік тому

    wir kennen uns.. also eine Sache fehlt in der Erklärung. Wie erkennt man die rechte Seite? Es muss nicht immer gold und silber sein.

    • @EmbSys
      @EmbSys Рік тому

      Lange nicht mehr gehört, aber gleich mit Freude wieder erkannt! Für unser Praktikum ist es einfach, immer Gold. In der Praxis ist es tatsächlich oft nicht so gut zu erkennen. Meistens ist der Toleranzring etwas abgesetzt, manchmal auch unterschiedlich breit. Man kann das mit anderen Widerstandswerten gleicher Bauart vergleichen, und vielleicht über ungewöhnliche Farben ausschließen, dass es sich um den Toleranzring handelt. Wenn selbst das nicht eindeutig ist, hilft nur eine Messung oder, falls verfügbar, der Blick ins Datenblatt.

    • @lucianbetke
      @lucianbetke Рік тому

      @@EmbSys Stimmt der Toleranzring hat einen größeren Abstand bei 4 Ringen zu den übrigen Ringen. Bei 5 Ringen hat der Toleranzring einen größeren Abstand zum Rand des Widerstandes. Wir haben uns auch weiterentwickelt. Prüfung für Digitaltechnik ist nächste Woche. Basiswissen wird durch die Experimente bei Prof. Hild erweitert und FPGA wird auch gerade erobert. Alles mit praktischen Beispielen. Corona hatte etwas gutes. UA-cam ist zur Fundgrube an Wissen geworden. Mein Gatte, das Spielkind, hat eine portable Experimentierkiste gebaut, damit er die Experimente auch im Cafe machen kann. :-). Vielen Dank für ihre Videos, sie sind ein Teil vom Ganzen bei uns geworden und wir sind noch lange nicht fertig.

  • @daCount0
    @daCount0 Рік тому

    Finde es ganz toll, dass Leute wie sie sich in der Krise hier eingefunden haben. Man spürt da gleich ein anderes level an professioneller Lehre was man halt nur auf Unis sieht und auch dort muss man Glück haben. Ich habe die Kommunikation auf einigen ihrer Beiträge hier gelesen und muss sagen Hut ab und danke. Irgendwie beneide ich ihre Studenten ein wenig. Ich hoffe sie können im Studienstress auch die Qualität die ich hier sehe ein wenig genießen.

    • @EmbSys
      @EmbSys Рік тому

      Danke für den freundlichen Kommentar! War eine wilde Zeit, und ich bin froh, dass sich die Lage mittlerweile wieder beruhigt hat.

  • @Gamuss12345
    @Gamuss12345 Рік тому

    Super Video! Hat uns unser Prof empfohlen :)

    • @EmbSys
      @EmbSys Рік тому

      Das freut mich! Darf ich fragen, um welchen Studiengang und welches Fach es sich handelt?

    • @Gamuss12345
      @Gamuss12345 Рік тому

      @@EmbSys Ich studiere Angewandte Informatik im ersten Semester! Das Fach nennt sich "Technische und logische Grundlagen der Informatik" und macht mir extrem viel Spaß! Gerade Digitaltechnik/Elektrotechnik :) Überlege aber hin und wieder, zu Elektrotechnik zu wechseln, da mir das Programmieren relativ schwer fällt.

  • @PascalDeSilva
    @PascalDeSilva Рік тому

    Super video!

    • @EmbSys
      @EmbSys Рік тому

      Thank you very much! (Hat UA-cam als Antwort vorgeschlagen. Ich hätte es eher auf deutsch gesagt, aber warum nicht?)

    • @PascalDeSilva
      @PascalDeSilva Рік тому

      @@EmbSys Dann verstehen es alle ;)

  • @randallyoung6715
    @randallyoung6715 Рік тому

    Thank you, great vid and very useful.

  • @hanspeterbestandig2054
    @hanspeterbestandig2054 Рік тому

    Guter Beitrag! Ich habe noch vier Tipps: 1) gut, dass *single precision* float verwendet wird! Dann bitte den floating Point konstanten ein ,.f' anhängen, sonst wird der Compiler die Konstanten als *double* betrachten und dementsprechend *double precision calls* verwenden (was unnötig 'teuer' (Rechenaufwändig) ist) und implizit das Ergebnis von double nach float casten. 2) Eine Multiplikation mit dem *Kehrwert* (1.f/1000.f) geht *immer* schneller, weil µCs wesentlich schneller multiplizieren können, als dividieren... (Multiplikation häufig 1(!) CPU Takt in HW vs. 16...64 Takte in HW für einen Integer Division (je nach Implementation und bitbreite der Operanden) bis zu einigen hundert Takten, in SW, wenn kein HW Dividier vorhanden ist...). Sämtliche Atmega µCs haben einen 1 Cycle Integer Hardware Multiplier für 8 x 8 bit Werte. aber KEINER davon HW unterstütze DIvisionslogik in der ALU. AFAIR haben erst die XMEGAs einen HW beschleunigte ALU für Divisionen. Die ARM-Cortex-M0 haben alle HW beschleunigte MUL Units aber keiner eine für Divisionen -> muss in SW passieren. Erst ab dem Cortex-M3 kommen die ins Spiel... 3) verwende sinf(float) (mit dem 'f' hinten) statt sin(double), weil sin(double) intern double verwendet (wieder teuer) 4) Den Ausdruck 2*M_PI*f*millis()/1000 möglichst so umschreiben: *const* float omegaT = (2.f / 1000.f) * float(M_PI) * millis() umschreiben. durch das const gibt man dem Compiler den Hinweis, dass dieses Zwischenergebnis nicht mehr verändert wird und er hier optimieren darf. und man löst ausserdem die o.g. Division auf, indem man die 2.f/1000.f schon als (multiplikative) Konstante in den Term bringt... ...und da der term 2.f / 1000.f ja ein constant Expression ist, wird der Compiler die schon während der Compilezeit auf die *konstante floatzahl* 0.002f (=1/500) umbauen und als Multiplikator verwenden -> Umwandlung der (teuren) Division in eine wesentlich schnellere Multiplikation. Oh, ich sehe gerade, dass die avrlib und der GCC für die AVR Prozessoren den Datentyp double gar nicht wirklich als solchen unterstützen, sondern implizit auf ein IEEE 754 single precision float abbilden. Daher sind dort alle mathematischen Funktionen, die Double verlangen (sin(double), cos(double), tan (double), exp(double), log(double) …), aber auch als eigentlich schnellere f-suffix (sinf(float), cos(float), tanf(float), expf(float), logf(float)...) vorhanden sind, identisch mit den -f typen... Dennoch sollten die o.g. Maßnahmen berücksichtigt werden, denn wer weiss, auf welcher Architektur / Umgebung das Programm als nächstes läuft? ;-) Und eine Multiplikation ist *immer+ schneller als eine Division. Das liegt schon in der Sache begründet, dass sich eine Division sukzessive annähert und daher auch semantisch als solche *iterativ* implementiert werden muss (auch in HW!). Eine Multiplikation kann (durch zus. Hardware) auch in nur *einem* Rechenschritt umgesetzt werden.

    • @EmbSys
      @EmbSys Рік тому

      Wertvolle Hinweise und Tipps! Ich wollte die Formel sin(Omega*t) möglichst eins zu eins in Code übersetzen, dass das für die Rechenleistung nicht optimal ist, habe ich nicht gesehen. Werde aber in Zukunft verstärkt darauf achten. Auch sinf hatte ich bisher nicht auf dem Schirm, obwohl das durchaus Sinn macht. Dass die Atmel 8 Bit kein double kennen, hatte mich seinerzeit auch ziemlich verblüfft. Mir fällt jetzt aber auf die Schnelle keine Anwendung ein, für die float zu ungenau ist, und die trotzdem möglichst auf 8 Bit ausgeführt werden sollte. Danke fürs konstruktive Mitdenken!

  • @hanspeterbestandig2054
    @hanspeterbestandig2054 Рік тому

    ...oder wenn man richtig schnelle Sinuswerte erzeugen will, dann legt die schon auf einem PC vorab berechneten Sinuswerte von 0 ... 0.5*PI (0...90°) in einem static const float Array ab (static const, damit sie später im FLASH liegen). Wie ein Tabellenbuch und schreibt sich eine Funktion, die die dann für 0...PI/2 abruft. Für den Bereich PI/2...PI muss dann eben der Index-vom Ende genommen werden und für PI ... 2*PI (die negative Halbwelle) = nimmt man die soeben entwickelte bestehende Funktion (0...PI) nur indem man vom Winkel dann 1 x PI abzieht - also so wieder in den Bereich 0...PI kommt - und dann das Ergebnis negativ macht (*negative* Halbwelle)

    • @EmbSys
      @EmbSys Рік тому

      Danke fürs Mitdenken, sehr richtig! Fast genauso ist es letztlich geworden, nur dass ich passende ganzzahlige Werte abgelegt habe. Und den Firlefanz mit dem Vierteln der Vollwelle habe ich mir gespart, denn der Platz war mehr als ausreichend. In diesem Short geht es hauptsächlich um die Messung der Dauer, da kommt so eine Sinusberechnung zur Laufzeit gerade recht.

  • @hanspeterbestandig2054
    @hanspeterbestandig2054 Рік тому

    Warum wird mein konstruktiver Kommentar immer sofort gelöscht?! 😟 Eine Erklärung bitte! 😮

    • @EmbSys
      @EmbSys Рік тому

      Merkwürdig. Ich habe mich jedenfalls darüber gefreut, und bestimmt nichts gelöscht. War vielleicht ein Link dabei?

    • @hanspeterbestandig2054
      @hanspeterbestandig2054 Рік тому

      Hallo, Dankeschön für die nette Nachricht!😀 Hmm, nein es war wohlweislich kein Link drin, weil mir bekannt ist, dass der YT Spam-Bot solche Nachrichten gleich automatisch löscht. Es war eigentlich der selbe Betrag wie oben. Habe ihn gepostet, dann war er vielleicht eine Minute sichtbar und dann „schwuppdiwupp“ war er verschwunden. Das Ganze habe ich dreimal wiederholt und immer das Selbe! Lustig, ich dachte dann, das sind Sie und schrieb dann diesen Post… Danach habe ich das „Du“ als Anrede rausgenommen - weil ich schon dachte, Sie würden ihn deswegen löschen - und dann blieb der Post! Und auch die beiden Anderen… ☺️ Naja, sei‘s drum: Nun passt es ja und ich bin Ihnen offensichtlich nicht auf den Schlips getreten! 😀 UA-cam wird mir immer unheimlicher… 🥺 Vielleicht mögen mich die Zensoren nicht mehr, seit ich Werbung als gewaltverherrlichend melde, die so komische Computerspiele zeigen, bei denen man Menschen die am Galgen hängen mit einem Pfeil befreien soll und es dann „lustig“ sein soll, wenn man aus Versehen den zu Befreienden mit dem Pfeil trifft… UA-cam macht für dieses zweifelhaft „lustige“ (und ähnlich andere „Spaß-Spiele“ ähnlicher couleur) ja fleißig Werbung, was ich persönlich -abartig- abstoßend finde und das tue ich den Sittenwächtern von UA-cam auch immer Kund, wird mal wieder dafür Werbung gezeigt… Damit habe ich mich wohl „unbeliebt“ gemacht, weil ich deren Finanzierung kritisiere? 🙄 Naja, Geld stinkt bei UA-cam offensichtlich nicht… Aber das ist ein anderes Thema dieser Bigotten Industrie… 😉

    • @hanspeterbestandig2054
      @hanspeterbestandig2054 Рік тому

      @@EmbSys Übrigens sah ich gerade, dass tatsächlich mein Beitrag von heute Früh schon wieder wie von Geisterhand gelöscht wurde... :-( Ich versuche es nochmal...

    • @EmbSys
      @EmbSys Рік тому

      @@hanspeterbestandig2054 Den Beitrag, der mit …oder anfängt und mit Halbwelle) aufhört, den kann ich sehen. Geht es um einen anderen Beitrag?

    • @hanspeterbestandig2054
      @hanspeterbestandig2054 Рік тому

      @@EmbSys Es ist zum Mäuse melken! Ich schaffe es nicht, hier meinen Kommentar zu posten! Er steht drin und nach ca. 10 Sekunden ist er wieder gelöscht!

  • @ge6364
    @ge6364 Рік тому

    Einfach Klasse! (: Der Kanal hätte viel mehr Aufmerksamkeit verdient.

  • @dominikholl7903
    @dominikholl7903 Рік тому

    Danke. Kuss

  • @thomasholda513
    @thomasholda513 Рік тому

    Super!!

  • @viktorlowen5811
    @viktorlowen5811 Рік тому

    Warum zeigt ihr alle einen Oszillograf am Tisch mit einem Labor Gerät oder ähnliches? Zeigt doch Mal bitte an eine Auto. Zb. Kurbelwellen Sensor in Verhältnis zum Nockenwellen Sensor. Wie da die Signale und Zeiten sind.

    • @EmbSys
      @EmbSys Рік тому

      Ja. Warum eigentlich?

  • @fullpower8382
    @fullpower8382 Рік тому

    Du hast digitalRight :D

    • @EmbSys
      @EmbSys Рік тому

      Klingt lustig, Danke!

    • @fullpower8382
      @fullpower8382 Рік тому

      @@EmbSys Etwas nerdig aber ja finde ich auch. :D gerne

  • @henkomenko
    @henkomenko Рік тому

    danke sehr gut erklärt

    • @EmbSys
      @EmbSys Рік тому

      Oh, freut mich!

  • @thefront5871
    @thefront5871 Рік тому

    SOLD!! LMFAO!!

    • @EmbSys
      @EmbSys Рік тому

      Microchipdirect: 1200 in stock.

    • @thefront5871
      @thefront5871 Рік тому

      @@EmbSys Already bought yesterday! $25.54 with shipping and handling to be delivered on Jan. 6th! I'm also looking at a ESP-PROG board and maybe even ARM chips in a month or two.

  • @LowPowerCell
    @LowPowerCell Рік тому

    Danke für die Reihe bin gerade dabei die Funktionsweise des 6502 bzw 6510 zu verstehen da kann man schön die I/O controller nachbauen mal sehen was noch kommt

    • @LowPowerCell
      @LowPowerCell Рік тому

      Aber warum kann man nicht einfach das carry(flag) setzen dann braucht man doch weniger NAND-Gatter?

    • @EmbSys
      @EmbSys Рік тому

      @@LowPowerCell Freut mich, dass endlich einmal ein Kommentar zur NAND-Game Reihe kommt. Auf welche Zeitmarke im Video bezieht sich Deine Frage? Vielleicht kann ich dann antworten.

    • @LowPowerCell
      @LowPowerCell Рік тому

      @@EmbSys 3:48 aber ich glaube das es sonst zu weit gehen würde und es eher was mit Status-Register zu tuen hätte

  • @randomdude506
    @randomdude506 Рік тому

    Sehr informatives Video 👍🏼. Auch die Website auf die Sie am Schluss verwiesen haben ist sehr hilfreich

  • @keen2461
    @keen2461 Рік тому

    Didn't understand a word he said!

  • @BerndRiedlinger
    @BerndRiedlinger Рік тому

    Gibt es ähnliches wie das Xplained Mini auch passend für einen Arduino Due?

    • @EmbSys
      @EmbSys Рік тому

      Mit dem Due habe ich nie gearbeitet. Wenn ich mich nicht täusche, ist damit das Hardware Debugging ohnehin möglich.

  • @sebastianspyra9286
    @sebastianspyra9286 Рік тому

    Ich möchte mich dem Lob der Vorredner:innen gerne anschließen. Deine unaufgeregte, überlegte und souveräne Art macht es zur Freude, Dir zuzuhören und zuzusehen. Viele UA-camr:innen, die erst beim Reden nachdenken, können sich von Dir mindestens eine Scheibe abschneiden. Vielen Dank für Deine Arbeit, die den Einstieg in dieses Thema zur Freude macht.

  • @maxhuber9980
    @maxhuber9980 Рік тому

    Hi können Sie den Code hier in die Kommentare schicken und mich taggen, da ich genau das für ein wichtiges Projekt brauche und selbst keine Lösung finde. Das wäre sehr nett von Ihnen. LG

    • @EmbSys
      @EmbSys Рік тому

      Mach ich gerne, muss ich aber erst raussuchen und vorbereiten. Ich hoffe, morgen reicht noch. Was für ein Projekt soll es denn werden?

    • @EmbSys
      @EmbSys Рік тому

      Hier mein Code. Falls es Fragen gibt, bin ich gerne für Sie da. gigamove.rwth-aachen.de/de/download/ae38bda503a6fd742234199af5e463aa

    • @maxhuber9980
      @maxhuber9980 Рік тому

      @@EmbSys Hallo danke Ihnen. Das passt ich mach für die Schule eine "Grundlagenforschung" über Active Noise Cancelling.

    • @EmbSys
      @EmbSys Рік тому

      Hört sich spannend an. Viel Erfolg!

  • @dennishamann3757
    @dennishamann3757 Рік тому

    Finde auch, dass es sehr gut erklärt ist. In welchen Bereichen arbeiteten Sie als Entwicklungsingenieur ?

  • @BadZocker13
    @BadZocker13 Рік тому

    Moin,wie wird das sinus signal für die Orgel Nutzbar gemacht? Wie wird es verstärkt?

    • @EmbSys
      @EmbSys Рік тому

      Eine Hammondorgel erzeugt die Töne elektromechanisch über viele 'Zahnräder', die sich auf einer gemeinsamen Welle drehen. Die Drehzahl dieser Welle bestimmt die Frequenz aller Töne, mein Sinussignal sollte verstärkt werden und dann der Motor damit betrieben werden.

    • @BadZocker13
      @BadZocker13 Рік тому

      @@EmbSys Ja genau, aber wie wird das Signal verstärkt, damit der motor damit betrieben werden kann? Was sitzt zwischen arduino und Motor?

    • @EmbSys
      @EmbSys Рік тому

      Geplant war eine handelsübliche analoge Audio-Endstufe. Es hat sich aber gezeigt, dass ein sauberes Sinussignal für einen ruhigen Motorlauf nicht nötig ist, daher wird der Motor jetzt mit einem Rechtecksignal (mit Totzeit) angesteuert. Dazu genügt eine einfache H-Brücke.

    • @BadZocker13
      @BadZocker13 Рік тому

      @@EmbSys Vielen Dank. Ich habe vor etwas ähnliches zu bauen. Zum verstärken hatte ich auch überlegt eine Audio endstufe zu nehmen, aber ich wollte mich mal ein bisschen umschauen, wie andere das gelöst haben.

    • @EmbSys
      @EmbSys Рік тому

      @Geskordon Habe gerade Deinen YT Kanal angesehen und herzlich über das Bratwurst-Brat-Gerät lachen können! Wie kommst Du eigentlich auf über 300 Abonnenten, ohne eigene Uploads?