簡體   English   中英

Python代碼讀取Beaglebone上的串行輸入

[英]Python code reading serial inputs on Beaglebone

我正在嘗試從Beaglebone上的Geiger計數器讀取數據,但是當我打印結果時,不包括計數器代碼:

import Adafruit_BBIO.UART as UART
import serial
import time
UART.setup("UART4")

ser = serial.Serial(port = "/dev/ttyO4", baudrate=9600)

r = 0
d = 0
z = 0
minutes = 0
while True:
    timeout = time.time() + 60
    while True:
            x = ser.read()
            if ser.isOpen():
                    print "Serial is open!"
                    r = r +1
                    print r
                    print x

            elif x is '0':
                d=d+1
                #print '.'
            elif x is '1':
                d=d+1
                #print '.'

    time.sleep(1)
    z=z+d
    print "CPM %f " % d
    print "total %f" % z
    print "minutes %f" % minutes

我的輸出結果為:

Serial is open!

1

1

Serial is open!

2

1

Serial is open!

3

0

內部while循環沒有break ,因此它將無限循環。 假設計數器代碼意味着代碼示例末尾的print語句,那么它們將永遠無法到達。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM