На главную
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Страницы: (2) [1] 2  все  ( Перейти к последнему сообщению )  
    > Как проверить в ардуино, открыт ли определенный порт (аналог/цифра)?, Arduino Nano v.3.0.
      Дополнительно: как закрыть порт, не прибегая к пакетному PORTC?
        Цитата
        Дополнительно: как закрыть порт, не прибегая к пакетному PORTC?

        Небось соответствующий бит инвертировать?

        Цитата
        Как проверить в ардуино, открыт ли определенный порт

        Небось соответствующий бит проанализировать на 1 или 0.
        Сообщение отредактировано: DrUnkard -
          Цитата DrUnkard @

          Может, хорош стебаться уже? Мне функции нужны.
            А че стебаться-то? Все микроконтроллеры похожи. Я в Ардуине не в зуб ногой, но для PIC24 кое-что писал. Сильно на твои коды похоже.

            ExpandedWrap disabled
              // Настройка регистра B.
              // Аналоговые входы (определены в ADC_Init): RB0, RB1 и RB2 Установим их в 0.
              // Цифровые выводы RB3=1 - SI4463_RST   RB4=1 - REF_SKIP_SW включает опорн сигнал
                  LATB=0b00000011000000; // RB5, RB8-RB15 в 0(выкл) RB6=>CS2 1, RB7=>CS3 1 (потенциом и DAC VMAG не на связи)
              // Аналоговые входы RB0 (VREF+), RB1 (AN1-MAG), RB2 (AN2-PHS)
              // Цифровые выводы: RB3 и RB4, RB5=>SW25, RB8-RB15 => SW26-SW33. RB6 и RB7 оставляем как есть 1(Вход)
                  TRISB=0b0000000000000111;
                  ODCB=0x0; // Драйвер, а не открытый сток
              Цитата Сергей85 @
              как закрыть порт

              Что вы подразумеваете под этим?
                Цитата Alexei @

                Порт не работает ни на вход, ни на выход.
                  Цитата Сергей85 @
                  ни на вход, ни на выход.

                  Тогда только скальпель. :)
                  Прикреплённая картинка
                  Прикреплённая картинка

                  Подчеркнуты самые отключенные режимы.
                  Пин включен на вход, но кто вас заставляет им пользоваться. И через него только токи утечки.
                    Цитата Alexei @


                    Нет. Команда PORTC полностью выключает порты пакетно. Не работает ни прием, ни передача.
                      Цитата Сергей85 @
                      Нет. Команда PORTC полностью выключает порты пакетно

                      "А мужики то не знают!" , мужики из Атмела, а теперь Микрочипа, вы им глаза откройте.:)
                      Я бы арДУРЬинеров сжигал на костре!
                      Нихрена не понимают , а способны "подавать какие-то советы космического масштаба и космической же глупости" (с)
                      PORTC "ниразу" не пакетная, и не команда, а регистр данных порта С.

                      Если вы хотите чтобы вам помогли , то стоит написать что вам нужно.
                      Конкретно. А не ваши домыслы и фантазии.
                        Цитата Alexei @
                        Я бы арДУРЬинеров сжигал на костре!

                        Толерантнее надо быть! ;) Как некоторые пины к 5 вольтам! :D
                          "PORTC "ниразу" не пакетная, и не команда, а регистр данных порта С." - мне плевать, как это называется официально.

                          Вопрос в теме остается в той же формулировке. PORTC делает это пакетно. Как делать раздельно для 1 порта.
                            Покажите, как вы применяете эту "команду".
                            Подозреваю, что вы не понимаете что такое "включение-выключение". :)

                            Цитата Сергей85 @
                            как это называется официально.

                            Это не называется .
                              Цитата Alexei @



                              Примерно PORTC = B00000000;

                              В этом случае ни функция чтения порта, ни функция записи не функционируют.
                                Цитата Сергей85 @
                                Примерно

                                Это уже обнадеживает!
                                А как будет выглядеть "пакетная команда включения"?

                                Цитата Сергей85 @
                                PORTC = B00000000;

                                Собственно "командного" тут оператор присвоения "="
                                Вы присвоили "0" всем разрядам порта С, кстати один 0 лишний, у этой меге , если не путаю, порт С 7-ми разрядный.
                                По поводу "выключения" : светодиоды, например , подключенные к выводам порта и на "+" ,будут ярко светиться. Нихренасе выключение.
                                Это как бы вы хотели выключить люстру втыканием в розетку железной скобы. :)


                                Цитата Сергей85 @
                                не функционируют

                                Наверно, хреновые у вас функции...
                                Может вы что-то слышали про "пакетную команду" :) DDRC ? Она определяет что будет делать вывод порта , читать или писать. То есть , "выключится порт" по вашему или нет.
                                В той таблице, что выше ,все показано.
                                Сообщение отредактировано: Alexei -
                                  Цитата Alexei @
                                  DDRC


                                  DDRC - не выключится, а переключится.
                                  0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                                  0 пользователей:


                                  Рейтинг@Mail.ru
                                  [ Script execution time: 0,0422 ]   [ 18 queries used ]   [ Generated: 30.07.21, 14:35 GMT ]