Skip to content
  • Категории
  • Главная
  • Документация
  • Последние
  • Пользователи
Collapse
  1. Главная
  2. Блоги сообщества Raspberry Pi
  3. GPIO для чайников (Часть 2)

GPIO для чайников (Часть 2)

Запланировано Прикреплена Закрыта Перенесена Блоги сообщества Raspberry Pi
14 Сообщения 2 Posters 863 Просмотры
  • Сначала старые
  • Сначала новые
  • По количеству голосов
Авторизуйтесь, чтобы ответить
Эта тема была удалена. Только пользователи с правом управления темами могут её видеть.
  • piP Не в сети
    piP Не в сети
    pi
    написал в отредактировано pi
    #5

    Небольшая поправка:
    "Компилируем и запускаем:
    gcc -o button button.c -lrt -lbcm283"
    Нужно:

    gcc -o button button.c -lrt -lbcm2835
    
    1 ответ Последний ответ
    0
    • piP Не в сети
      piP Не в сети
      pi
      написал в отредактировано
      #6

      Просто удалите. Автор писал.

      1 ответ Последний ответ
      0
      • piP Не в сети
        piP Не в сети
        pi
        написал в отредактировано
        #7

        Для RPI rev.V2 вместо строчки
        bcm2835_gpio_pud(PIN_IN, 1);
        нужно написать
        bcm2835_gpio_set_pud(PIN_IN, BCM2835_GPIO_PUD_DOWN);

        1 ответ Последний ответ
        0
        • piP Не в сети
          piP Не в сети
          pi
          написал в отредактировано pi
          #8

          Еще до того как увидел данную статью поигрался с бесконечным циклом и разным временем работы светодиода. Как будто мысли ваши читал.

          Почему-то программа с кнопкой у меня не компилируется. Пробовал так как тут и с исправленными пинами и для второй и для первой ревизии. И библиотеку уже установил старую - 1.17, а до этого была самая новая, думал в этом дело... и компилировать пробовал по разному... никак не хочет... не пойму в чем дело...

          Вот такие ошибки:

          button.c: In function ‘main’:
          button.c:23:23: error: ‘RPI_V2_GPIO_P1_06’ undeclared (first use in this function)
          button.c:23:23: note: each undeclared identifier is reported only once for each function it appears in
          button.c:24:5: error: too many arguments to function ‘bcm2835_gpio_pud’
          /usr/local/include/bcm2835.h:723:17: note: declared here
          button.c:38:5: error: too many arguments to function ‘bcm2835_gpio_pud’
          /usr/local/include/bcm2835.h:723:17: note: declared here
          
          1 ответ Последний ответ
          0
          • piP Не в сети
            piP Не в сети
            pi
            написал в отредактировано pi
            #9

            Вот такие ошибки:
            button.c: In function ‘main’:

            В начале кода:
            #include <bcm2835.h>
            #include <stdio.h>
            Например для ошибки button.c:23:23 можно так для :

            #define PIN RPI_V2_GPIO_P1_06

            для button.c:24:5:

            ругается что много аргументов которые заданы в скобках () после -- bcm2835_gpio_pud

            надо было их здесь олицетворить...
            но наверное должно быть что-то типа этого:

            bcm2835_gpio_set_pud(PIN, BCM2835_GPIO_PUD_UP)

            В скобках 2 аргумента, это PIN задефайнен см. вверху и макрос BCM2835_GPIO_PUD_UP для Pull-up/down resistor....

            1 ответ Последний ответ
            0
            • piP Не в сети
              piP Не в сети
              pi
              написал в отредактировано
              #10

              Использование bcm2835_gpio_set_pud() выдавало сообщение: ошибка сегментации. В итоге в схему добавил подтягивающий резистор на 10к, как и говорил Александр Антонович. Все заработало. Работаю на RaspberryPi 3.

              1 ответ Последний ответ
              0
              • piP Не в сети
                piP Не в сети
                pi
                написал в отредактировано
                #11

                Всем привет.
                есть raspberry pi3 нужно собрать монтажную плату и подключить пару кнопок.
                за вознаграждение.
                пишите если у кого есть желание.

                1 ответ Последний ответ
                0
                • piP Не в сети
                  piP Не в сети
                  pi
                  написал в отредактировано
                  #12

                  Подскажите как будет выглядеть подключение если кнопка будет иметь внешнее питание 3,3в, а не внутреннее. Например батарейка. Как в таком случае считать сигнал нажатия?

                  1 ответ Последний ответ
                  0
                  • piP Не в сети
                    piP Не в сети
                    pi
                    написал в отредактировано
                    #13

                    Кнопка в принципе не имет питания. Она механически замыкает/размыкает цепь

                    1 ответ Последний ответ
                    0
                    • piP Не в сети
                      piP Не в сети
                      pi
                      написал в отредактировано
                      #14

                      Ок, я не много не так выразился. Есть два провода(с внешнего устройства) плюс и минус. Как мне с них снять сигнал? То-есть там либо есть ток, либо нету. По сути таже кнопка, только питание идет не с пина gpio.

                      1 ответ Последний ответ
                      0
                      • R RomanNV5 сослался на эту тему в

                      • Войти

                      • Нет учётной записи? Зарегистрироваться

                      • Login or register to search.
                      • Первое сообщение
                        Последнее сообщение
                      0
                      • Категории
                      • Главная
                      • Документация
                      • Последние
                      • Пользователи