A principios deste ano tes un percorrido polo GPIO de Raspberry Pi e tamén recomendo algúns paneis útiles para identificar os números de pin. Hoxe seguimos ese tema e comezamos a usar estes pines combinados con código e hardware.
O GPIO é como o Raspberry Pi fala co mundo exterior: "cousas reais": usa o código para programar os sinais e as tensións desde e para o encabezado de 40 pinos.
Codificar co GPIO é razoablemente sinxelo de comezar, especialmente para iniciadores como LEDs e timbre. Con só un par de compoñentes e algunhas liñas de código pode acender ou acender un LED como parte do seu proxecto.
Este artigo mostraralle o que precisa para acender un LED usando o código Python no seu Raspberry Pi, usando o método tradicional 'RPi.GPIO'.
01 de 04
O que necesitas
Aquí tes unha lista de todo o que precisas para este pequeno proxecto iniciador. Debe poder atopar estes elementos na súa tenda de fabricantes favoritas ou en sitios de poxas en liña.
- Unha estación de traballo Raspberry Pi que executa o último Raspbian (Pi, pantalla, teclado, rato, enerxía, tarxeta SD - todos conectados)
- Un pequeno tablero
- Un LED de 5 mm
- Resistencia de 330 ohmios
- 2 fíos macho a femia
02 de 04
Crear o circuíto - Paso 1
Usaremos 2 patillas GPIO para este proxecto, un pin de fondo (pin físico 39) para a perna de terra do LED, e un pin xenérico GPIO (GPIO 21, pin física 40) para encender o LED, pero só cando decidimos: onde vén o código.
En primeiro lugar, desactiva o Raspberry Pi. Agora, usando os cables do saltador, conecte o pin do chan a un carril na súa placa. A continuación faga o mesmo para o pin GPIO, que se conecta a outro.
03 de 04
Crear o circuíto - Paso 2
A continuación engádense o LED e a resistencia ao circuíto.
Os LED teñen polaridade, o que significa que deben estar conectados de certa forma. Normalmente teñen unha perna máis longa que é o ánodo (positivo) e normalmente un bordo plano na cabeza de plástico LED que denota a perna cátodo (negativa).
A resistencia úsase para protexer tanto o LED que recibe demasiado corrente, como o pin GPIO de "dar" demasiado - o que podería danar ambos.
Hai un pouco de clasificación de resistencia xenérica para LEDs estándar - 330ohm. Hai algunhas matemáticas detrás diso, pero por agora imos centrarnos no proxecto - sempre podes ollar a lei de ohms e temas relacionados despois.
Conecte unha perna da resistencia ao carril GND na súa placa e a outra perna de resistencia á pista conectada á perna máis curta do seu LED.
A perna máis longa do LED agora ten que unirse á pista conectada ao pin GPIO.
04 de 04
Código Python GPIO (RPi.GPIO)
Polo momento, temos un circuíto conectado e listo para percorrer, pero non dixemos o noso pin GPIO para enviar aínda ningunha potencia, polo que o LED non debe estar iluminado.
Fagamos un ficheiro Python para dicir ao noso pin GPIO que envíe algo de enerxía durante 5 segundos e despois pare. A última versión de Raspbian terá xa instaladas as bibliotecas GPIO necadas.
Abra unha fiestra de terminal e cree un novo script de Python escribindo o seguinte comando:
sudo nano led1.pyIsto abrirá un ficheiro en branco para que introduza o noso código. Introduce as liñas seguintes:
#! / usr / bin / python # Importar as bibliotecas que precisamos importar RPi.GPIO como tempo de importación GPIO # Configurar o modo GPIO GPIO.setmode (GPIO.BCM) # Configurar o LED GPIO número LED = 21 # Configure o pin LED GPIO como un GPIO.setup de saída (LED, GPIO.OUT) # Xire o pin GPIO en GPIO.output (LED, True) # Espere 5 segundos time.sleep (5) # Xire o PIN GPIO fóra de GPIO.output (LED, False)Prema Ctrl + X para gardar o ficheiro. Para executar o ficheiro, introduza o seguinte comando no terminal e prema Intro:
sudo python led1.pyO LED debe iluminarse durante 5 segundos e logo desactível, finalizando o programa.
Por que non tentar cambiar o número "time.sleep" para acender o LED por diferentes momentos ou tentar cambiar o "GPIO.output (LED, True)" a "GPIO.output (LED, False)" e ver que pasa?