Raspberry Pi® a fondo para desarrolladores. Derek Molloy
Чтение книги онлайн.

Читать онлайн книгу Raspberry Pi® a fondo para desarrolladores - Derek Molloy страница 26

Название: Raspberry Pi® a fondo para desarrolladores

Автор: Derek Molloy

Издательство: Bookwire

Жанр: Математика

Серия:

isbn: 9788426727800

isbn:

СКАЧАТЬ jessie InRelease ...

      Building dependency tree Reading state information... Done

      Cuando se complete esta actualización, podremos descargar e instalar automáticamente las últimas versiones del software disponible usando el comando apt upgrade. Como es lógico, deberemos siempre realizar un apt update antes de un apt upgrade:

      pi@erpi ~ $ sudo apt upgrade

      Reading package lists... Done Building dependency tree

      Reading state information... Done Calculating upgrade... Done ...

      After this operation, XXXXX B of additional disk space will be used.

      Do you want to continue? [Y/n]

      Existe una herramienta adicional específica para el RPi que nos permite actualizar el núcleo de Linux, los controladores y las librerías del RPi. La herramienta rpi-update puede recibir llamadas directas, sin argumentos, pero también cuenta con determinados ajustes avanzados, que se describen en github.com/Hexxeh/rpi-update. Por ejemplo, estos ajustes permiten actualizar el firmware sin tener que sustituir el núcleo:

      pi@erpi ~ $ sudo apt install rpi-update

      pi@erpi ~ $ sudo rpi-update

      *** Raspberry Pi firmware updater by Hexxeh, enhanced by AndrewS and Dom

      This update bumps to rpi-4.1.y linux tree ...

      *** Updating firmware

      *** Updating kernel modules

      *** depmod 4.1.15-v7+

      *** Updating VideoCore libraries

      *** Using HardFP libraries ...

      *** A reboot is needed to activate the new firmware

      pi@erpi ~ $ sudo reboot

      Después de reiniciar la placa, la versión actual del núcleo debería quedar alineada con el núcleo y el firmware recién instalado:

      molloyd@desktop:~$ ssh [email protected]

      pi@erpi ~ $ uname -a

      Linux erpi 4.1.15-v7+ #830 SMP Tue Dec 15 17:02:45 GMT 2015 armv7l GNU/Linux

      La salida de vídeo del RPi se puede reconfigurar mediante la aplicación tvservice

      (/opt/vc/bin/tvservice). Deberíamos conectar el cable del monitor HDMI en el RPi y utilizar la aplicación tvservice para listar los modos de conexión de la pantalla CEA (típicamente televisiones) o DMT (típicamente monitores de ordenador) conectada:

      pi@erpi ~ $ tvservice --modes CEA

      Group CEA has 0 modes:

      pi@erpi ~ $ tvservice --modes DMT

      Group DMT has 13 modes:

      …

      mode 51: 1600x1200 @ 60Hz 4:3, clock:162MHz progressive

      mode 58: 1680x1050 @ 60Hz 16:10, clock:146MHz progressive

      (prefer) mode 82: 1920x1080 @ 60Hz 16:9, clock:148MHz progressive

      pi@erpi ~ $ tvservice --status

      state 0x120006 [DVI DMT(82) RGB full 16:9], 1920x1080 @ 60.00Hz, progressive

      Podemos fijar explícitamente la resolución del RPi con la misma herramienta. Por ejemplo, podemos actualizar la resolución de salida a un modo DVI 1600 × 1200, disponible en la lista de más arriba:

      pi@erpi ~ $ tvservice --explicit="DMT 51"

      Powering on HDMI with explicit settings (DMT mode 51)

      pi@erpi ~ $ tvservice --status

      state 0x120006 [DVI DMT (51) RGB full 4:3], 1600x1200 @ 60.00Hz, progressive

      pi@erpi ~ $ fbset -depth 8 && fbset -depth 16

      La última línea fuerza un refresco del buffer de cuadro o frame buffer (una área de la memoria de vídeo) para actualizar la pantalla. Después de comprobar la nueva resolución, podemos establecer de forma explícita el valor en el archivo /boot/config.txt, donde hdmi_group=1 establece un modo CEA, y hdmi_group=2 un modo DMT:

      pi@erpi /boot $ more config.txt | grep ^hdmi

      hdmi_group=2

      hdmi_mode=51

      Si no estamos usando la salida HDMI, podemos desconectarla completamente. Ello nos permitiría ahorrar una corriente de entre 25 y 30 mA.

      pi@erpi ~ $ tvservice --off

      Powering off HDMI

      Existen herramientas adicionales también diseñadas para el RPi que permiten capturar datos de imagen y vídeo, que describiremos con detalle en el capítulo 15.

      Esta sección describe cómo podemos alterar el comportamiento de los LED incorporados a la placa del RPi. Estos LED están en la esquina superior izquierda de la placa del RPi 2 y en la parte inferior izquierda de la del RPi 3. Ambas placas incorporan dos LED que sirven para dar información del estado de las mismas.

      ❏El ACT LED (llamado OK en los modelos antiguos) parpadea de forma predeterminada durante la actividad de la tarjeta micro-SD. Desde Linux nos referimos a ese LED como led0.

      ❏El PWR LED se ilumina cuando el RPi está encendido. Desde Linux, este LED se conoce como led1 en algunos modelos, como el RPi 2, pero en modelos más antiguos está soldado directamente a la entrada de alimentación.

      Figura 2-9: Los LED de actividad y alimentación de los RPi.

      Podemos cambiar el comportamiento de estos LED para que se ajusten a nuestras necesidades, pero durante ese tiempo perderemos estas útiles informaciones de estado y alimentación del dispositivo.

      NOTA Observe que el RPi Zero carece de PWR LED físico (led1), a pesar de que existan entradas en archivos de Linux que indiquen lo contrario. Podemos programar el disparador del ACT LED (led0) como se describe más adelante. Observe que la polaridad del LED está invertida. En modo disparador (trigger mode) "none" (ninguno), un valor de "0" para el brillo enciende el LED, mientras que un valor de "1" lo apaga. Este comportamiento se puede ajustar a lo largo del tiempo.

      Sysfs es un sistema de archivos virtual disponible en las versiones más recientes del núcleo de Linux. Nos proporciona acceso a dispositivos y controladores que de otro modo solo serían accesibles en un espacio restringido del núcleo. Este tema se trata en profundidad en el capítulo 6. Sin embargo, en este punto, resultaría útil explorar brevemente la manera de usar sysfs para modificar el comportamiento de los LED de la placa.

      Usando el cliente SSH, nos conectamos al RPi y navegamos СКАЧАТЬ