Code:#define PIN RPI_GPIO_P1_11
steuert nicht den GPIO11 an, sondern den PIN11 an dem IDE Connector. P1-11 wäre GPIO17
PS.: Compileraufruf ist eh mit -l und nicht -6?
Code:GCC -o blink Blink_LED.c -lbcm2835
Hallo Forum,
ich versuche schon seit einiger Zeit die GPIOs vom Raspberry Pi zu togglen.
Hierzu habe ich dieses Programm:
von dieser SeiteCode:// blink.c // // Example program for bcm2835 library // Blinks a pin on an off every 0.5 secs // // After installing bcm2835, you can build this // with something like: // GCC -o blink blink.c -l bcm2835 // sudo ./blink // // Or you can test it before installing with: // GCC -o blink -I ../../src ../../src/bcm2835.c blink.c // sudo ./blink // // Author: Mike McCauley (mikem@open.com.au) // Copyright (C) 2011 Mike McCauley // $Id: RF22.h,v 1.21 2012/05/30 01:51:25 mikem Exp $ #include <bcm2835.h> // Blinks on RPi pin GPIO 11 #define PIN RPI_GPIO_P1_11 int main(int argc, char **argv) { // If you call this, it will not actually access the GPIO // Use for testing // bcm2835_set_debug(1); if (!bcm2835_init()) return 1; // Set the pin to be an output bcm2835_gpio_fsel(PIN, BCM2835_GPIO_FSEL_OUTP); // Blink while (1) { // Turn it on bcm2835_gpio_write(PIN, HIGH); // wait a bit delay(500); // turn it off bcm2835_gpio_write(PIN, LOW); // wait a bit delay(500); } return 0; }
http://elinux.org/RPi_Low-level_peripherals
heruntergeladen. Außerdem habe ich die BCM2835 Libary auf mein Pi gespielt und installiert (http://www.open.com.au/mikem/bcm2835/).
Die Libary habe ich auch auf meinem Rechner wo ich das Programm geschrieben habe.
Das Programm habe ich per SCP auf mein Pi übertragen und mittels "gcc -o blink Blink_LED.c -6 bcm2835" auf dem Pi kompiliert.
Anschließend wollte ich das Programm mit "sudo ./blink" ausführen.
An dem GPIO11 habe ich mein Oszi angeschlossen (ist ja von der zweireihigen Stiftleiste der zweite Pin von unten).
Allerdings sehe ich nicht das der Pin togglet......da passiert eigtl. gar nichts.
Als Kernel habe ich diesen hier:
http://www.frank-buss.de/tmp/kernel.img
Kann mir jemand bei meinem Problem helfen?
Danke schonmals!
Schaut ruhig mal auf meiner Homepage vorbei :
http://kampis-elektroecke.de
Oder folge mir auf Google+:
Daniel Kampert
Es gibt 10 Arten von Menschen. Die einen können Binär, die anderen nicht.
Gruß
Daniel
Code:#define PIN RPI_GPIO_P1_11
steuert nicht den GPIO11 an, sondern den PIN11 an dem IDE Connector. P1-11 wäre GPIO17
PS.: Compileraufruf ist eh mit -l und nicht -6?
Code:GCC -o blink Blink_LED.c -lbcm2835
Kultuverein Metal Resurrection, für mehr Bands und Konzerte in Österreich (:
Schaut ruhig mal auf meiner Homepage vorbei :
http://kampis-elektroecke.de
Oder folge mir auf Google+:
Daniel Kampert
Es gibt 10 Arten von Menschen. Die einen können Binär, die anderen nicht.
Gruß
Daniel
Kultuverein Metal Resurrection, für mehr Bands und Konzerte in Österreich (:
Ah nicht gesehen.
Hab mich einfach nur verschrieben
Sorry!
Schaut ruhig mal auf meiner Homepage vorbei :
http://kampis-elektroecke.de
Oder folge mir auf Google+:
Daniel Kampert
Es gibt 10 Arten von Menschen. Die einen können Binär, die anderen nicht.
Gruß
Daniel
Funktionierts jetzt mit GPIO17?
Kultuverein Metal Resurrection, für mehr Bands und Konzerte in Österreich (:
Jap funktioniert nun!
Dank dir vielmals.
Also bezieht sich die Nummerrierung auf die Nummerierung der Stiftleiste und nicht der GPIOs.
Danke für den Hinweis.
SPI sollte ja mit der Lib auch funktionieren oder habe ich das falsch gelesen?
Schaut ruhig mal auf meiner Homepage vorbei :
http://kampis-elektroecke.de
Oder folge mir auf Google+:
Daniel Kampert
Es gibt 10 Arten von Menschen. Die einen können Binär, die anderen nicht.
Gruß
Daniel
Ja, die beziehen sich auf die Pinleistennummerierung, siehe http://www.open.com.au/mikem/bcm2835...db4e57736d0939
SPI sollte auch funktioniere.
Kultuverein Metal Resurrection, für mehr Bands und Konzerte in Österreich (:
Jetzt habe ich gerade das hier gefunden:
http://hobbyelektronik.org/w/index.php/Raspberry_Pi_IO
Den Webserver habe ich schon ans laufen bekommen. Allerdings verstehe ich nicht ganz wie man das macht, dass man auf einer Homepage ein Button drückt und dann eine LED angeht, sprich wie man die Verbindung zwischen Homepage die sich ja im www Verzeichnis befindet und dem Programm welches man ausführt zu stande bekommt (bin auch noch recht unerfahren was die Thematik Embedded Linux usw. angeht. Das kommt noch erschwerend dazu).
Schaut ruhig mal auf meiner Homepage vorbei :
http://kampis-elektroecke.de
Oder folge mir auf Google+:
Daniel Kampert
Es gibt 10 Arten von Menschen. Die einen können Binär, die anderen nicht.
Gruß
Daniel
Also der Artikel ist Ansich sehr gut. Das schöne an Linux, es ist alles eine Datei. Ergo lassen sich die GPIO nicht nur über DMA /dev/mem bzw. libbmc ansprechen, sondern auch jeder GPIO selbst als Datei (siehe Artikel). Ergo kann man den einzelnen GPIO-Dateien entsprechende Berechtigungen zuweisen und somit per PHP die Dateien lesen und schreiben und somit den GPIO bedienen.
Kultuverein Metal Resurrection, für mehr Bands und Konzerte in Österreich (:
Lesezeichen