2009-05-21 268 views
2

我使用腳本導入PySerial 從COM4讀取的Python PySerial readline的功能錯誤使用

的消息,我想攔截端與一對夫婦的#

所以我試圖用

bus.readline(eol='##') 

公交車是我的連接。

我預想的念想:

  1. *#* 3 ##
  2. *#* 3 ##
  3. *#* 3 ##

Unfortunalyy我也發現

  1. *#* 1 ## * 1 * 1 * 99 ##

,我應該閱讀spleetted到2線

  1. *#* 1 ##
  2. * 1 * 1 * 99 ##

readline的顯然不工作,但爲什麼呢?

+0

我從來沒有使用過PySerial,但如果它的工作原理就像你說的,它可能在「*#* 1 ##的中間解釋這兩個「#」 * 1 * 1 * 99 ##「作爲EOL。 – 2009-05-21 16:31:39

+0

是的,它應該做這個工作 – DrFalk3n 2009-05-21 17:46:27

回答

3

pyserial中的readline()方法一次只讀取一個字符,並將其與EOL字符進行比較。您不能指定多個字符作爲EOL。你必須閱讀,然後分裂以後使用string.split()re.split()