[Powered by Google Translate] CHRISTOPHER BARTHOLOMEW: So haben Sie wahrscheinlich schon gehört ein viel über Arduino, und all die brillanten Möglichkeiten könnte es sein, programmiert C zur Eingabe von peripheren Geräten empfangen wie Knöpfe, Sensoren und Regler. Oder anzuzeigen und zu steuern Ausgang durch physikalische Komponenten wie Licht, Lautsprecher, Servos und Motoren. Aber was ist ein Arduino, wirklich? Ein Arduino ist eine Art von Mikrocontroller und eine Mikrocontroller kann als ein sehr verkleinert gedacht werden Computer, der Komponenten wie ein enthält Prozessor, geringe Mengen an Speicher zum Speichern einfache Programme und verschiedene Eingabe / Ausgabe-Pins, die produzieren ein elektrischer Strom durch Anweisungen in Ihrem Programm. Die Stifte auf einem Arduino sind hier die Schnittstelle mit dem physikalischen Komponenten wie LEDs, Lautsprecher, Sensoren, Motoren, und so vieles mehr. Dies ist ein Arduino Uno R3, die wir verwenden werden während des Kurses. In diesem Video werde ich gehen über nur einige der wichtigsten Bestandteile dieses Board. Allerdings, wenn Sie weitere Informationen wünschen, dem empfehle ich Sie lesen, besuchen Sie den Link für den Arduino Uno vollen Spezifikation. Power für den Vorstand kann von USB, externe AC empfangen werden DC-Stromversorgungen oder durch Batterie-Anschlüsse. Für diese Video-Übungen, wir werden mit USB für die Stromversorgung. Wenn Sie auf andere Weise daran interessiert, Macht, Ihr bietet Arduino-Board oder wollen mehr über die Power-Pins wissen, entnehmen Sie bitte dem Leistungsteil der Spezifikation Link. Weiter gibt es zwei Haupt-Zapfenabschnitte auf einem Arduino dass wir verwenden wird, um Spannung zu unserer Komponenten bieten - digitale Stifte und analogen Eingangs-Pins. Bevor wir weiter gehen, lass uns Verständnis dieser beiden Begriffe. Analogeingang Stifte sind für Komponenten wie Regler, welche erstellen analoge Signale. Ein Knopf können verschiedene Mengen an Beständigkeit gegenüber Spannung zwischen den beiden Stiften, dass er angeschlossen ist. Nehmen wir zum Beispiel einen Dimmer. Wenn der Knopf in einer Richtung gedreht wird, wird das Licht heller, da der Widerstand nachlässt. Dies liefert eine stärkere elektrische Strom an die Komponente, die in einem helleren Licht führt. Jetzt die digitalen Stifte sind etwas anders, dass sie produzieren ein digitales Signal, abhängig von der ist Spannungsmenge zwischen den Stiften. Digitale Signale für den Arduino sind entweder an 5 Volt oder Masse bedeutet ausgeschaltet oder null Volt. Nehmen Sie zum Beispiel ein Lichtschalter. Ein Lichtschalter hat zwei Werte - und ausgeschaltet. Wenn Sie das Licht einschalten über den Schalter, du bist Bereitstellung volle Leistung an diesem Licht. Nun, über das Thema der digitalen und analogen, bin ich sicher Sie haben inzwischen die Abkürzung PWM unter der digitalen bemerkt Pin Abschnitt. Dies steht für Pulse Width Modulation. PWM manipuliert die Spannung über die Zeit zu produzieren Modulations-Effekte, die ähnlich denen sind der analogen Pins. Beispielsweise durch Ausschalten einer Lichtquelle und aus, zum unterschiedlich lang, kann sie steuern die Lichts Helligkeit. So könnten Sie sich fragen, wenn alles, was Sie haben Sie ist eine Spannung bis zu einem gewissen Komponente bereitzustellen, damit es funktioniert, Deshalb haben sogar einen Mikrocontroller? Nun, lassen Sie uns einen High-Level-Blick auf einen Mikrocontroller, können wir mit täglichen interagieren - der Wecker. Der Wecker hat viele Eingänge, zum Beispiel Knöpfe, die verwendet werden, um mit dem Wecker zu interagieren. Es hat auch Ausgänge, die Licht emittierenden Schaltungen genannt sind Sieben-Segment-Displays, die die Zeit zeigen. Dies alles wird durch ein Programm, das in einem Gehäuse mit gesteuert wird Mikrocontroller-Speicher. Nun, lassen Sie uns einen Blick auf ein Szenario und sehen, ob wir replizieren den Wecker mit diesem Arduino. Du bist bereit, schlafen zu gehen, aber Sie müssen Ihre gesetzt Alarm aufzuwachen. Wir wissen, dass durch die Verwendung von Tasten können wir einige gesetzt Variable Zeit, gibt das Programm eine Bedingung erfüllen muss. Wie wenn diese Zeit wahr ist, sollte das Programm senden ein Signal an einen anderen Stift, der an einen Lautsprecher angeschlossen ist. Und wenn dieses Signal durch den Sprecher empfangen wird, sollte einen schrecklichen Klang spielen. Lassen Sie uns eine einfache Schaltung, um Ihnen etwas Kontext zu dem, was Ich rede. Also jetzt, dass Sie Ihren Wecker eingestellt ist, wird Ihr Zustand nun gespeichert in das Programm Speicher. Und nach nur neun Sekunden von Schlaf, hören Sie die schreckliche Alarmgabe entfernt. Ich werde weitermachen und Plug-in unserem Alarm hier. Nun, wir wollen nicht aufstehen ganz noch, so fühlen wir uns für die Snooze-Taste. Wir lassen den schlafenden Schüler halt, oder unterbrechen diese schreckliche Alarmton, nur durch Schlagen diese Schaltfläche. Aber was wirklich passiert, wenn der Mikrocontroller-Programm ein Signal von der Snooze-Taste? Nun, wenn die Snooze-Taste gedrückt wird, ist ein Signal erhielt auf einem anderen Stift. Im Allgemeinen, wenn das Programm empfängt diese Eingaben von der Pin reagiert indem eine Funktion zu verzögern, oder schlafen, das Signal, das unser Redner Pin gesendet wurde. Diese Verzögerung oder Schlaf ist für eine Konstante der Zeit, welche ist in der Regel etwa neun Minuten oder in Arduino Begriffe, 540.000 Millisekunden. Wenn der Wecker nicht aus, bevor die Schlummerfunktion eingeschaltet Timer verbraucht, wird das Programm den Zustand senden anderes Signal an den Lautsprecher mit den Pins, so drehen der Alarm erneut. Nun, was macht Arduino besonderen CS50 ist seine Entwicklungsumgebung verwendet die Programmiersprache C, so dass Sie die Macht, Wissen anzuwenden gewonnen in einer direkteren auf spielerische Weise. Obwohl wir nicht auf die anderen spezielle Stifte berühren beteiligt mit dem Arduino, empfehle ich Ihnen den Besuch Spezifikation und lesen Sie über ihre Fähigkeiten weiter. In einem anderen Video, werden wir die Arduino Entwicklungsumgebung auf dem CS50 Gerät und schreiben unsere erste Mikrocontroller-Anwendung. Mein Name ist Christopher Bartholomew, ist dies CS50.