Два входа, три состояния, 5 выходов.
- Войдите на сайт для отправки комментариев
Ср, 24/03/2021 - 22:20
Здравствуйте, получится ли на ардуино программно задействуя два цифровых входа, подавать на них 10, 01, 00 управлять пятью выходами, например : первый вход (1), второй вход (0) на выходе 1, 3, 5 (1) ?
Никак не получится. Четыре состояния могут управлять только четырьмя выходами. Пятым никак не получится управлять независимо.
Никак не получится. Четыре состояния могут управлять только четырьмя выходами. Пятым никак не получится управлять независимо.
Может я не так написал, состояния три
первое, первый вход (1) второй вход (0),
второе, первый вход (0) второй вход (1),
третье, первый вход (0) второй вход (0), четвертого состояния на этих двух входах не предусмотрено
А где пять выходов из заголовка? Вообще составляют таблицу состояний. С одной стороны входы - у вас две колонки, с другой выходы - у вас 5 выходов 5 колонок и на каждое возможное состояние - у вас 4 строки - 4 возможных состояния, входов расписывают состояние выходов. При этом количество выходов ограничивается только количеством ног МК. Т.е. Одновременно можно подавать разные уровни на разные ноги при определённом значении входов. Подать сигнал можно на много ног почти одновременно, быстрее 1 мкс, при этом разные уровни.
А 5 как получить?
Берите листок, рисуйте:
Вход 00 , выход 01000
Вход 01, выход 01010
И тп.
Пока что в описанных входных и требованиях видна нескладуха.
получится ли
Да, кто ж его знает? Вы предлагаете нам открыть тотализатор и делать ставки "получится у Вас или нет"? Или в чём суть Вашего поста?
Сессия чтоль очередная или курсовые?))
Неплохая курсовая управлять пятью выходами с двух входов )
Ваще легко. Один вход - клок. Второй - команды. Хоть 100 выходов
Ваще легко. Один вход - клок. Второй - команды. Хоть 100 выходов
что значит "Один вход - клок" как это вообще выглядит?
биты байты
выглядит?
Элементарно
выглядит?
Элементарно
ага, спасибо, стало еще не понятней, хотелось увидеть как это может выглядеть программно в среде ардуино
Здравствуйте, получится ли на ардуино программно задействуя два цифровых входа, подавать на них 10, 01, 00 управлять пятью выходами, например : первый вход (1), второй вход (0) на выходе 1, 3, 5 (1) ?
Если использовать адресную ленту, то хоть сотней выходов.
ну приехали ) тогда можно и одним входом управлять всем
Можно и одним. Легко. Но ТСу нужно двумя
Написано два входа.
rs:
есть ленты с тактовым контактом и контактом данных. условие выполнено.
ага, спасибо, стало еще не понятней, хотелось увидеть как это может выглядеть программно в среде ардуино
Легко. Будет стоить примерно 40000 руб. работающий алгоритм. Дополнительно опции: если сигналы на входы будете кнопками подавать, то программная ликвидация дребезга еще +10000 руб. Если "в цифре" с другого контроллера то еще +130000, ибо придется повозиться с копипастой i2c slave
Надумаете - пишите в личку!
Надумаете - пишите в личку!
Субподрядчики нужны?
Субподрядчики нужны?
Один точно не управлюсь с таким бюджетом.
если использовать АНАЛОГОВЫЙ вход - то можно управлять и одной ногой всеми пятью выходами
Все упустили изначальные условия? Перечитайте.
Кто?
ага, спасибо, стало еще не понятней, хотелось увидеть как это может выглядеть программно в среде ардуино
Легко. Будет стоить примерно 40000 руб. работающий алгоритм. Дополнительно опции: если сигналы на входы будете кнопками подавать, то программная ликвидация дребезга еще +10000 руб. Если "в цифре" с другого контроллера то еще +130000, ибо придется повозиться с копипастой i2c slave
Надумаете - пишите в личку!
Лицо не разорвет?
Лицо не разорвет?
Хамить не нужно.
Кто?
Намекать не умею. )
Лицо не разорвет?
А что такого? Как говорилось в известно анекдоте: "походи по рынку, изучи цены".
Лицо не разорвет?
Позвольте полюбопытствовать, чем вызваны ваши опасения?
Намекать не умею. )
Если на меня намекаешь, то у меня вроде все по методичке
Входы цифровые - два входа. Нули и единицы - да пожалуйста, там ничего другого и нет. Выходов пять - да пожалуйста! Хоть 2^31
:-)
Отправка байта в сдвиговый регистр, стыренной библиотекой с гитхаба?!
Библой стыренной там же.......
И это тоже....
ПЫ.СЫ. Если это очередной студент (ИМХО 99.99% так и есть), то цену умножить на 10! А лучше послать https://www.google.com/maps/place/%D0%9A%D1%85%D1%83-%D1%8F%D0%BC/@51.1334569,23.7834017,17z/data=!3m1!4b1!4m5!3m4!1s0x4723890bcb88c0c9:0x4735903ae6e71191!8m2!3d51.1334536!4d23.7855904
Здравствуйте, получится ли на ардуино программно задействуя два цифровых входа, подавать на них 10, 01, 00 управлять пятью выходами, например : первый вход (1), второй вход (0) на выходе 1, 3, 5 (1) ?
получится
ПЫ.СЫ. Если это очередной студент (ИМХО 99.99% так и есть), то цену умножить на 10!
Студент 100%. Поэтому и тариф из линейки "Образовательный". Причем самый минимальный во всей линейке - "Лаба". По тарифам "Курсач" и "Диплом" было бы намного дороже
А про стыренные библиотеки вы зря. Я чужим не пользуюсь без крайней необходимости. Сам себе пишу
А про стыренные библиотеки вы зря. Я чужим не пользуюсь без крайней необходимости. Сам себе пишу
Вот такой часто встречаемый подход мне кажется довольно странным. Причем ладно бы профессиональные программисты - допустим у них получится лучше, чем в среднем на гитхабе (и даже это спорно), но когда любители или начинающие себе библиотеки пишут взамен аналогичных, которые используются многими людьми не один год уже - это тааак странно ))) единственный разумный вариант - ради интереса. Под винду или в сайтостроении почти всегда готовое используют и ничего, иначе просто не написать за разумное время, ведь задача то как правило не библиотеки писать. Мне попадались библиотеки с глюками - можно взять другую или глюк исправить, но с нуля что то большое написать как то в голову не приходит, во первых есть чем еще заняться, во вторых не факт, что у меня получится лучше и без каких нибудь других глюков, которые конкретно на данный момент просто не проявились.
( Ну просто знаю одного человека с таким подходом и я бы никогда не стал использовать его "библиотеку" даже если у него она работает "как надо" :) никогда никогда никогда :) а ведь он ее писал именно из соображений "да в готовых там наверняка глюки, хрен его знает кто писал" сам себя не относя к категории последних почему то :) )
Morroc,
Вы путаете профессиональную разработку с хобби. Я вот на днях впервые услышал про формирование композитного сигнала. Раньше я вообще не знал как этот сигнал выглядит. Так я вчера:
Т.е. я просто получаю удовольствие - развлекаюсь. Сколько это займёт времени? Точно столько, сколько потребуется, чтобы мне всё это надоело и перестало приносить удовольствие. Ровно в этот момент, я это дело брошу независимо от того, получился цвет или нет. Я ведь не работаю, а просто отдыхаю и развлекаюсь.
И если человеку доставляет удовольствие писать библиотеку - он тоже развлекается.
А Вы сравниваете с профессиональным сайтостроением, где и сроки и заказчики, и обязательства. Это несравнимо. Это другое.
И если человеку доставляет удовольствие писать библиотеку - он тоже развлекается.
С этим я не спорю, но обычно слышал совсем другие аргументы, в духе "зачем мне эти кривые библиотеки, я сам напишу", вряд ли имелось в виду развлечение.
Morroc, спасибо за Ваше мнение! Обязательно учту. Надеюсь, если у вас появятся другие мысли, Вы будете держать меня в курсе.
ЕвгенийП, спасибо, в целом избавили меня от лишней писанины. Все так, это хобби, и мне нравится досконально во все вникать. Меня это успокаивает. Хочу только добавить, что я не переписываю библиотеки уровня Wire и 1Wire. А с основанными на них библиотеками "прикладного" уровня вижу ту-же проблему, как с "примерами" и "проектами" и интернетах. Проще совсем без них. Ну и да, я так учусь
сейчас думаю как всё это совместить с 3,4МГц сигналом с ещё одной ноги, чтобы получить цветность. Оно мне надо "для дела"? Нет - нах не надо.
А не 4.43361875? и таки да синхронизировать можно и двухуровневым стробирующим, но по стандарту - трёхуровневым (PAL)
Morroc, спасибо за Ваше мнение! Обязательно учту. Надеюсь, если у вас появятся другие мысли, Вы будете держать меня в курсе.
ЕвгенийП, спасибо, в целом избавили меня от лишней писанины. Все так, это хобби, и мне нравится досконально во все вникать. Меня это успокаивает. Хочу только добавить, что я не переписываю библиотеки уровня Wire и 1Wire. А с основанными на них библиотеками "прикладного" уровня вижу ту-же проблему, как с "примерами" и "проектами" и интернетах. Проще совсем без них. Ну и да, я так учусь
Поддержу.
Вот лично я обычно пользуюсь только теми библиотеками, которые входят в комплект поставки (либо самой Arduino IDE, либо подключаемых плат). Потому что только про эти библиотеки можно сказать, что они "используются многими людьми". Хотя, и в этом есть некоторые натяжки - в основном касающиеся редко используемых плат. Например, как-то на форуме появился вопрос про библиотеку Audio для Arduino Zero. Т.к. аудио меня всегда интересовало, посмотрел (хотя Zero у меня нет. С другой стороны - может ведь и появиться: я еще как-то не определился, что использовать для audio. Единственный подходящий и опробованный мною вариант Arduino Due, но дорогой и, главное, плохо документированный). Так вот, я посмотрел только пример использования (не заглядывая в саму библиотеку) и понял, что код написанный данным программистом лично я использовать никогда не буду.
Ну а если речь идет об "обычных" библиотеках с гитхаба, то вряд ли они написаны лучше, чем изобилующие в Интернете статьи об Ардуино. Поэтому, даже скачав одну из таких библиотек, обязательно следует проинспектировать весь ее код.
про библиотеки я бы главное что отметил - всегда стоит обходить стороной "улучшенные версии", даже если авторы обещают ускорение работы в 10 раз и экономию памяти 90%.
Типичные примеры - это АрхатЛиб и "микро-либы" Гайвера. И даже не потому. что эти два автора не очень-то умеют программировать. Проблема в другом - "эффективность" их кода, даже когда там нет грубых ошибок - всегда построена на банальной идее "выкинуть из кода все лишнее".
Мне это напоминает идею выкинуть из авто кондиционер, подушки безопасности, музыку и снять двери - лишь бы разгонялась быстрее. Когда мы на ралли - это имеет смысл, но ведь авторы суют свой код всюду без разбора, они не понимают, что их библиотеки - экстрим, они , возвращаясь к аналогии - предлагают мне каждый день кататься на машине без музыки и без дверей. Ради чего? Ради того чтоб раз в месяц сделать какого-то перца со светофора?
Здравствуйте, получится ли на ардуино программно задействуя два цифровых входа, подавать на них 10, 01, 00 управлять пятью выходами, например : первый вход (1), второй вход (0) на выходе 1, 3, 5 (1) ?
не задействовать два цифровых входа, а задействовать шесть, те два сигнала подавать во внешние компараторы чтобы определять:
- 0 (ноль)
- 1 (единицу)
- hi-z (не 0 и не 1, высокоимпедансное состояние)
тогда вариантов будет не 2^2=4 а 3^2=9
Поэтому, даже скачав одну из таких библиотек, обязательно следует проинспектировать весь ее код.
Только чтоб это сделать, нужно обладать знаниями в объеме, соизмеримом с необходимыми для самостоятельной реализации. К "счастью" больше половины выкачанного с гитхаба просто не собирается, как правило по причинам, указывающим на то, что оно никогда и не собиралось - не объявлены используемые сущности, синтаксис кривой, тупо бред. Это уменьшает объем инспекции)))
С тех пор как стало принято, что каждый уважаемый програмер имеет свой код на гитхабе, некоторые чуваки решили что наличие своего кода на гитхабе делает их уважаемыми програмерами. И превратили гитхаб в помойку.