Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/python
- import time
- import datetime
- import serial
- from decimal import *
- import thread
- import os, sys
- import struct
- TTY_GEIGER = '/dev/ttyUSB0'
- geiger_counts = 0
- # Get Geiger data from Geiger Counter
- def geiger_thread(name, dly):
- global geiger_counts
- geiger = serial.Serial()
- geiger.baudrate = 57600
- geiger.port = TTY_GEIGER
- try:
- geiger.open()
- except:
- print "Geiger is not connected, can't open " + TTY_GEIGER
- return
- data = ""
- print "Geiger opening port.."
- while True:
- # read data from the serial port - 17 bytes
- try:
- geiger.write("<GETCPM>>");
- data = geiger.read(2)
- geiger_counts = (int (struct.unpack("<L", data[1]+""+data[0]+"\x00\x00")[0]))
- time.sleep(1)
- except:
- print "> Geiger Data stream failed?"
- # start thread for handling user commands
- thread.start_new_thread(geiger_thread, ("thread #1",1,))
- # CPM is refreshed each second - start this in the loop
- print "CPM count:" + str(geiger_counts)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement