def triggerPeak(self, pinNumber):
        if self.disabled:
            return

        for k in range(20):
            parallel.setPin(pinNumber, 1) # trigger on
        for k in range(20):
            parallel.setData(0) # trigger off
Ejemplo n.º 2
0
nFramesOff = 30
nCycles = 2
parallel.setPortAddress(0x378)  #address for parallel port on many machines
pinNumber = 2  #choose a pin to write to (2-9).

#setup the stimuli and other objects we need
myWin = visual.Window([1280, 1024], allowGUI=False)  #make a window
myWin.flip()  #present it
myStim = visual.PatchStim(myWin, tex=None, mask=None, color='white', size=2)
myClock = core.Clock()  #just to keep track of time

#present a stimulus for EXACTLY 20 frames and exactly 5 cycles
for cycleN in range(nCycles):
    for frameN in range(nFramesOff):
        #don't draw, just refresh the window
        myWin.flip()
        parallel.setData(0)  #sets all pins low

    for frameN in range(nFramesOn):
        myStim.draw()
        myWin.flip()
        #immediately *after* screen refresh set pins as desired
        parallel.setPin(2, 1)  #sets just this pin to be high

#report the mean time afterwards
print 'total time=', myClock.getTime()
print 'avg frame rate=', myWin.fps()
#set pins back to low
myWin.flip()
parallel.setData(0)  #sets all pins low again
Ejemplo n.º 3
0
win = visual.Window([1280, 1024], allowGUI=False)  # make a window
win.flip()  # present it
myStim = visual.GratingStim(win, tex=None, mask=None, color='white', size=2)
myClock = core.Clock()  # just to keep track of time

# present a stimulus for EXACTLY 20 frames and exactly 5 cycles
for cycleN in range(nCycles):
    for frameN in range(nFramesOff):
        # don't draw, just refresh the window
        win.flip()
        parallel.setData(0)  # sets all pins low

    for frameN in range(nFramesOn):
        myStim.draw()
        win.flip()
        # immediately *after* screen refresh set pins as desired
        parallel.setPin(2, 1)  # sets just this pin to be high

# report the mean time afterwards
print('total time=%0.6f' % myClock.getTime())
print('avg frame rate=%0.3f' % win.fps())

# set pins back to low
win.flip()
parallel.setData(0)  # sets all pins low again

win.close()
core.quit()

# The contents of this file are in the public domain.