Cómo comenzar con el óxido en Raspberry Pi
Anuncio
Si está interesado en la programación, probablemente haya oído hablar de Rust. 7 Razones. Rust es el nuevo lenguaje de programación más emocionante. 7 Razones. Rust es el nuevo lenguaje de programación más emocionante. ¿Desea comenzar a programar? He aquí por qué Rust es el nuevo lenguaje de programación más emocionante y accesible. Lee mas . El lenguaje, diseñado por Mozilla, es muy apreciado por los desarrolladores y continúa creciendo en devotos.
La Raspberry Pi es la navaja suiza de las computadoras pequeñas, y es perfecta para aprender código. Combinemos los dos e instalemos Rust en una Raspberry Pi.
Configurando su Raspberry Pi
Para este proyecto necesitarás:
- Raspberry Pi.
- CONDUCIDO, LIDERADO.
- Resistencia de 220-1k Ohm.
- Tablero y cables de conexión.
Configure su circuito con GPIO 18 conectado a la pata positiva del LED, y la pata negativa del LED a la resistencia, y de vuelta a un pin GND en el Pi.
Este tutorial se realizó utilizando una Raspberry Pi 3B + con Raspbian Stretch en modo de escritorio. También funcionaría perfectamente a través de una conexión SSH remota, aunque diferentes modelos de Pi y diferentes sistemas operativos podrían tener resultados variables.
Cómo instalar Rust en Raspberry Pi
Para instalar rust, dirígete a la página de instalación de rust-lang y copia el comando de instalación en tu terminal. Cuando se le solicite, elija una instalación predeterminada.
El instalador le notificará cuando esté completo, aunque la instalación puede demorar un tiempo dependiendo de su conexión.
Después de la instalación
La instalación es exitosa, pero aún no puede comenzar a usarla. Si intenta verificar el óxido y la carga por versión, obtendrá un error. Por lo general, debe agregar un idioma a su RUTA para usarlos en la línea de comando.
Afortunadamente, Rust hace esto por usted, y todo lo que necesita hacer es reiniciar su Pi, o cerrar sesión y volver a iniciarla. Ahora comprobar si hay óxido y carga debería funcionar.
Compilará y creará todos sus scripts desde la terminal, pero también necesitará un editor de código. En este proyecto usaré Code-OSS, una compilación comunitaria de VS Code que puede instalar en Pi, pero no es esencial. Cualquier editor de código lo hará.
Crear un proyecto de óxido
Para crear un proyecto Rust, cree un nuevo directorio e ingréselo escribiendo
mkdir YourFolder cd YourFolder
Use Cargo para crear un nuevo proyecto Rust.
cargo new YourProject
Recibirá una confirmación de que el nuevo proyecto ha sido creado.
Ingrese la nueva carpeta del proyecto y enumere su contenido.
cd YourProject ls
Verá una carpeta llamada src y un archivo llamado Cargo.toml . Estos dos elementos constituyen la base de cada proyecto Rust.
Un proyecto simple de óxido, explicado
Primero, abramos el directorio src y abramos main.rs en un editor de código. Verá que el nuevo proyecto viene completo con un script "Hello World" para comenzar.
La sintaxis de Rust será familiar para aquellos que han usado lenguajes C o Java anteriormente. Esto difiere de Python, que utiliza espacios en blanco, punto y coma y llaves para denotar bloques de código. El código de óxido debe compilarse y compilarse antes de ejecutarse.
De vuelta en la carpeta principal del proyecto, abra Cargo.toml en un editor de código. Cualquiera que haya codificado en JavaScript o Ruby probablemente lo encuentre familiar. La información del proyecto, las instrucciones de compilación y las dependencias se enumeran en este archivo. Los paquetes se llaman Crates in Rust, y usaremos uno más tarde para acceder a los pines GPIO de la Raspberry Pi.
Construyendo el Proyecto de Muestra
De vuelta en la ventana de terminal, asegúrese de estar en el directorio de su proyecto y compile el proyecto.
cargo build
Esto crea otra carpeta dentro de su proyecto llamada target . También notará un nuevo archivo llamado Cargo.lock . Cuando se trabaja con un equipo o se codifica algo para implementar en un servidor, este archivo bloquea el proyecto a una versión que se compiló y compiló previamente con éxito. Mientras aprende, puede ignorar este archivo de forma segura.
Dentro de la carpeta de destino hay una subcarpeta llamada depuración, y aquí es donde estará su archivo ejecutable. En Mac y Linux, ejecute su proyecto escribiendo:
./YourProject
En Windows, tendrá un nuevo archivo EXE que puede ejecutar haciendo doble clic.
¡Éxito! Convirtamos este proyecto en algo que use los pines GPIO.
Configuración de pines GPIO
Utilizaremos la caja rust_gpiozero de Rahul Thakdoor para este proyecto. Si bien no es la única forma de acceder a los pines GPIO, esta caja está diseñada para ser similar a la biblioteca Python GPIO Zero.
En lugar de descargar manualmente la caja, pegue su nombre bajo dependencias en el archivo Cargo.toml.
[dependencies] rust_gpiozero = "0.2.0"
Guárdelo y abra su terminal. En esta etapa, no tiene sentido reconstruir el proyecto ya que ningún código ha cambiado. Cargo proporciona una función que verificará que el código se compilará y que todas las dependencias están presentes.
cargo check
Dependiendo de su conexión, esto puede demorar unos minutos, pero solo necesita hacerlo una vez, cuando agrega o cambia elementos en el archivo Cargo.toml.
Hola parpadeo
Ahora cambiará su guión de hello world a un guión de luz parpadeante. Comience abriendo main.rs en su editor. Si desea omitir la codificación, puede encontrar el script terminado en Github Gist.
Debe informar al compilador que está utilizando la biblioteca rust_gpiozero, por lo que en la parte superior del script agregue una referencia a la biblioteca.
use rust_gpiozero::*;
Al igual que el boceto de parpadeo basado en Python normal, necesitamos una forma de agregar un retraso entre encender y apagar el LED. En Rust, usamos dos elementos de la biblioteca estándar para hacer esto:
use std::thread::sleep; use std::time::Duration; // note the capital D!
Ahora en su función principal, agregue una variable para su pin LED y un bucle para contener las instrucciones parpadeantes.
let led = LED::new(18); // sets a variable for the led pin loop{ // starts a loop led.on(); sleep(Duration::from_secs(1)); // creates a 1 second pause led.off(); sleep(Duration::from_secs(1)); }
¡Eso es! Guarde su script y regrese a la terminal.
Pruébalo
Construya el proyecto nuevamente para actualizar el ejecutable. Alternativamente, el comando ejecutar construye y ejecuta el script en un solo paso:
cargo run
Debería ver un LED parpadeante. ¡Bien hecho! Acaba de hacer su primer programa de hardware con Rust. Presione Ctrl-C para volver a la terminal. Si tiene algún error, revise su código minuciosamente para ver si faltan dos puntos, punto y coma o corchetes.
Un futuro emocionante con óxido en Raspberry Pi
Actualmente, Python no está en peligro de ser reemplazado por Rust. Es fácil de aprender y Python tendrá muchas aplicaciones en los próximos años.
Dicho esto, Rust tiene un gran revuelo al respecto, y hay muchas razones por las que debes aprender el idioma. 7 Razones Rust es el nuevo lenguaje de programación más emocionante 7 Razones Rust es el nuevo lenguaje de programación más emocionante ¿Quieres comenzar con la programación? He aquí por qué Rust es el nuevo lenguaje de programación más emocionante y accesible. Lee mas !
Explora más sobre: Raspberry Pi, Rust.