YAHOO! Börsenticker
Komponenten und Verbrauchsmaterialien
| × | 1 | ||||
| × | 1 | ||||
| × | 12 | ||||
| × | 5 |
Notwendige Werkzeuge und Maschinen
|
Über dieses Projekt
Für dieses Projekt benötigen Sie eine Python 2.7-IDE. Ich empfehle die Verwendung von Enthought Canopy für dieses Projekt. Als nächstes benötigen Sie die Yahoo Finance API-Bibliothek. Geben Sie dazu Folgendes ein:
pip install yahoo_finance
in Ihre Eingabeaufforderung oder Shell. Installieren Sie außerdem PySerial für die Kommunikation mit Ihrem Arduino. Typ:
pip install pyserial
in Ihre Eingabeaufforderung. Kopieren Sie dann den Code und fügen Sie ihn in den Editor ein. In der Liste Aktiennamen können Sie beliebige andere Aktiennamen hinzufügen. Stellen Sie sicher, dass die serielle Schnittstelle mit der Ihres Arduino-Boards übereinstimmt, sonst wird keine Verbindung hergestellt. Sie können dies in der Zeile bearbeiten, die besagt:
ser =serial.Serial('COM
Öffnen Sie als Nächstes Ihre Arduino-IDE, um Ihren Code zu kopieren und in den Editor einzufügen. Von dort einfach hochladen und genießen!
Wenn Sie Lust haben, habe ich ein 3D-gedrucktes Gehäuse für das LCD verlinkt.
Code
- Python-Seite für Aktienticker
- Arduino-Seite für Börsenticker
Python-Seite für AktientickerPython
Sie können es einfach in eine Python-IDE kopieren und einfügen.from yahoo_finance import Shareimport timeimport serialStockShares =['DOW','YHOO','BAC','F','JPM','TWTR','CHK' ,'PBR','FIT','COG','ABX','FCX','GE','TRGP','CNX','BSX','MRC','NKE','NEM',' PBRA','HST','BP','MRK','HON','MET','CLR','WPX' \,'EXC','JCP','YELP','GNC','TSLA ','VRX','P','NFLX','CMG','SM','WYNN','SHAK','ICON']ser =serial.Serial('COM1',9600)def printShare(share ,name):ser.write(name + ':*' + share.get_open()+','+share.get_price()) print name + ':*' + share.get_open()+','+share .get_price() time.sleep(.1)def mainProgram():für i in StockShares:name =is =Share(i) printShare(s,name) s.refresh() time.sleep(9.5) mainProgram()mainProgram ()
Arduino-Seite für AktientickerC/C++
Einfach auf ein Arduino Board hochladen.#includeString str ="";float o;float c;String s;LiquidCrystal lcd(12, 11, 5, 4, 3, 2);void setup () { // Geben Sie Ihren Setup-Code hier ein, um ihn einmal auszuführen:Serial.begin(9600);lcd.begin(16, 2);lcd.setCursor(0,0);delay(1000);}void loop() { // Geben Sie Ihren Hauptcode hier ein, um ihn wiederholt auszuführen:if (Serial.available ()> 0) { s =Serial.readStringUntil ('*'); o =Serial.parseFloat(); c =Serial.parseFloat(); }lcd.print(s + "open:" + o);lcd.setCursor(0,1);lcd.print("current:");lcd.print(c);delay(2000);for (int positionCounter =0; positionCounter <17; positionCounter++) {lcd.scrollDisplayLeft();delay(200);}delay(500);lcd.clear();lcd.setCursor(0,0);lcd.print("change:" );lcd.print(co);delay(2000);for (int positionCounter =0; positionCounter <17; positionCounter++) {lcd.scrollDisplayLeft();delay(200);}lcd.clear();}
Kundenspezifische Teile und Gehäuse
Ein wirklich schönes LCD-Gehäuse von http://www.thingiverse.com/thing:614241Schaltpläne
Verbinden Sie wie es ist.Herstellungsprozess