2013-06-21 1 views
0

나는 실험을 위해 작업을 쓰고 있는데, 나는 순수한 음색의 400 사운드 펄스와 중간에 600ms의 간격을 듣기 위해 사용자를 필요로한다. 간격의 %에는 간격 지속 시간의 변화가 있습니다.루프에서 소리의 순서를 재생하는 동안 사용자 입력

사용자가 기간 변경을 인식 할 때마다 키를 누를 필요가 있습니다 (타이밍을 배열에 저장해야 함). 변경 사항이없는 경우 - 사용자가 키를 터치하지 않습니다. (그래서 나는 사용자 입력 진행을 기다리는 루프 내부의 사용자 입력 (에서는 GetChar (psychotoolbox)를 루프를 실행하고 수집 할 수있는 방법을 찾을 수 없습니다

for i = 1:pulse_number; 
    wavplay(amplitude*beep,Sr,'async') 
    pause(ISIarray(i)) % array of different interval duration 
end 

없이 입력, 입력 1) 0)

감사합니다.

답변

0

KbCheck 또는 KbQueueCheck (큐를 사용하는 경우)를 사용하십시오. 일시 중지 기능을 사용할 수 없습니다. 대신 while 루프를 사용하십시오.

start_time = GetSecs; 
while GetSecs - start_time < interval_duration(i) 
    [press secs] = KbCheck; 
end 
관련 문제