GPIO для чайников (часть 1)
-
почему-то не хочет компилировать
gcc -o GPIO-test GPIO-test.c -l bcm2835 /usr/local/lib/libbcm2835.a(bcm2835.o): In function `bcm2835_delayMicroseconds': /home/pi/bcm2835-1.11/src/bcm2835.c:342: undefined reference to `clock_gettime' /home/pi/bcm2835-1.11/src/bcm2835.c:352: undefined reference to `clock_gettime' collect2: ld returned 1 exit status
-
pi@raspberrypi ~/bcm2835-1.8/myprog $ sudo gcc –o GPIO-test GPIO-test.c –l bcm2835 gcc: error: –o: No such file or directory gcc: error: GPIO-test: No such file or directory gcc: error: –l: No such file or directory gcc: error: bcm2835: No such file or directory
Помогите не хочет компилится
-
Спасибо решено!
- длинные тире это зло программа отказывалась собираться с длинными тире
- при копировани добовляет лишнии строки и прочии не нужные пробелы их я поудалял
-
Спасибо большое, за проделанную работу! Я про написание туториала.
-
Вот проделал тоже самое, и не работает. точнее установил библиотеку, код компиллится без ошибок, но когда запускаешь, на порт ничего... смотрел даже примеры из bcm2835 , не работает и все. сама программа точнее работает, а порты нет. Кто знает, в чем еще может быть дело?
-
Я в этом GPIO чайник ... купил малину для CarPC ну и начал интересеваться им. Для начала собрал пример это и ни 01 ни 03 не горят. хотя я его вольтметром счупаю взамест светодиода. Мобыть сгорело ? ан нет.
установил софтинку http://code.google.com/p/webiopi/ и оказывается эти 01 и 03 совсем не для того предназначены :=. Мобыть из за того что у меня версия малины не та, что у автора, а вот на 07 начал напрюжометр скакать яки положено.
спасибо автор - не зря писал -
Было бы хорошо если бы автор поста пролил свет на эту тему. тоже новая малинка и тоже самое с этими пинами, может их надо как то переназначить? хотя признаюсь подозрение на то что мог их коротнуть на 5V имееются %) и на душе как то не спокойно
-
похоже болезнь должна вылечиться обновлением библиотеки для работы с GPIO(по крайней мере в ченжлоге есть упоминания о изменениях для второй редакции платы)
http://www.open.com.au/mikem/bcm2835/bcm2835-1.14.tar.gz
не плохо было бы если статью подправили -
В общем, что бы исспользовать пин P1-03 в платах ревизии 2 надо дописывать V2 в объявлении пина
#define PIN RPI_GPIO_P1_03
должно быть так
#define PIN RPI_V2_GPIO_P1_03 -
А у вас какая версия RPI?
Если V2, то читайте решение внизу у автора ASA. -
Правильно ли я понимаю, что для того чтобы включить светодиод аналогично тому как он включен в статье, но для ревизии 2.0, необходимо использовать не третий пин, а второй?
#define PIN RPI_V2_GPIO_P1_02
Ну если верить вот этой распиновке: http://www.raspberrypi-spy.co.uk/wp-content/uploads/2012/09/Raspberry-Pi-GPIO-Layout-Revision-2.png
-
Все, понял свою ошибку.
-
При запуске ./GPIO-test выдается следующая ошибка bcm2835_init: Unable to open /dev/mem: Permission denied
в каталоге dev ни папки ни файла mem нету, куда копать?
Спасибо! -
попробуйте перед ./GPIO-test добавить sudo, должно помочь
-
Это ненормально писать,как определить полярность диода!!!
У всех диодов большая ножка + ,меньшая - . -
У всех диодов длинная ножка это анод(минус) диода, меньшая катод(плюс),
НО,
Именно АНОД нужно соединять с катодом источника, в нашем случае PIN_01 чтобы ток пошел,Для лучшего понимания, присмотритеть в картинку с диодом и батарейкой выше, все поймете
-
Кстати ,рекомендую эти уроки - как раз для чайников!) - (шучу).
-
Я читал в википедии ,что в америке и европе понимания под словами КАТОД И АНОД разные , и противоречат друг другу, поэтому вы тут правы на половину)
-
https://ru.wikipedia.org/wiki/Анод - тут анод минус.
-
Таже проблема при компиляции:
gcc -o GPIO-test gpio-test.c -lrt -lbcm2835 /tmp/ccE0RVRK.o: In function `main': gpio-test.c:(.text+0x3c): undefined reference to `bcm2835_gpio_delay' collect2: ld returned 1 exit status
Что делать? Egor решил?