1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
| #!/usr/bin/env python
# coding: utf-8
import MySQLdb
import time
import serial
from datetime import datetime
db = MySQLdb.connect("localhost", "root", "root", "AcrobatX") or die
("impossible de se connecter a la bd")
cursor = db.cursor()
device = '/dev/ttyUSB0' # définition du port USB utilise par l'arduino
try:
print("en cours de connexion..."), device
# arduino = serial.Serial(device, 57600),
arduino = serial.Serial(
port='/dev/ttyUSB0',
baudrate=57600,
parity=serial.PARITY_NONE,
stopbits=serial.STOPBITS_ONE,
bytesize=serial.EIGHTBITS,
timeout=5
)
except:
print("Echec de la connexion"), device
try:
data = arduino.readline() # lecture des données de arduino
print("arduino readline")
print(data) # affiche les données lues du port série
line = data # enregistre la ligne data dans line
var = line.decode() # converti la ligne qui est en byte en str
print(var) # affiche la ligne convertie
pieces = var.split(', ') # divise les donnees par une virgule
print(pieces[0])
try:
cursor.execute("""INSERT INTO sauts (id, piste1, piste2, piste3, piste4, piste5, moment)
values('"", pieces[0], pieces[1], pieces[2], pieces[3], pieces[4], NOW()')""")
db.commit()
print("Data insere")
cursor.close()
except MySQLdb.IntegrityError:
print("echec de transmission")
finally:
cursor.close()
except Exception as why:
print("arduino error: %s" % why)
db.rollback() |
Partager