mirror of
				https://github.com/KevinMidboe/python-gpiozero.git
				synced 2025-10-29 17:50:37 +00:00 
			
		
		
		
	Don't use with statements in examples
Also tidy up line spacing
This commit is contained in:
		@@ -108,7 +108,9 @@ def clamped(values, output_min=0, output_max=1):
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
        led = PWMLED(4)
 | 
					        led = PWMLED(4)
 | 
				
			||||||
        pot = MCP3008(channel=0)
 | 
					        pot = MCP3008(channel=0)
 | 
				
			||||||
 | 
					        
 | 
				
			||||||
        led.source = clamped(pot.values, 0.5, 1.0)
 | 
					        led.source = clamped(pot.values, 0.5, 1.0)
 | 
				
			||||||
 | 
					        
 | 
				
			||||||
        pause()
 | 
					        pause()
 | 
				
			||||||
    """
 | 
					    """
 | 
				
			||||||
    if output_min >= output_max:
 | 
					    if output_min >= output_max:
 | 
				
			||||||
@@ -129,8 +131,10 @@ def absoluted(values):
 | 
				
			|||||||
        led = PWMLED(4)
 | 
					        led = PWMLED(4)
 | 
				
			||||||
        motor = Motor(22, 27)
 | 
					        motor = Motor(22, 27)
 | 
				
			||||||
        pot = MCP3008(channel=0)
 | 
					        pot = MCP3008(channel=0)
 | 
				
			||||||
 | 
					        
 | 
				
			||||||
        motor.source = scaled(pot.values, -1, 1)
 | 
					        motor.source = scaled(pot.values, -1, 1)
 | 
				
			||||||
        led.source = absoluted(motor.values)
 | 
					        led.source = absoluted(motor.values)
 | 
				
			||||||
 | 
					        
 | 
				
			||||||
        pause()
 | 
					        pause()
 | 
				
			||||||
    """
 | 
					    """
 | 
				
			||||||
    for v in values:
 | 
					    for v in values:
 | 
				
			||||||
@@ -283,7 +287,9 @@ def averaged(*values):
 | 
				
			|||||||
        pot2 = MCP3008(channel=1)
 | 
					        pot2 = MCP3008(channel=1)
 | 
				
			||||||
        pot3 = MCP3008(channel=2)
 | 
					        pot3 = MCP3008(channel=2)
 | 
				
			||||||
        led = PWMLED(4)
 | 
					        led = PWMLED(4)
 | 
				
			||||||
 | 
					        
 | 
				
			||||||
        led.source = averaged(pot1.values, pot2.values, pot3.values)
 | 
					        led.source = averaged(pot1.values, pot2.values, pot3.values)
 | 
				
			||||||
 | 
					        
 | 
				
			||||||
        pause()
 | 
					        pause()
 | 
				
			||||||
    """
 | 
					    """
 | 
				
			||||||
    for v in zip(*values):
 | 
					    for v in zip(*values):
 | 
				
			||||||
@@ -304,7 +310,9 @@ def summed(*values):
 | 
				
			|||||||
        pot2 = MCP3008(channel=1)
 | 
					        pot2 = MCP3008(channel=1)
 | 
				
			||||||
        pot3 = MCP3008(channel=2)
 | 
					        pot3 = MCP3008(channel=2)
 | 
				
			||||||
        led = PWMLED(4)
 | 
					        led = PWMLED(4)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        led.source = scaled(summed(pot1.values, pot2.values, pot3.values), 0, 1, 0, 3)
 | 
					        led.source = scaled(summed(pot1.values, pot2.values, pot3.values), 0, 1, 0, 3)
 | 
				
			||||||
 | 
					        
 | 
				
			||||||
        pause()
 | 
					        pause()
 | 
				
			||||||
    """
 | 
					    """
 | 
				
			||||||
    for v in zip(*values):
 | 
					    for v in zip(*values):
 | 
				
			||||||
@@ -326,7 +334,9 @@ def multiplied(*values):
 | 
				
			|||||||
        pot2 = MCP3008(channel=1)
 | 
					        pot2 = MCP3008(channel=1)
 | 
				
			||||||
        pot3 = MCP3008(channel=2)
 | 
					        pot3 = MCP3008(channel=2)
 | 
				
			||||||
        led = PWMLED(4)
 | 
					        led = PWMLED(4)
 | 
				
			||||||
 | 
					        
 | 
				
			||||||
        led.source = multiplied(pot1.values, pot2.values, pot3.values)
 | 
					        led.source = multiplied(pot1.values, pot2.values, pot3.values)
 | 
				
			||||||
 | 
					        
 | 
				
			||||||
        pause()
 | 
					        pause()
 | 
				
			||||||
    """
 | 
					    """
 | 
				
			||||||
    def _product(it):
 | 
					    def _product(it):
 | 
				
			||||||
@@ -350,10 +360,13 @@ def queued(values, qsize):
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
        leds = LEDBoard(5, 6, 13, 19, 26)
 | 
					        leds = LEDBoard(5, 6, 13, 19, 26)
 | 
				
			||||||
        btn = Button(17)
 | 
					        btn = Button(17)
 | 
				
			||||||
 | 
					        
 | 
				
			||||||
        for i in range(4):
 | 
					        for i in range(4):
 | 
				
			||||||
            leds[i].source = queued(leds[i + 1].values, 5)
 | 
					            leds[i].source = queued(leds[i + 1].values, 5)
 | 
				
			||||||
            leds[i].source_delay = 0.01
 | 
					            leds[i].source_delay = 0.01
 | 
				
			||||||
 | 
					            
 | 
				
			||||||
        leds[4].source = btn.values
 | 
					        leds[4].source = btn.values
 | 
				
			||||||
 | 
					        
 | 
				
			||||||
        pause()
 | 
					        pause()
 | 
				
			||||||
    """
 | 
					    """
 | 
				
			||||||
    if qsize < 1:
 | 
					    if qsize < 1:
 | 
				
			||||||
@@ -381,9 +394,10 @@ def smoothed(values, qsize, average=mean):
 | 
				
			|||||||
        from gpiozero import MCP3008
 | 
					        from gpiozero import MCP3008
 | 
				
			||||||
        from gpiozero.tools import smoothed
 | 
					        from gpiozero.tools import smoothed
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        with MCP3008(channel=0) as adc:
 | 
					        adc = MCP3008(channel=0)
 | 
				
			||||||
            for value in smoothed(adc.values, 5):
 | 
					        
 | 
				
			||||||
                print(value)
 | 
					        for value in smoothed(adc.values, 5):
 | 
				
			||||||
 | 
					            print(value)
 | 
				
			||||||
    """
 | 
					    """
 | 
				
			||||||
    if qsize < 1:
 | 
					    if qsize < 1:
 | 
				
			||||||
        raise ValueError("qsize must be 1 or larger")
 | 
					        raise ValueError("qsize must be 1 or larger")
 | 
				
			||||||
@@ -430,18 +444,20 @@ def pre_periodic_filtered(values, block, repeat_after):
 | 
				
			|||||||
        from gpiozero import MCP3008
 | 
					        from gpiozero import MCP3008
 | 
				
			||||||
        from gpiozero.tools import pre_periodic_filtered
 | 
					        from gpiozero.tools import pre_periodic_filtered
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        with MCP3008(channel=0) as adc:
 | 
					        adc = MCP3008(channel=0)
 | 
				
			||||||
            for value in pre_periodic_filtered(adc.values, 50, 0):
 | 
					        
 | 
				
			||||||
                print(value)
 | 
					        for value in pre_periodic_filtered(adc.values, 50, 0):
 | 
				
			||||||
 | 
					            print(value)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    Or to only display every even item read from an ADC::
 | 
					    Or to only display every even item read from an ADC::
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        from gpiozero import MCP3008
 | 
					        from gpiozero import MCP3008
 | 
				
			||||||
        from gpiozero.tools import pre_periodic_filtered
 | 
					        from gpiozero.tools import pre_periodic_filtered
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        with MCP3008(channel=0) as adc:
 | 
					        adc = MCP3008(channel=0)
 | 
				
			||||||
            for value in pre_periodic_filtered(adc.values, 1, 1):
 | 
					        
 | 
				
			||||||
                print(value)
 | 
					        for value in pre_periodic_filtered(adc.values, 1, 1):
 | 
				
			||||||
 | 
					            print(value)
 | 
				
			||||||
    """
 | 
					    """
 | 
				
			||||||
    if block < 1:
 | 
					    if block < 1:
 | 
				
			||||||
        raise ValueError("block must be 1 or larger")
 | 
					        raise ValueError("block must be 1 or larger")
 | 
				
			||||||
@@ -470,9 +486,10 @@ def post_periodic_filtered(values, repeat_after, block):
 | 
				
			|||||||
        from gpiozero import MCP3008
 | 
					        from gpiozero import MCP3008
 | 
				
			||||||
        from gpiozero.tools import post_periodic_filtered
 | 
					        from gpiozero.tools import post_periodic_filtered
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        with MCP3008(channel=0) as adc:
 | 
					        adc = MCP3008(channel=0)
 | 
				
			||||||
            for value in post_periodic_filtered(adc.values, 9, 1):
 | 
					        
 | 
				
			||||||
                print(value)
 | 
					        for value in post_periodic_filtered(adc.values, 9, 1):
 | 
				
			||||||
 | 
					            print(value)
 | 
				
			||||||
    """
 | 
					    """
 | 
				
			||||||
    if repeat_after < 1:
 | 
					    if repeat_after < 1:
 | 
				
			||||||
        raise ValueError("repeat_after must be 1 or larger")
 | 
					        raise ValueError("repeat_after must be 1 or larger")
 | 
				
			||||||
@@ -496,7 +513,9 @@ def random_values():
 | 
				
			|||||||
        from signal import pause
 | 
					        from signal import pause
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        led = PWMLED(4)
 | 
					        led = PWMLED(4)
 | 
				
			||||||
 | 
					        
 | 
				
			||||||
        led.source = random_values()
 | 
					        led.source = random_values()
 | 
				
			||||||
 | 
					        
 | 
				
			||||||
        pause()
 | 
					        pause()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    If you require a wider range than 0 to 1, see :func:`scaled`.
 | 
					    If you require a wider range than 0 to 1, see :func:`scaled`.
 | 
				
			||||||
@@ -517,10 +536,12 @@ def sin_values(period=360):
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
        red = PWMLED(2)
 | 
					        red = PWMLED(2)
 | 
				
			||||||
        blue = PWMLED(3)
 | 
					        blue = PWMLED(3)
 | 
				
			||||||
 | 
					        
 | 
				
			||||||
        red.source_delay = 0.01
 | 
					        red.source_delay = 0.01
 | 
				
			||||||
        blue.source_delay = red.source_delay
 | 
					        blue.source_delay = red.source_delay
 | 
				
			||||||
        red.source = scaled(sin_values(100), 0, 1, -1, 1)
 | 
					        red.source = scaled(sin_values(100), 0, 1, -1, 1)
 | 
				
			||||||
        blue.source = inverted(red.values)
 | 
					        blue.source = inverted(red.values)
 | 
				
			||||||
 | 
					        
 | 
				
			||||||
        pause()
 | 
					        pause()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    If you require a different range than -1 to +1, see :func:`scaled`.
 | 
					    If you require a different range than -1 to +1, see :func:`scaled`.
 | 
				
			||||||
@@ -542,10 +563,12 @@ def cos_values(period=360):
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
        red = PWMLED(2)
 | 
					        red = PWMLED(2)
 | 
				
			||||||
        blue = PWMLED(3)
 | 
					        blue = PWMLED(3)
 | 
				
			||||||
 | 
					        
 | 
				
			||||||
        red.source_delay = 0.01
 | 
					        red.source_delay = 0.01
 | 
				
			||||||
        blue.source_delay = red.source_delay
 | 
					        blue.source_delay = red.source_delay
 | 
				
			||||||
        red.source = scaled(cos_values(100), 0, 1, -1, 1)
 | 
					        red.source = scaled(cos_values(100), 0, 1, -1, 1)
 | 
				
			||||||
        blue.source = inverted(red.values)
 | 
					        blue.source = inverted(red.values)
 | 
				
			||||||
 | 
					        
 | 
				
			||||||
        pause()
 | 
					        pause()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    If you require a different range than -1 to +1, see :func:`scaled`.
 | 
					    If you require a different range than -1 to +1, see :func:`scaled`.
 | 
				
			||||||
@@ -553,4 +576,3 @@ def cos_values(period=360):
 | 
				
			|||||||
    angles = (2 * pi * i / period for i in range(period))
 | 
					    angles = (2 * pi * i / period for i in range(period))
 | 
				
			||||||
    for a in cycle(angles):
 | 
					    for a in cycle(angles):
 | 
				
			||||||
        yield cos(a)
 | 
					        yield cos(a)
 | 
				
			||||||
 | 
					 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user