mirror of
https://github.com/KevinMidboe/python-gpiozero.git
synced 2025-10-29 09:40:36 +00:00
81 lines
1.8 KiB
ReStructuredText
81 lines
1.8 KiB
ReStructuredText
==========
|
|
Exceptions
|
|
==========
|
|
|
|
.. currentmodule:: gpiozero
|
|
|
|
The following exceptions are defined by GPIO Zero. Please note that multiple
|
|
inheritance is heavily used in the exception hierarchy to make testing for
|
|
exceptions easier. For example, to capture any exception generated by GPIO
|
|
Zero's code::
|
|
|
|
from gpiozero import *
|
|
|
|
led = PWMLED(17)
|
|
try:
|
|
led.value = 2
|
|
except GPIOZeroError:
|
|
print('A GPIO Zero error occurred')
|
|
|
|
Since all GPIO Zero's exceptions descend from :exc:`GPIOZeroError`, this will
|
|
work. However, certain specific errors have multiple parents. For example, in
|
|
the case that an out of range value is passed to :attr:`OutputDevice.value` you
|
|
would expect a :exc:`ValueError` to be raised. In fact, a
|
|
:exc:`OutputDeviceBadValue` error will be raised. However, note that this
|
|
descends from both :exc:`GPIOZeroError` (indirectly) and from :exc:`ValueError`
|
|
so you can still do::
|
|
|
|
from gpiozero import *
|
|
|
|
led = PWMLED(17)
|
|
try:
|
|
led.value = 2
|
|
except ValueError:
|
|
print('Bad value specified')
|
|
|
|
|
|
.. autoexception:: GPIOZeroError
|
|
|
|
.. autoexception:: CompositeDeviceError
|
|
|
|
.. autoexception:: GPIODeviceError
|
|
|
|
.. autoexception:: GPIODeviceClosed
|
|
|
|
.. autoexception:: GPIOPinInUse
|
|
|
|
.. autoexception:: GPIOPinMissing
|
|
|
|
.. autoexception:: GPIOBadQueueLen
|
|
|
|
.. autoexception:: InputDeviceError
|
|
|
|
.. autoexception:: OutputDeviceError
|
|
|
|
.. autoexception:: OutputDeviceBadValue
|
|
|
|
.. autoexception:: PinError
|
|
|
|
.. autoexception:: PinFixedFunction
|
|
|
|
.. autoexception:: PinInvalidFunction
|
|
|
|
.. autoexception:: PinInvalidState
|
|
|
|
.. autoexception:: PinInvalidPull
|
|
|
|
.. autoexception:: PinInvalidEdges
|
|
|
|
.. autoexception:: PinSetInput
|
|
|
|
.. autoexception:: PinFixedPull
|
|
|
|
.. autoexception:: PinEdgeDetectUnsupported
|
|
|
|
.. autoexception:: PinPWMError
|
|
|
|
.. autoexception:: PinPWMUnsupported
|
|
|
|
.. autoexception:: PinPWMFixedValue
|
|
|