CHIP - $ 9 Raspberry Pi Killer

Bild
Informationen darüber, wie ein Linux-Computer im Wert von 9 US-Dollar mit Kickstarter mehr als 2.000.000 US-Dollar gesammelt hat, sind bereits durch Geektimes geflogen . Ich habe dieses Projekt auch zum Zeitpunkt der Spendenbeschaffung unterstützt und neulich flog meine Kopie dieses Geräts zu mir

Dieser Computer ist mit einem Allwinner R8-Prozessor auf einer ARM-Architektur mit einer Frequenz von 1 GHz, 512 MB RAM, 4 GB internem Flash-Speicher ausgestattet und verfügt über integriertes WLAN mit Unterstützung für B / G / N-Standards und integriertes Bluetooth 4.0. Die Schnittstellen umfassen einen USB-Anschluss, einen Composite-AV-Ausgang zum Anschließen an ein Fernsehgerät oder ein beliebiges Display, das Composite-Videoeingang unterstützt, Micro-USB für die Stromversorgung und Firmware von CHIP selbst, einen Anschluss zum Anschließen eines externen Akkus und Pads mit GPIO-Anschlüssen. Mit letzterem können Sie jedoch zusätzliche HDMI- oder VGA-Adapter anschließen, die separat zu einem Preis von 15 USD bzw. 10 USD erhältlich sind.
BildBild
Außerdem gibt es eine PocketC.HIP-Erweiterung, mit der Sie einen Mini-Computer vollständig mobil machen können, indem Sie einen Akku und eine Tastatur mit einem Display verbinden.
Bild

Das Gerät flog verpackt in einem Papierumschlag ein, in dem sich ein quadratischer Karton mit einem Mini-Computer befand.


Und hier ist der Inhalt der Schachtel.


Meine Kopie war mit einem pinkfarbenen, glamourösen AV-Kabel ausgestattet.


Hinter dem Prozessor befindet sich eine durchscheinende Hülle


Es funktioniert alles unter der Modifikation von Linux Debian als Betriebssystem. Ich stelle fest, dass die Gesamtleistung nicht großartig ist. Bluetooth und Wi-Fi funktionieren einwandfrei, die drahtlose Tastatur und Maus von iMac waren problemlos verbunden und mit dem Internet verbunden. Auch mit USB wurden keine Probleme festgestellt, ein Flash-Laufwerk, eine Maus sowie ein Stick von einem drahtlosen Logitech F710-Gamepad wurden ermittelt und funktionierten einwandfrei. Übrigens habe ich in Bezug auf Spiele versucht, daraus einen Miniatur-Emulator für Spieleplattformen zu machen, den Mednafen-Emulator installiert, der viele alte Spielesysteme unterstützt, und die Mednaffe- GUI daraus gesammelt . Leistung und Qualität sind in diesem Video zu sehen.


Zunächst einmal versuchen wir, die GPIO-Ports zu steuern. Blinken Sie beispielsweise eine LED durch. Dazu verbinden wir die LED über einen 100-200 Ohm Widerstand mit der Anode mit dem 5. Ausgang des U13-Blocks und der Kathode mit dem 13. Ausgang des U14-Blocks wie im Diagramm


oder wie ich.


Alle weiteren Aktionen können direkt am Gerät oder per Remote-Verbindung mit dem Gerät über ssh ausgeführt werden. Standardmäßig verfügt das System über einen Chip-Benutzernamen und ein Kennwort. Sie müssen lediglich die IP-Adresse des Geräts ermitteln.
ssh chip@192.168.1.109

Der PCF8574A-Controller ist für die Steuerung der Eingangs- / Ausgangsanschlüsse verantwortlich. Die Steuerung erfolgt durch Manipulationen mit den Dateien / sys / class / gpio / gpio408, auf die nur unter dem Stammverzeichnis zugegriffen werden kann. Sie müssen also zuerst darauf zugreifen
su

Betrachten wir zwei Steuerungsmethoden über die Konsole und die Verwendung eines C-Programms. Also blinken wir die LED von der Konsole. Wechseln Sie in das Verzeichnis / sys / class / gpio
cd /sys/class/gpio

Aktivieren Sie GPIO und aktivieren Sie den Portbetrieb am Ausgang
echo 408 > export 
echo out > gpio408/direction

Jetzt können wir den Wert im Port festlegen, indem wir Werte in gpio408 / value schreiben
echo 1 > gpio408/value   #  
echo 0 > gpio408/value   #  

Unvergesslich deaktivieren Sie nach Abschluss die Arbeit mit GPIO
echo in > gpio408/direction
echo 408 > unexport

Und jetzt ist alles gleich, aber in C-Sprache. Erstellen Sie das Projektverzeichnis im Ausgangsverzeichnis und blinken Sie darin.
cd ~/
mkdir projects
cd projects
mkdir blink
cd blink

Führen Sie den Nano-Texteditor aus und erstellen Sie eine neue Datei (Strg + O) mit dem Namen main.c, d. H. Syntax-Hervorhebung sofort erhalten.
nano

Und eigentlich die Auflistung des Programms
#include <stdio.h>
#include <stdlib.h>
#include <fcntl.h>
#include <unistd.h>

int main()
{
	int fd;

	//    GPIO
	fd = open("/sys/class/gpio/export", O_WRONLY);
	if (fd < 0)
	{
		return -1;
	}

	write(fd, "408", 3);
	close(fd);

	//    
	fd = open("/sys/class/gpio/gpio408/direction", O_RDWR);
	if (fd < 0)
	{
		return -1;
	}

	write(fd, "out", 4);
	close(fd);

	//      
	fd = open("/sys/class/gpio/gpio408/value", O_RDWR);
	if (fd < 0)
	{
		return -1;
	}

	int i;
	for (i = 0; i < 1000; ++i)
	{
		write(fd, "1", 2);
		sleep(3);
		write(fd, "0", 2);
		sleep(3);
	}

	//    GPIO
	fd = open("/sys/class/gpio/unexport", O_WRONLY);
	if (fd < 0)
	{
		return -1;
	}

	write(fd, "408", 3);
	close(fd);
	return 0;
}

Als nächstes kompilieren und als root ausführen
gcc main.c -o blink
./blink

Damit ist die kleine Überprüfung des kleinen Computers abgeschlossen, obwohl er immer noch eine Vielzahl von Möglichkeiten bietet. Mit seinen Fähigkeiten und dem so niedrigen Preis erwies es sich als solider Konkurrent für den Raspberry Pi

Source: https://habr.com/ru/post/de390917/


All Articles