Перейти к содержанию

Не получается отловить нажатие кнопки.


Рекомендуемые сообщения

Прогресс дошел до того, что я уже прикрутил счетчик на 4-х разрядный индикатор :). В дополнение хотел еще прикрутить кнопку для сброса индикатора в ноль. Однако ну никак не получается отловить ее нажатие, чтобы при событии применить процедуру соответствующую.

У меня цифровые порты заняты под контакты индикатора. На D2, D3, GND висит датчик для сканирования. Пытаюсь вешать кнопку на аналоговые пины  и применить функции из библиотеки Гайвера isClick  / Только вот какая засада. Все его функции привязаны к портам прерываний INT0 и INT1. Но меня это не устраивает. Как сказал там висит датчик и задействованы прерывания. Хотя.... я же могу конкретно для прерывания датчику оставить INT0, а питание ему подать с другого любого порта. НО интерес в том, что во всех примерах  Гайвера когда меняю его пины на аналоговый, к примеру A7, ничего не работает. Это так все серьезно? Только D2 и D3 могут работать с кнопкой? 

Ссылка на комментарий
Поделиться на другие сайты

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

НУ как и думал питание на датчик повесил на другой пин, работает. Кнопку подвесил на прерывание INT1. Тоже работает. НО почему тогда... что указано зелеными стрелками работате, а аналогичная процедура в том же практически блоке с красной стрелкой не работает ??? Т.е. монитор порта "Click" отображает, а процедура вывода на индикатор не работает ? 

Спойлер

Screenshot_23.jpg.9c942fa5b4351f9628bbe10b4aaba819.jpg

 

Только что, Delfin сказал:

Покажите схему

Схему чего?

Ссылка на комментарий
Поделиться на другие сайты

Hongfa для различных применений в Компэл. Большой выбор в наличии!

Компания HONGFA - это не только крупнейший в мире производитель электромеханических реле, но также производитель конденсаторов, вакуумных прерывателей, трансформаторов и низковольтного коммутационного оборудования. На складе КОМПЭЛ регулярно поддерживаются около 100 самых популярных позиций электромеханических реле. Реле Hongfa могут заместить многие изделия производства недоступных брендов. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

56 минут назад, Yurec66 сказал:

применить функции из библиотеки Гайвера isClick

Вы серьёзно ? Чтобы сделать обычный опрос ПИНа (для кнопки - более не нужно), пытаетесь использовать какие-то библиотеки ? :wacko:

Ссылка на комментарий
Поделиться на другие сайты

Тренды и лучшие решения для разработки зарядных станций в России

К 2029 году в России прогнозируется увеличение числа зарядных станций до 40 000. При этом отечественный рынок электротранспорта имеет климатические, потребительские и географические особенности. Для успешной разработки и построения инфраструктуры станций заряда в России идеальным вариантом является использование решений и электронных компонентов китайских производителей – лидеров индустрии электротранспорта и возобновляемой энергетики, которые уже представлены в КОМПЭЛ. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

50 минут назад, Yurec66 сказал:

У меня цифровые порты заняты под контакты индикатора. На D2, D3, GND висит датчик для сканирования. Пытаюсь вешать кнопку на аналоговые пины  и ...

В программе можно разделить опрос портов.
Т.е. есть выходные порты. Они выдают опрос на внешние кнопки.
Есть входные порты. Они воспринимают наличие выданного сигнала.

ВременнОе разделение позволяет использовать одни и те же порты для выполнения разных задач.

Ссылка на комментарий
Поделиться на другие сайты

Секреты депассивации литиевых батареек FANSO EVE Energy

Самыми лучшими параметрами по энергоемкости, сроку хранения, температурному диапазону и номинальному напряжению обладают батарейки литий-тионилхлоридной электрохимической системы. Но при длительном хранении происходит процесс пассивации. Разберем в чем плюсы и минусы, как можно ее избежать или уменьшить последствия и как проводить депассивацию батареек на примере продукции и рекомендаций компании FANSO EVE Energy. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

18 минут назад, Alex сказал:

использовать какие-то библиотеки ?

Да я уже тоже об этом подумал. Уже перебираю разные варианты. Трудновато понять на ровном месте почему не работает, когда должно.

Изменено пользователем Yurec66
Ссылка на комментарий
Поделиться на другие сайты

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

"Я не знаю какой там коэффициент, я просто паять умею. "

Ссылка на комментарий
Поделиться на другие сайты

5 hours ago, Yurec66 said:

Уже перебираю разные варианты

Подскажу еще один "разный вариант".

Забыть про скетчи (тьфу, прости Господи!), Arduino IDE и рассматривать вашу Nano v3 или что там у вас, как обычную макетную плату. Заиметь любой ISP программатор, совместимый с AVR Studio или CodeVisionAVR. И начать писать на Си, пользуясь любым руководством для начинающих, коих тьма, тот же А.В. Белов, например,  и даташитами на МК, которые для Attiny и Atmega тов. А.В. Евстифеев даже перевел на русский язык и обобщил в двух исключительно полезных книгах. Все эти книги легко находятся в сети. Что до библиотек, то в CVAVR их достаточно для большинства любительских случаев, они хорошо документированы и, главное, они нормально работают. 

Ссылка на комментарий
Поделиться на другие сайты

10 часов назад, Yurec66 сказал:

Схему чего?

Вашего устройства полностью на теперешний момент.

10 часов назад, Yurec66 сказал:

Пытаюсь вешать кнопку на аналоговые пины

Вариант верный. И -

 

1 час назад, dodik сказал:

делитель и мерить напряжение

это правильно.

Я не раздаю удочки. Я продаю рыбу.

Ссылка на комментарий
Поделиться на другие сайты

5 часов назад, Dr. West сказал:

Человек использует готовый код,

Не совсем так. Я использовал стандартные через digitalRead() и через прерывания. Может по незнанию не до конца правильно оформленный метод получения требуемого ставит в тупик. Это да, с этим соглашусь. 

45 минут назад, солар сказал:

Вашего устройства полностью на теперешний момент.

Это устройство - макетка с пучком проводов, Ардуино нано и индикатор.

 

Ссылка на комментарий
Поделиться на другие сайты

Вам же уже написали – хотите разобраться – выбросьте Дурино.

У Вас уже динамическая индикация на 4 разряда. Перебор по разрядам.

Достаточно взять 4 кнопки с диодами, один резистор и задействовать один разряд цифрового порта на ввод.

Вместе с выводом информации определяете, нажата ли очередная кнопка.

Ссылка на комментарий
Поделиться на другие сайты

Все, разобрался. Наверное чрезмерная волнительность присутствует... :)

Привязал кнопку к свободному пину, с цикле считал digitalRead(5) и обработал ка мне нужно.

49 минут назад, ChePay сказал:

У Вас уже динамическая индикация на 4 разряда.

Это сейчас не столь важно. Кнопку прикрутил для обнуления счетчика. Т.к. разобрался.

Ссылка на комментарий
Поделиться на другие сайты

@Yurec66 , для общего понимания.
Можно даже совместить пины контроллера и для опроса клавиатуры, и для вывода на дисплей.
Именно временнОе разделение ввода\вывода позволяет так играть. Именно об этом я Вам и сообщал ранее.

Ссылка на комментарий
Поделиться на другие сайты

Лично для себя считаю, что  и так прилично продвинулся в познаниях изучения Ардуино и МК отчасти. Счетчик , который делал на CD4026 с кучей проводов и деталей сейчас могу сделать всего на одной ардуинке и 7 сегментных индикаторах.

Спойлер
pinMode(2, INPUT_PULLUP);
  pinMode(5, INPUT_PULLUP);
  pinMode(3, OUTPUT);
  digitalWrite(3, HIGH);
  // FALLING - при нажатии на кнопку будет сигнал 0, его и ловим
  attachInterrupt(0, buttonTick, FALLING);
}

void buttonTick() {
  intFlag = true;  // подняли флаг прерывания
  counter++;
}

void loop() {
  if (!digitalRead(5)) sevseg.setNumber(0, 0);
   
  if (intFlag) {
    intFlag = false; 
    sevseg.setNumber(counter, -1);
  }
  sevseg.refreshDisplay();  

 

 

 

2 минуты назад, mvkarp сказал:

Именно временнОе разделение ввода\вывода позволяет так играть.

Не все сразу...;)

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы публикуете как гость. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
  • Сообщения

    • Вот кстати крутые дроссели. Посмотрел цены на них - космос конечно. По логике, напряжение питания процессора в районе 1 В, а жрать он может и 100 и 200 Вт. Правда я не смотрел на какой частоте дрмосы процессоров работают. Но смотрел на сайте Bourns характеристики некоторые, там и на 50 МГц дроссели есть и на токи до 60А. Наверное все таки не мой вариант, они очень дорогие и под заказ везти надо.
    • @tagpin любопытно, по деталькам замена VT1-VT4 ясно, LM чисто питание поменялось. Датчик тока в минусовой части стал по плюсу. 
    • @Black-мур принёс домой тут 15ас-213, припаял штеккера к проводам и подключил. В одной предсмертные хрипы, в другой только верха. Уже приготовился отнести обратно, но решил посмотреть получше что там с начинкой. До меня не снимали платы фильтров, ок поехали. В одной электролит 5мкф к50-6 "G" логотип стал 1,1мкф. Плёночник держался не очень, с завода частичное отслоение пятачков.  В другой с завода этого электролита тупо не было, просто не вставлен и не запаян. Подпаял плёночник 4.7/63 B32529D0475M, подключил. Звук появился и всё ок. На фото та, где был электролит - при его выпаивании пятачки отлетели сразу же, отличного качества платы делали. Подпаивание нового конденсатора увеличило громкость, но хрипы не ушли. Завалялся один 25гдн, поменял. У родного как то несколько выпирает диффузор, странно. И ещё корзина непрочно держится на магните, есть небольшая подвижность. В общем просверлил отверстия под нормальные конденсаторы, предварительно проверив чтобы не было большого разброса. Получилось, работает
    • Можно начать с холода. Замораживаем воду до льда  потом в пакет и морозим микросхему. Луше конечно специальный охлаждающий спрей им проще. Можно еще спиртом смазывать, он испаряется и охлаждает микросхему. Замораживаем включаем, смотрим изменения. Наша задача поймать любые изменения в поведении: есть ли влияние температуры?
    • а почему судя по графикам самый подъем частот в в районе 35-40 получатся в ФИ в таком огромном ящике?
    • Статика не "щиплет" щиплет, это сетевое где то утекает, я б по внимательней изучил вопрос, относительно вашей конкретной ситуации. PS: ппц, почитал тему, сборище стендаперов просто. По теме, если в квартире есть заземление, то обязательно все заземлять а в ванне сделать систему уравнивания потенциалов (СУП). Если земли в квартире нет, то лучшее что можно сделать это просто поставить в щиток УЗО.
    • Обратите внимание, в модельке выше, я злонамеренно привел пример условно устойчивой системы. Фазовый запас на частоте единичного усиления достаточен, однако ниже этой частоты будет возбуждение, если усиление каких-либо каскадов упадет, например в переходных режимах.  Пмсм, этот пример демонстрирует вполне себе вероятный случай – вроде устойчиваая работа, а потом херак, и наша марахайка почему-то ушла вразнос. Нужно правильно расставить нули и полюса. В сети много помогалок и переводных статей. Ещё мне кажется, очень полезно читать оригиналы именитых авторов. Пусть и с помощью машинного перевода, но зато без лишних фантазий переводчика. Яндекс-браузер неплохо справляется с переводами, в том числе и озвучка роликов с Ютуб. Настройте перевод сайтов, роликов (лучше перевод с субтитрами, так косяки перевода заметнее) и перед вами откроется океан полезнейшей информации. Огромную пользу получите от семинаров и ответов на вопросы от Кристофа Бассо. Крутейший мужик, автор десятка книг. У него потрясающая способность объяснять непростые темы очень доходчиво. В этом плане, пмсм, ему нет равных.  Есть полезный буржуйский сайт вопросов-ответов, вот персональная страничка с милой аватаркой - https://electronics.stackexchange.com/users/141599/verbal-kint - под ней и скрывается персона Криса Бассо. Не поленитесь, настройте перевод и пройдитесь по ссылкам. Сайт удобен тем, что после ответа приводятся топовые посты по близкой тематике. Если в них отметился Крис, значит получите ответы в самом компетентном и доходчивом виде – как грамотно расставлять нули и полюса, про токовое управление, по  методам моделирования контуров управления и многое-многое другое, без которого, оказывается, просто нельзя жить - просто вы этого не знали Вынужден на время покинуть тему, в последний месяц перед отпуском много работы, потом отпуск без ноутбука, потом традиционно – вал работы после отпуска. Успехов.
×
×
  • Создать...