Skip to content
  • Категории
  • Главная
  • Документация
  • Последние
  • Пользователи
Collapse
  1. Главная
  2. Raspberry Pi
  3. Кнопка выключения

Кнопка выключения

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

    Ну тогда не знаю. Нужно подключить кнопку и написать программу или скрипт. Ничего конкретнее подсказать не могу 😞

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

      инструкции нет, читайте статьи "GPIO для чайников", пишите сами

      nice не снимет нагрузки с проца, в случае поллинга, ваш демон будет просыпаться в любом случае чтоб проверить состояние gpio, в случае прерываний, демон проснётся только когда поступит это самое прерывание, для подробностей гуглим polling vs interrupt

      "вешаем на кнопку poweroff" - КАК ? типа вот так system("poweroff"); остальной код есть в статьях

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

        Отлично! Куда проще сказать пишите сами...
        Я даже не знаю, как это вообще программно может выглядеть...

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

          Ну позвольте, все же это система. Винду ведь вы на-горячую из розетки не выдергивате? Надо поменять идеологию. Это не мс-дос. Завершайте работу корректно. Или смиритесь с ошибками.

          Что-то вроде "корректное завершение работы при исчезновении питания" действительно придется писать самому, да еще аккумулятор потребуется. Но за то это будет готовое продаваемое решение.

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

            Я - же и предлагаю вначале нажать на кнопку, подождать некоторое время, а потом ,когда заморгает светодиод, озночающий корректное завершение работы, выключить питание.

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

              Меня просто напрягает политика kukabu ...

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

                Ну, скорее всего, это будет отдельный блок, к которому подключается питание. Он будет обрабатывать падение питания, при этом поддерживая питание пирожка конденсатором или аккумулятором. Пирожок будет получать команду на завершение работы и делать sudo halt. После этого уже не важно, выдернем мы сей блок из пирожка или оставим все как есть, пока аккум/кондер не разрядится. Понятно, что такое устройство нужно прописать в системе.

                Некий аналог smartUPS на нынешних виндах. По крайней мере, я так это вижу. Отмечу, если блок получится компактным и легким в установке, с удовольствием куплю или повторю поделку сам. Ведь оно может даже отправить сообщение типа "На Raspberry Pi #12 пропало напряжение" и потом не придется тупить, почему пирожок перестал пинговаться.

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

                  http://www.masterkit.ru/info/magshow.php?num=693
                  А вот готовое решение. 590 рублей)))

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

                    dimonoid,

                    1. готового решения я не видел, видел бы кинул линк
                    2. я довольно полно указал возможности решения вашей проблемы, полному чайнику на пару часов работы + опыт
                    3. что вы от меня хотите? чтоб я сел и сделал за вас? извините, такого не будет.

                    Anton, как то излишне сложно, да и дорого 🙂

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

                      Ладно, спасибо хотя-бы за идею.

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

                        Интересная идея, надо подумать. Мне бы до платформы пригодилась. К примеру АКБ садится он сам едет по пропитанной команде на док станцию, как то так. Или информирует меня как то.

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

                          Код для кнопки выключения. Кнопка подключается к портам Р1_5 и Р1_6.

                          #include 
                          #define PIN_IN RPI_V2_GPIO_P1_05
                          int main()
                          {
                          if (!bcm2835_init())
                           return 1;
                          bcm2835_gpio_fsel(PIN_IN, BCM2835_GPIO_FSEL_INPT);
                          while(bcm2835_gpio_lev(PIN_IN))
                          {
                          }
                          system("poweroff");
                          return (bcm2835_close ());
                          }
                          

                          Компиляция

                          gcc -o имя_проги имя_проги.c -lrt -lbcm2835
                          

                          Запуск програмки

                          sudo ./имя_проги
                          
                          1 ответ Последний ответ
                          0
                          • piP Не в сети
                            piP Не в сети
                            pi
                            написал в отредактировано
                            #19

                            Только проц на 100% грузит)

                            1 ответ Последний ответ
                            0

                            • Войти

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

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