Несколько кнопок на одно прерывание

Тема в разделе "Схемотехника, компоненты, модули", создана пользователем Tomasina, 10 дек 2015.

  1. ИгорьК

    ИгорьК Гуру

    Станок?
     
  2. Tomasina

    Tomasina Сушитель лампочек Модератор

    лабораторно-экспериментальный, но со скоростной головкой. В общем, надо не допустить чтоб там все расхерачило.
     
  3. ИгорьК

    ИгорьК Гуру

    (Как дополнительная мысль, опять ИМХО) Поставьте три концевика на один пин параллельно. в 95% случаев абсолютно не важно от чего конкретно он остановится. Станок не должен выходить за некоторые пределы и попытка такого выхода в любом направлении есть авария.
    ... и с учетом того, что лучше иметь не 3, а 5 концевиков. Обычно по Z только вверх концевик ставится.
     
    Последнее редактирование: 11 дек 2015
  4. DrProg

    DrProg Вечный нерд

    Так я не понял что с моей схемой не так, почему она недостаточно гениальна? На клавиатуре гениальна, а тут нет. Можно и в цепочку выстроить для желающих, но пусть это будет домашним заданием.

    Tomasina, а где станок работает в таких перепадах температуры? Он на открытом воздухе?

    пс. рановато я кого то из игнора вынул, продлю ко, пожалуй, скажем навсегда.
     
    Последнее редактирование: 11 дек 2015
    ИгорьК нравится это.
  5. ИгорьК

    ИгорьК Гуру

  6. Tomasina

    Tomasina Сушитель лампочек Модератор

    не ссорьтесь, ваши посты по другим темам мне часто помогают :)
    DrProg, не просто на открытом воздухе, а в местах, куда не в каждый месяц проехать можно, и броски температуры там реально такие.
     
  7. Onkel

    Onkel Гуру

    если скоростная, я бы еще концевиком непосредственно на мотор или что там нужно будет отключить или включить продублировал, для непосредственной блокировки. Потом убрать можно будет.
     
  8. Tomasina

    Tomasina Сушитель лампочек Модератор

    Дублирующий аварийный концевик есть, просто он не подключен к Arduino, поэтому не фигурирует в обсуждении.
     
  9. AlexVS

    AlexVS Гик

    Почему, можете объяснить?
     
  10. Onkel

    Onkel Гуру

    присоединюсь. Прерывания - основа работы мк, вроде я так считал.
     
  11. ИгорьК

    ИгорьК Гуру

    Эта мысль взята с сайта easyelectronics.ru
    Сейчас ссылку точно не приведу, но DiHalt там это объяснял достаточно убедительно. А поскольку я самодельщик, а не доктор от программирования, то этому товарищу верю на слово.

    Что касается уважаемого Onkel, то, как я вижу, Вы хорошо разбираетесь в ассемблере и знаете МК на уровне регистров наизусть. Для Вас это семечки.

    Для меня же и всех, кому важно что-то изготовить и торчать от новой самоделки, самое простое объяснение - если ты пользуешься чужими библиотеками, то там могут уже сидеть невидимые прерывания, с которыми запросто можно начать конфликтовать.
    Но это очень упрощенно.
     
  12. Onkel

    Onkel Гуру

    у очень мною уважаемого DiHalt'a рекомендую почитать http://easyelectronics.ru/avr-uchebnyj-kurs-operacionnaya-sistema-vvedenie.html
    Я вашу мысль понял, при программировании в Ide ардуины имхо совершенно верно, потому что когда включаешь разные дрова разных шилдов замучаешься выяснять, для какого шилда используется какое прерывание и зачем....
    В программировании же "от сохи" (на С, например), когда каждый регистр на учете, конечно прерывания важны, нужны и необходимы.
     
  13. Vad33

    Vad33 Капитан-оригинал

    Невидимые прерывания на невидимых проводах? :)
     
  14. ИгорьК

    ИгорьК Гуру

    Библиотека использует прерывания и юзер об этом не ведает.
    Что касается Ардуины, то, как известно, там есть функция millis(). Полагаю, не следует пытаться задействовать таймер, который за нее отвечает, для работы в прерываниях. Не так ли?
     
  15. Vad33

    Vad33 Капитан-оригинал

    Мы сейчас о чем рассуждаем?
    О высокоуровневых прерываниях на уровне attachInterrupt или
    о настройке внутренних таймеров?

    ... если конечно пользователь не будет нажимать
    кнопку так часто, что будет замедлять программу! :)
     
  16. Onkel

    Onkel Гуру

    в ардуине millis вроде тупо считает nop'ы, насколько я знаю.
     
  17. Onkel

    Onkel Гуру

    об обычных прерываниях по таймеру. Что же до "высокоуровневых прерываниях на уровне attachInterrupt" я и слов таких не знаю. Думаю, мои собеседники тоже.
     
  18. Vad33

    Vad33 Капитан-оригинал

    "Все мы немного лошади..." :)
    http://makesystem.net/?p=1365#.Vnf2QpHCdOc
    Внешние прерывания имеют более высокий уровень приоритета, чем прерывания по таймеру.
     
  19. Onkel

    Onkel Гуру

    о внешних прерываниях речи нет и не было. Я думаю это направление дискуссии стоит закрыть, чтобы не путать и не путаться.
     
  20. Vad33

    Vad33 Капитан-оригинал

    Правда не было?
    [​IMG]
    [​IMG]
    [​IMG]

    См. предыдущую страницу.