#!/usr/bin/python import serial from Tkinter import * ser = serial.Serial('/dev/ttyS0', 38400, 8, 'N', 1, timeout=10) ser.open() s = ser.read(100) #lire 100 caractères s=s.replace('end', '0')#supprime les caracteres "end" print s s=s.replace('-', '',1)#supprimele 1er - tab = s.split("-") #recuperer dans un tableau les valeurs ser.close() print tab #afficher le contenu du tableau (pour verifier) root = Tk() canv=Canvas(root,width=1000,height=100) canv.pack() #valeur initiales on = 10 x1 = 10 x2 = 10 # ci dessous pour tester #chaine=[20,20,21,20,21,21,21,21,20,50,55,20,33,12,22,22,35,23,32,21] canv.create_line((10,60,900,60),fill="black",width=3)# tracer la ligne des ordonnées canv.create_line((10,0,10,60),fill="black",width=3) # tracer la ligne des axis #parcourir le tableau nommé "tab" for val in tab: print val val=int(val) x1=x2 x2=x2+val y1=on y2=on canv.create_line((x1,on,x2,on),fill="red",width=3) #tracer la ligne horizontale en rouge canv.create_line((x1,10,x1,50),fill="blue",width=3)#tracer la ligne verticale en vert #basculer de l'état haut a l'état bas if (on == 50): on = 10 else: on = 50 root.mainloop()