YAHOO ! Téléscripteur
Composants et fournitures
| × | 1 | ||||
| × | 1 | ||||
| × | 12 | ||||
| × | 5 |
Outils et machines nécessaires
|
À propos de ce projet
Pour ce projet, vous aurez besoin d'un IDE Python 2.7. Je recommande d'utiliser Enthought Canopy pour ce projet. Ensuite, vous aurez besoin de la bibliothèque d'API Yahoo Finance. Pour cela, tapez :
pip installer yahoo_finance
dans votre invite de commande ou shell. De plus, installez PySerial pour communiquer avec votre Arduino. Tapez :
pip install pyserial
dans votre invite de commande. Copiez et collez ensuite le code dans l'éditeur. Dans la liste Noms d'actions, vous pouvez ajouter tout autre nom d'action que vous souhaitez. Assurez-vous que le port série est le même que celui de votre carte Arduino, sinon il ne se connectera pas. Vous pouvez modifier cela dans la ligne qui dit :
ser =serial.Serial('COM
Ensuite, ouvrez votre IDE Arduino pour copier-coller votre code dans l'éditeur. À partir de là, téléchargez et profitez-en !
Si vous voulez faire preuve de fantaisie, j'ai associé un boîtier imprimé en 3D pour l'écran LCD.
Code
- Côté Python pour Stock Ticker
- Côté Arduino pour Stock Ticker
Côté Python pour Stock TickerPython
Vous pouvez simplement le copier-coller dans un IDE Python.de 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() :pour i dans StockShares :name =is =Share(i) printShare(s,name) s.refresh() time.sleep(9.5) mainProgram()mainProgram ()
Côté Arduino pour Stock TickerC/C++
Il suffit de télécharger sur n'importe quelle carte Arduino.#includeString str ="";float o;float c;String s;LiquidCrystal lcd(12, 11, 5, 4, 3, 2); configuration vide () { // mettez votre code de configuration ici, à exécuter une fois : Serial.begin(9600);lcd.begin(16, 2);lcd.setCursor(0,0);delay(1000);}void loop() { // mettez votre code principal ici, à exécuter à plusieurs reprises :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();}
Pièces et boîtiers personnalisés
Un très beau boîtier LCD de http://www.thingverse.com/thing:614241Schémas
Connectez-vous tel quel.Processus de fabrication