2014-12-12 4 views
0

다음은 arduino에서 일부 직렬 데이터를 추출하는 데 사용하는 일부 코드입니다. 이 IF 문 if (Ardinput == stagecode) : 이전에 같은 함수에서 선언 한 전역 변수를 사용하고 있지 않습니다. 나는 내 논리로 무언가를 잘 압니다. 당신이 capture() 기능이라고했는데 그if 문 뒤에 일이야 때까지내 글로벌 변수가 정상적으로 동작하지 않습니다.

편집 나는 존재로 오지 않을

stagecode = "STAGE " 

ser = serial.Serial(
port='COM3', 
baudrate=9600, 
) 



def stage(): 
      urllib.request.urlopen(url + 'f.stage') 


def capture(): 
    global Ardinput 
    print ("Start capture") 



    while (1):   
      line = ser.readline() 
      if (line != ""): 
       print (line) 
       Ardinput = line 
       Ardinput = Ardinput.decode("utf-8") 
       print (Ardinput + ' Befor CR') 
       Ardinput = Ardinput[:-1] 
       print (Ardinput) 
       done = Ardinput 
       break 
if (Ardinput == stagecode):  
    print (stagecode + ' IN IF FUNCTION') 
    #stage() 

print ("Start Application" + Ardinput ) 
print 

capture() 
+0

동일한 기능? 여기에 들여 쓰기가 코드에서와 동일한 것입니까? – laike9m

+0

if 문 앞에 실제로'capture()'를 실행해야한다고 생각합니다. – Marcin

+0

기본값을 지정하지 않았거나'stagecode'에서 값을 얻지 못 했습니까? –

답변

관련 문제