##### Risanje histograma - S53MV 14.09.2016 #####

#izvajanje potrebuje najmanj Anaconda2-4.1.1-Windows-x86 in pyserial-2.7.win32_py3k
import time, serial	#uporabljene funkcije
port='COM14'		#ime zaporednega vmesnika

print '*** Risanje histograma - S53MV 14.09.2016 ***'
n=int(input('Vstavi stevilo meritev: '))

#odpri comport port, 115200bps, 8bit, brez paritete
print 'Pocakaj na lenobni USB...'
comport=serial.Serial(port,115200,timeout=1)
comport.setRTS(False)	#sprosti /BOOTLOADER
comport.setDTR(False)	#sprosti /RESET
time.sleep(3)
comport.readline()	#pocisti sprejemni vmesnik

h1=[]			#podatki iz merilnega sprejemnika v polji h1 in h2
h2=[]
i=n
while i>0:
	s=comport.readline()
	h1=h1+[int(s[0:3])]	#kanal #1
	h2=h2+[int(s[4:7])]	#kanal #2
	i=i-1
	print 'Zbiranje podatkov:', i, '    \r',

comport.close()		#zapri comport port
t=time.ctime()		#zabelezi cas meritve

print '\r\nPocakaj na nalaganje grafike...'
import matplotlib.pyplot as plt
k=input('Vstavi stevilko kanala, 0=izhod: ')
while k>0:
	b=input('Vstavi stevilo stolpcev: ')
	print 'Risanje histograma...   '+t
	if k==1:
		plt.hist(h1, b, normed=1, facecolor='green')
	else:
		plt.hist(h2, b, normed=1, facecolor='green')
	plt.title('Histogram '+str(n)+' meritev  '+t)
	plt.xlabel('Amplituda')
	plt.ylabel('Gostota verjetnosti')
	plt.show()
	k=input('Vstavi stevilko kanala, 0=izhod: ')

#konec programa
