Ich bin ein Anfänger im Elektronik-Hacking. Ich möchte wissen, wie ich eine Schaltung mit einem PC kommunizieren lassen kann. Nehmen Sie zum Beispiel eine einfache Schaltung mit einer LED und einem Schalter. Der Schalter an der Schaltung wird jedoch nicht zur Steuerung der LED verwendet. Durch Drücken wird der aktuelle Status der LED angezeigt. Auf meinem Computer läuft ein Programm, das eine Benutzeroberfläche, eine Schaltfläche und ein Grafikobjekt enthält. ein schwarz gefüllter Kreis.
- Ich sollte in der Lage sein, die LED von meinem Computer aus ein- und auszuschalten, indem ich auf die Schaltfläche auf dem Bildschirm klicke.
- Durch Drücken des Schalters auf der Platine sollte dem Programm der Status der LED mitgeteilt werden. Wenn die LED leuchtet, sollte der schwarze Kreis grün werden, andernfalls sollte er schwarz werden.
Dies ist eine hypothetische Situation, die ich beschrieben habe, um das Problem zu erklären. Ich bin nicht auf der Suche nach einer Lösung, um diese Sache zu implementieren, sondern möchte wissen, wie diese Kommunikation zwischen meiner Schaltung und dem Computer auf einfache und kostengünstige Weise erreicht werden kann
- Draht?
- kabellos?
Und wenn Sie vorschlagen könnten, wo ich suchen und was ich lernen sollte, um mit meinem Elektronikprojekt zu beginnen, wäre das eine große Hilfe.
quelle
Holen Sie sich das Buch "Making Things Talk" von Tom Igoe: http://oreilly.com/catalog/9780596510510
Es geht nicht um Sprache, es geht um all die verschiedenen Methoden, mit denen Ihre verschiedenen Geräte - z. B. Ihr Computer und Ihre Schaltung - miteinander sprechen. Darin finden Sie die wichtigsten Details aller Methoden, die in den anderen Antworten beschrieben werden, einschließlich Schaltplänen und Quellcode (falls zutreffend).
Wenn Sie einige oder alle verschiedenen Möglichkeiten dazu erlernen möchten, könnten Sie keinen besseren Ausgangspunkt haben.
quelle
Python + FT245
Löschen Sie das PyUSB- Modul, und plötzlich sind nur noch drei Zeilen (also vier, wenn Sie den Import einschließen) Code erforderlich, damit Python über 8 parallele E / A-Zeilen mit dem Meatspace kommuniziert.
Es ist ein kinderleichtes paralleles E / A aus einer Hochsprache.
Als Bonus kostet die Hardware insgesamt 17,95 USD
quelle
Schauen Sie sich die TI Chronos an
TI macht diese fantastische 16-Bit-Mikrocontroller-Familie basierend auf dem MSP430-Chip. Eine Variante dieses Chips ist der CC430, in dessen Paket drahtlos integriert ist.
Die Chronos sind ein "Entwicklungsboard", das sie für 49 Dollar verkaufen. Es kommt in einem Armbanduhr-Formfaktor (den ich jeden Tag benutze, er ist sogar außerhalb der Geek-Welt in Mode :-)) Es kommt auch mit zwei USB-Dongles, einer für den JTAG (Programmierer) und einer für das drahtlose Gegenstück.
Eines der Beispiele im Devboard ist die drahtlose Steuerung der Maus mit der Uhr, was ziemlich cool ist. Die Uhr wird außerdem mit Beschleunigungsmesser, Barometer (Höhensensor) und Thermometer geliefert.
quelle
Kabelgebunden oder drahtlos ist heutzutage ziemlich einfach. Sie können Bluetooth-Kits erhalten, mit denen Sie bereits E / A erhalten, und Sie können auch sehr kostengünstige USB-E / A-Karten kaufen. Was Sie verwenden möchten, hängt ganz von Ihren Anforderungen und Ihrem Budget ab.
http://www.hexwax.com/Products/expandIO-USB/
So etwas (hat es nie benutzt, keine Zugehörigkeit zum Unternehmen) würde Sie wahrscheinlich sehr schnell und mit minimalem Aufwand zum Laufen bringen. Sie scheinen bei Digikey und Mouser und wahrscheinlich auch bei anderen erhältlich zu sein.
quelle
Angenommen, Ihr PC verfügt über eine serielle Schnittstelle, können Sie einfach den USART auf dem Chip und einen RS-232-Transceiver verwenden, um zwischen dem Chip und dem PC zu kommunizieren. Wenn Ihr PC keinen seriellen Anschluss hat, sollten Sie in einen USB <-> RS-232-Konverter investieren.
quelle
Wenn Sie hauptsächlich daran interessiert sind, es schnell zum Laufen zu bringen, gibt es eine Reihe von USB-basierten digitalen E / A-Kits, die Programmierbibliotheken zum Lesen / Schreiben der Pins enthalten. Im Gegensatz zur Arbeit mit Arduino oder anderen Mikrokarten müssen Sie sich nur um die Programmierung des PCs kümmern (anstatt den auf der Mikrocontroller-Karte ausgeführten Code schreiben und debuggen zu müssen).
Früher war die Verkabelung der Ein- und Ausgänge über den Joystick oder den parallelen Anschluss eines PCs der richtige Weg. Aber das war in den Tagen von DOS und Windows bis zu ungefähr Windows 95. Seitdem ist es immer schwieriger geworden, direkt auf die Register zuzugreifen, um auf die Hardware zuzugreifen. Das heißt, es ist immer noch machbar - Sie müssen nur durch Programmierrahmen springen, um zu diesen Pins aus Ihrem Programm zu gelangen. Das Laptop-Dock meines ThinkPad verfügt beispielsweise über den parallelen Anschluss im Legacy-Stil und wird vom Betriebssystem weiterhin unterstützt, falls ich mich für den Anschluss eines LaserJet II entscheide. :) :)
quelle
Es gibt einige nette einfache USB-Geräte, die dies tun können, zum Beispiel den Kadtronics USB Digital I / O Commander .
quelle
Ihre schnellste und einfachste Methode hierfür ist Labview und die zugehörigen USB-E / A-Geräte. Das ist natürlich nicht billig (Tausende von Dollar). Was Sie beschreiben, ist kein Einstiegsniveau, definitiv kein "Hallo Welt" -Niveau.
Abgesehen davon, dass Sie so viel Geld ausgeben, ist es wahrscheinlich am besten, wenn Sie ein Arduino verwenden, mit Ihrem Programm über eine serielle Verbindung kommunizieren und das Arduino das Licht ein- und ausschalten lassen.
quelle