Para controlar GPIO (General Purpose Input Output) en la Raspberry Pi, los lenguajes de programación más utilizados y sencillos son:
1. pitón
Este es el idioma oficial recomendado para Raspberry Pi. Para controlar GPIO, solo necesita importar la biblioteca RPi.GPIO, que es fácil de aprender. El código es el siguiente:
import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BCM)
GPIO.setup(18, GPIO.OUT)
GPIO.output(18, GPIO.HIGH)
2. C/C++
Este es un lenguaje de bajo nivel. El control de GPIO necesita dirigirse directamente a la memoria. El código es más complicado, pero la eficiencia de ejecución es alta. El código es el siguiente:
#include <stdio.h>
#include <wiringPi.h>
int main(void)
{
wiringPiSetup();
pinMode(18, OUTPUT);
digitalWrite(18, HIGH);
return 0;
}
3 golpes
Este es un lenguaje de programación bajo el sistema Linux. Para controlar GPIO, debe llamar a comprar para realizarlo. El código es el siguiente:
echo "18" > /sys/class/gpio/export
echo "out" > /sys/class/gpio/gpio18/direction
echo "1" > /sys/class/gpio/gpio18/value
4.Java
Este es un lenguaje orientado a objetos. Puede usar la biblioteca Pi4J para controlar GPIO en la Raspberry Pi. El código es el siguiente:
import com.pi4j.io.gpio.*;
public class GpioExample {
public static void main(String[] args) throws Exception {
final GpioController gpio = GpioFactory.getInstance();
final GpioPinDigitalOutput pin = gpio.provisionDigitalOutputPin(RaspiPin.GPIO_18);
pin.high();
}
}
Resumir
En definitiva, podemos elegir el idioma adecuado según las necesidades del proyecto.
- Python es fácil de usar y tiene una curva de aprendizaje baja, adecuada para principiantes y proyectos simples.
- El lenguaje C tiene una alta eficiencia de ejecución y puede usarse para proyectos con altos requisitos de recursos, pero la curva de aprendizaje es más complicada.
- Bash: un lenguaje de secuencias de comandos simple que se puede usar para el control GPIO simple, pero no es adecuado para el desarrollo de proyectos complejos.
- Java: un lenguaje orientado a objetos con una curva de aprendizaje general y puede ser utilizado para el desarrollo de proyectos GPIO de mediana complejidad.
Finalmente, adjunte un ejemplo en C
Usando C++ para controlar GPIO en la Raspberry Pi, puede usar la biblioteca cableadoPi.Este programa hará que GPIO18 (Pin12) emita niveles altos y bajos en rotación, logrando el efecto de parpadear 5 veces.
#include <wiringPi.h>
int main() {
wiringPiSetup(); //初始化wiringPi库
pinMode(18, OUTPUT); //将GPIO18设置为输出模式
for(int i=0; i<5; i++) {
//循环闪烁5次
digitalWrite(18, HIGH); //GPIO18输出高电平
delay(500); //延时500ms
digitalWrite(18, LOW); //GPIO18输出低电平
delay(500);
}
return 0;
}
Pasos específicos:
Instale la biblioteca de cableadoPi,
Ingrese el siguiente comando en la terminal Raspberry Pi para instalar:
sudo apt-get install wiringpi
Escriba código C++ y llame al archivo include <wiringPi.h>
de encabezado .
Llamada para wiringPiSetup()
inicializar el control GPIO.
Úselo pinMode()
para establecer el modo GPIO en modo de salida.
Úselo digitalWrite()
para generar un nivel alto o bajo, controlar GPIO.
Úselo para delay()
agregar un retraso para controlar el tiempo de salida.
- Hacer compilación cruzada
g++ -o example example.cpp -lwiringPi
- ejecutar programa
sudo ./example
El pin GPIO18 emitirá niveles altos y bajos, y el LED parpadeará 5 veces.