Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ##### common for all of these #####
- from pathlib import Path
- _gpio_dir = Path('/dev/gpio')
- ##### version 1
- def gpio_get_value( name ):
- return int( (_gpio_dir/name/'value').read_text() )
- def gpio_set_value( name, value ):
- (_gpio_dir/name/'value').write_text( str(value) )
- print( gpio_get_value( 'my-input' ) )
- print( gpio_get_value( 'my-output' ) )
- gpio_set_value( 'my-output', 1 )
- ##### version 2
- class Gpio:
- def __init__( self, name ):
- self.name = name
- self._value_path = _gpio_dir/name/'value'
- def get_value( self ):
- return int( self._value_path.read_text() )
- def set_value( self, value ):
- self._value_path.write_text( str( value ) )
- my_input = Gpio('my-input')
- my_output = Gpio('my-output')
- print( my_input.get_value() )
- print( my_output.get_value() )
- my_output.set_value( 1 )
- ##### version 3
- class Gpio:
- def __init__( self, name ):
- self.name = name
- self._value_path = _gpio_dir/name/'value'
- @property
- def value( self ):
- return int( self._value_path.read_text() )
- @value.setter
- def value( self, value ):
- self._value_path.write_text( str( value ) )
- my_input = Gpio('my-input')
- my_output = Gpio('my-output')
- print( my_input.value )
- print( my_output.value )
- my_output.value = 1
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement