GPIO для чайников (часть 1)
-
Mike, ну вобще-то я это совсем для чайников писал. Раз уж вас интересуют uart,i2c,spi, то вы к этой категории вряд-ли относитесь. Но, как минимум, про UART я точно что-нить напишу, т.к. это для меня актуально (есть в наличии железки, которые просятся на это дело). Но это вряд-ли получится быстро. С начала я сам должен с юартом наиграться, чтобы достаточно уверенно с ним работать. Так что если вы сами уже обладаете какими то наработками- не стесняйтесь делиться ими со всеми
А в следующей части продолжим со светодиодом разбираться, т.к. он под управлением Raspberry способен на гораздо большее, чем просто гореть. -
Ну я в своё время неплохо разобрался со всем этим на примере mini6410 http://www.friendlyarm.net/products/mini6410
Raspberry Pi пока до меня не дошла. Как придёт обязательно напишу, что-нибудь интересное -
А вот я в "железной микроэлектронике" - чайник. И меня это очень заинтересовало.
Спасибо! -
почему-то не хочет компилировать
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 чтобы ток пошел,Для лучшего понимания, присмотритеть в картинку с диодом и батарейкой выше, все поймете
-
Кстати ,рекомендую эти уроки - как раз для чайников!) - (шучу).