Respostas:
Conforme mencionado neste artigo, noções básicas do RPi.GPIO 3 - Como sair de programas GPIO de forma limpa, evitar avisos e proteger seu Pi , uso correto de GPIO.cleanup (),
Uso correto de GPIO.cleanup ()
O RPi.GPIO fornece uma função interna GPIO.cleanup () para limpar todas as portas que você usou. Mas seja muito claro o que isso faz. Afeta apenas as portas que você definiu no programa atual. Redefine todas as portas que você usou neste programa de volta ao modo de entrada. Isso evita danos causados, digamos, por uma situação em que você tem uma porta definida como ALTA como saída e a conecta acidentalmente ao GND (LOW), o que poderia causar um curto-circuito na porta e possivelmente fritá-la. As entradas podem suportar 0V (LOW) ou 3.3V (HIGH), por isso é mais seguro deixar as portas como entradas.
Espero que tire sua dúvida.
Você não precisa usar o método de limpeza.
Tanto quanto sei, apenas os módulos RPi.GPIO e RPIO.GPIO Python têm um método de limpeza. O método de limpeza define todos os gpios que você usou como entradas e desativa os pull-ups / downs internos desses gpios.
Meu módulo Python pigpio não possui um método de limpeza, nem o módulo fiação Python Python, até onde eu saiba.
Encontrei alguns problemas ao usar o GPIO, principalmente relacionados à tentativa de alterar modos e fixar direções que já foram definidas em uma sessão anterior. Por exemplo, às vezes, se eu executar um programa que define pinos para a saída e, em seguida, executar um programa que define os mesmos pinos para entrada sem reiniciar o pi, recebo vários avisos (como "RunTimeWarning: este canal já está em usar"). Isso é especialmente problemático ao chamar várias funções relacionadas ao GPIO a partir de um único programa, pois às vezes o programa trava.
O uso do comando de limpeza antes ou depois da alteração das configurações do GPIO elimina os avisos e permite que o código seja executado sem problemas, sem que ocorram avisos de configurações do GPIO.
Cleanup()
função. parece queGPIO.cleanup()
está disponível porque a funcionalidade python mantém um log de alterações para limpar essas alterações. Veja raspberrypi.stackexchange.com/questions/44807/…