Сдвиговый регистр 74HC595
- Войдите на сайт для отправки комментариев
Пт, 17/05/2019 - 13:04
Подскажите пожалуйста, можно ли переключать состояние одного из выходов регистра с помощью кнопки, чтобы при нажатии на кнопку состояние одного из выходов регистра изменилось одновременно с другим, остальные оставались просто без изменения. И если можно пример кода, чтобы это реализовать.
можно.
Насчет примера кода не понял. Никакого специального кода для вашей задачи не существует. Разбейте ее на две части - сначала читаете кнопку (примеров, надеюсь, не надо?), потом выставляете состояние на выходе сдвигового регистра
Так автор может хочет без МК управлять регистром.
Дело в том, что при нажатии на кнопку мне необходимо чтобы изменилось состояние только двух выходов. остальные, чтобы оставались неизменными, так как они так же выполняют свою функцию.
Дело в том, что при нажатии на кнопку мне необходимо чтобы изменилось состояние только двух выходов. остальные, чтобы оставались неизменными, так как они так же выполняют свою функцию.
и в чем проблема?
Публикуйте код, который "портит" состояния выходов 595, а мы подскажем, что исправить.
понятия не имею как задать это в скетче.
Тогда звиздуй читать литературу. Или заказывай проект за деньги. Готовых кодов тебе здесь не дадут, здесь помогу поправить твой.
Вот сижу и ищу необходимую литературу. Написал, так как не нашел ее
Вывсёврёти! Литературы - полно. А по 595-му, наерно, и на эвенкийском языке даже есть, чо ты не нашол?
Вот сижу и ищу необходимую литературу. Написал, так как не нашел ее
Тогда, учитесь пользоваться поисковиком… он всё умеет находить,
http://cxem.net/arduino/arduino166.php
Вот сижу и ищу необходимую литературу. Написал, так как не нашел ее
в гугле не способен найти учебник по Си и примеры работы со сдвиговым регистром?
Вывсёврёти! Литературы - полно
Это Вы фсёврёти! Нету никакой литературы где описывалось бы как при нажатии на кнопку поменять значения двух конкретных выходов 595! Просто поменять - есть. Поменять по кнопке один выход - есть, поменять по кнопке все выходы- тоже есть! А вот поменять именно два (не каких попало, а каких надо, да ещё чтобы кнопка на нужном пине была!!!) - нет такого!
ну я - так я. да, яфсёвру. прости, ТС, нихрена в сети нет по этому поводу.
Слишком много должно совпасть. Хотя, чудеса иногда случаются.)
Спасибо, как бы смешно не было, подобного найти действительно не смог.
А каковы твои навыки в поиске в сети? Ну, например, порнуху найти можешь? А рекламу сумеешь найти?
Спасибо, как бы смешно не было, подобного найти действительно не смог.
Так я и говорю, что точно того, что Вам нужно в сети наверняка нет.
я не просил готовый вариант, всё равно то что я спросл, это лишь малая часть проекта. Мне просто нужен был принип. я в программировании совсем зеленый. вот и спросил пример чтобы было от чего отталкиваться. я не пытался на халяву что-то словить. и шутки пр поиск неуместны. вспомните себя в начале.
ты вначале заставь 595-й хоть что-то выводить, а потом начинай прикручивать к нему нужный функционал
до этого, слава богу, додумался
ну и где скечч? с выводом хоть чего нибудь?
это лишь малая часть проекта
я в программировании совсем зеленый
вот в этих двух фразах - корень ваших проблем. Пока "совсем зеленый" - начинайте с простеньких задачек Если сразу "космолет строить", то ничего не выйдет, только людей насмешите
Хорошо, что зелёный сознался. А то я ждал классического: "пишу на ассемблере 20 лет не вставая, а на Си канпилятор не подчиняется командам".
а на Си канпилятор не подчиняется командам".
Ибо кривой :(
я не просил готовый вариант
А чего ты просил? Похоже, тебя никто не понял.
Ты вообще, читал правила форума? Посмотри пункт №5 вот здесь. Пока ты его не выполнишь, в теме ничего полезного для тебя не будет. А не хочешь или не можешь выполнить, тогда см. п. №6 там же.
На то это и радел для зеленых
На то это и радел для зеленых
На что, "на то"?
Читайте пост #25 и не думайте, что это шутка.
Раздел для зелёных отличается от раздела для незелёных тем, что бить сразу не начинают. А во всём остальном отличий нет. Разве что кто-то из старпёров по пьяни код обронит в теме... тогда считай, что повезло.
Я вас услышал
Вот и чудненько.
Можно ли три регистра последовательно поставить? если да, то до какого количства их последовательно повесить можно?
Можно ли три регистра последовательно поставить?
Кому как. Три, наверное, и тебе можно.
до какого количства их последовательно повесить можно?
Тут уж точно кому как. Слишком много вопросов. Как разведено питание на плате, какова ёмкость дорожек. Присутствуют ли буферы по пути. Кто умеет, тот впихнёт сколько надо.
понял, спасибо.
Квест: чонетак в 22 строчке?
Квест: чонетак в 22 строчке?
да он уж "рыцыдивист" с этим делом
"специализд" по сдвиговым регистрам, да и вообще по Си
Ща опять будет рассказывать, что у него переменная. заранее подготовленная в строке 20 - меняется при считывании кнопки в строке 21 :)
Квест: чонетак в 22 строчке?
бага... или фича, а может пасхалка?:)
"специализд" по сдвиговым регистрам, да и вообще по Си
Учись!!! Пока жив ещё.
Учись!!! Пока жив ещё.
ошибку то исправишь или ты "выше этого" ?
Учись!!! Пока жив ещё.
ошибку то исправишь или ты "выше этого" ?
Как скажите.
Муж_Долговой - в целом неплохо, хотя есть еще что подтянуть:
- одна описка (исправлена)
- одна несуразность в логике (строка 20 должна стоять после строки 27)
- и общая новичковость кода - например использование длинных делеев при работе с кнопками
если что забыл - извиняйте.
Муж_Долговой - а слабо убрать делей и сделать так, чтобы в Сериале вывод не печатался непрерывно, а только когда реально надо? :)
Новичковость специально для автора. Я уже лучше умею.
Ну давай новичку свич-кассу нарисуй, массивы, циклы динамические. Так он эти регистры никогда не поймёт, и будет считать их за практическое применение чёрной магии. Да и Ардуинку забросит подальше и к девкам пойдёт. А там болезни, наркотики и прочие ужасы. А Delay это только для монитора. В скетче он не нужен.
Теперь строки с 21 по 27 лехким движеньем заменяюца на
qa = qb = !digitalRead(buttonPin1);
Новичковость специально для автора. Я уже лучше умею.
добавлю еще новичковости
- в шифт-регистр бесконечно суются одни и те же байты
- Сериал бесконечно печает одно и то же
Короче, даже с поправкой на новичковость надо бы переписать без делей, заодно убрав бесполезную активность в цикле :)
Муж_Долговой - а слабо убрать делей и сделать так, чтобы в Сериале вывод не печатался непрерывно, а только когда реально надо? :)
Шутишь. Это невозможно!
Разве, что принт в if перенести третьей строчкой.
Теперь строки с 21 по 27 лехким движеньем заменяюца на
qa = qb = !digitalRead(buttonPin1);
Не спеши! Специально так оставил, чтобы автор мог менять ноги по усмотрению. Не усложняйте пока.
Нет предела совершенству! Но, пока, чем проще - тем лучше.
Разве, что принт в if перенести третьей строчкой.
тогда принт будет печататься в среднем в 2 раза реже. Но все равно также бесконечно :) ибо бесконечность, поделенная на 2 - остается бесконечностью
тогда принт будет печататься в среднем в 2 раза реже. Но все равно также бесконечно :) ибо бесконечность, поделенная на 2 - остается бесконечностью
Но это вдвое меньшая бесконечность, что немаловажно в этом мире.