RaspberryPi: Unterschied zwischen den Versionen

Aus Wiki
Zur Navigation springenZur Suche springen
(Programmierung "C")
Zeile 54: Zeile 54:
 
== PiFace ==
 
== PiFace ==
 
* [http://www.noveldevices.co.uk/rp-piface-1 PiFace Interface Card (inklusive C Programmierung)]
 
* [http://www.noveldevices.co.uk/rp-piface-1 PiFace Interface Card (inklusive C Programmierung)]
=== Messen und steuern ===
+
 
==== 1Wire ====
+
== Messen und steuern ==
 +
* [http://abyz.co.uk/rpi/pigpio/cif.html pigpio library]
 +
* WireingPi
 +
 
 +
=== WireingPi installieren ===
 +
cd
 +
mkdir -p Programming
 +
cd Programming
 +
git clone git://git.drogon.net/wiringPicdwiringPi
 +
git pull origin
 +
./build
 +
 
 +
=== 1Wire ===
  
 
[https://www.raspiprojekt.de/anleitungen/schaltungen/9-1wire-mit-temperatursensor-ds18b20.html?showall=1&limitstart= Ds1820 an Raspberry Pi]
 
[https://www.raspiprojekt.de/anleitungen/schaltungen/9-1wire-mit-temperatursensor-ds18b20.html?showall=1&limitstart= Ds1820 an Raspberry Pi]
Zeile 71: Zeile 83:
 
wird der Sensor mit der ID '''10-000802bd06e4''' ausgelesen (dauert ca. 0,5 - 1 Sekunde.
 
wird der Sensor mit der ID '''10-000802bd06e4''' ausgelesen (dauert ca. 0,5 - 1 Sekunde.
  
==== i2c ====
+
=== i2c ===
 
[http://www.gsurf.de/vorbereiten-des-raspberry-pi-auf-i2c/ Raspberry Pi auf I2C]
 
[http://www.gsurf.de/vorbereiten-des-raspberry-pi-auf-i2c/ Raspberry Pi auf I2C]
 
[http://nathan.chantrell.net/20120519/raspberry-pi-and-the-mcp23017-i2c-io-expander/ Raspberry Pi and the MCP23017 I2C I/O Expander]
 
[http://nathan.chantrell.net/20120519/raspberry-pi-and-the-mcp23017-i2c-io-expander/ Raspberry Pi and the MCP23017 I2C I/O Expander]
Zeile 127: Zeile 139:
 
  i2c-bcm2708
 
  i2c-bcm2708
  
===== Programmierung "C" =====
+
==== Programmierung "C" ====
 
[http://wiringpi.com/extensions/i2c-mcp23008-mcp23017/ Wireing Pi I2C: MCP23008 & MCP23017]
 
[http://wiringpi.com/extensions/i2c-mcp23008-mcp23017/ Wireing Pi I2C: MCP23008 & MCP23017]
  
  
====== pigpio library ======
 
[http://abyz.co.uk/rpi/pigpio/cif.html pigpio library]
 
  
====== WireingPi ======
 
'''installieren'''
 
cd
 
mkdir -p Programming
 
cd Programming
 
git clone git://git.drogon.net/wiringPicdwiringPi
 
git pull origin
 
./build
 
  
====== Interrupts ======
+
===== Interrupts =====
 
[http://cs.smith.edu/dftwiki/index.php/Tutorial:_Interrupt-Driven_Event-Counter_on_the_Raspberry_Pi Tutorial: Interrupt-Driven Event-Counter on the Raspberry Pi]
 
[http://cs.smith.edu/dftwiki/index.php/Tutorial:_Interrupt-Driven_Event-Counter_on_the_Raspberry_Pi Tutorial: Interrupt-Driven Event-Counter on the Raspberry Pi]

Version vom 13. Juli 2014, 13:35 Uhr


der RaspberryPi ist ein scheckkarten großer stromsparender Computer der sich besonders zum Messen und Regeln einigt

PaspBerry Pi Homepage

Es gibt einen Klone(Nachfolger) den [Bana Pi] der hat mehr Rechneleistung und ist angeblich kompatibel mit dem Paspberry Pi

Raspberry Pi auf elektronik-kompendium.de

Betriebssysteme

Raspbian

raspbian.org

Standart User : pi

Tipps und Tricks

  • Configuration starten : sudo raspi-config
  • cron logging aufdrehen : in der Datei /etc/rsyslog.conf die Zeile #cron.* editieren (# am Anfang löschen)

= WLAN Verbindung mit der Commandline herstellen

  • wpa_cli starten (default interface ist wlan0
  • scan durchsucht die vorhanden Netzwerke
  • mit scan_results werden die gefundenen Netzwerke angezeigt
  • add_network legt eine neue Netzwerkkonfiguration an (beim ersten MAl die Konfiguration 0, dies wird als Wert angezeigt) dieser muss als ID angegeben werden
  • set_network 0 ssid "WLAN-Network"
  • set_network 0 psk "SupahSecretPassphrase"

Pakete

update der Paketlisten

# sudo apt-get update

Pakete updaten

# sudo apt-get upgrade


  • mc (Midnight Comander) => sudo apt-get install mc
  • iceweasel (firefox Ersatz) => sudo apt-get install iceweasel
  • php => sudo apt-get install php5
  • php-mysql => sudo apt-get install php5-mysql
  • git => sudo apt-get install git-core

Software

OpenVpn auf Raspberry Pi installieren

GPIO

PiFace

Messen und steuern

WireingPi installieren

cd
mkdir -p Programming
cd Programming
git clone git://git.drogon.net/wiringPicdwiringPi
git pull origin
./build

1Wire

Ds1820 an Raspberry Pi

Bevor man mit dem Rasperry den 1Wire Bus benutzen an, müssen die Kernel Module geladen werden

  • sudo modprobe w1-gpio pullup=1
  • sudo modprobe w1-therm

damit diese Module beim Start automatisch geladen werden, müssen sie in das File /etc/modules eingetragen werden

w1-gpio pullup=1
w1-therm

auf die Sensoren wird via Device zugegriffen. Für jeden Sesnor gibt es ein Verzeichnis unter /sys/bus/w1/devices in diesem Unterverzeichnis dann die Datei w1_slave. mit dem Befehl

/sys/bus/w1/devices/10-000802bd06e4/w1_slave

wird der Sensor mit der ID 10-000802bd06e4 ausgelesen (dauert ca. 0,5 - 1 Sekunde.

i2c

Raspberry Pi auf I2C Raspberry Pi and the MCP23017 I2C I/O Expander

I2C ist default im Rasberry abgedreht. Um es zu aktivieren mus in der Datei /etc/modprobe.d/raspi-blacklist.conf die Zeile blacklist i2c-bcm2708 auskommentiert werden.

Beschaltung: Wichtig, Pin 18 (Reset) muss auf + gelegt werden

  • sudo modprobe i2c-bcm2708 i2c Kernelmodule laden
  • sudo modprobe i2c_dev i2c Kernelmodule laden
  • sudo apt-get install i2c-tools i2c Tools installieren
  • testen des i2c mit sudo i2cdetect -y 1 Auf einer Adresse sollte ein Gerät angezeigt werden (zum Beispiel 0x20)
  • mit sudo i2cdump -y 1 0x20 werden alle Register des Chips auf der Adresse 0x20 ausgelesen

Register des MCP-23017

  • 00h IODIRA
  • 01h IODIRB
  • 02h IPOLA
  • 03h IPOLB
  • 04h GPINTENA
  • 05h GPINTENB
  • 06h DEFVALA
  • 07h DEFVALB
  • 08h INTCONA
  • 09h INTCONB
  • 0Ah IOCON
  • 0Bh IOCON
  • 0Ch GPPUA
  • 0Dh GPPUB
  • 0Eh INTFA
  • 0Fh INTFB
  • 10h INTCAPA
  • 11h INTCAPB
  • 12h GPIOA
  • 13h GPIOB
  • 14h OLATA
  • 15h OLATB

Umschalten der Ports vom GPIOA auf Ausgang mit dem Befehl sudo i2cset 1 0x20 0x00 0x00 Parameter:

1    => i2c Bus 1
0x20 => Adresse des Bausteins
0x00 => IODIRA (Input Output Direction Bus A)
0xff => 1111 1111 => alle als Imput (0x00 => 0000 0000 => alle als Output)

Einschalten eines Ausganges sudo i2cset 1 0x20 0x12 0x01

1    => i2c Bus 1
0x20 => Adresse des Bausteins
0x12 => GPIOA
0x01 => 0000 0001 => Port 1 einschalten (LED leuchtet)


damit diese Module beim Start automatisch geladen werden, müssen sie in das File /etc/modules eingetragen werden

i2c_dev
i2c-bcm2708

Programmierung "C"

Wireing Pi I2C: MCP23008 & MCP23017



Interrupts

Tutorial: Interrupt-Driven Event-Counter on the Raspberry Pi