Дружище, спасибо тебе! 20 с лишним лет назад я проходил предмет "Микросхемотехника" и у меня была курсовая как раз на тему регистра сдвига (надо было его собрать) Что это такое, как собирать и так далее я не понимал, равно вся группа в которой я учился. Сейчас по твоим видео разобрался, купил детали и собрал на макетной плате этот сдвиговый регистр! Закрыл, так сказать, гештальт :)
В видео с JK триггером пришлось отказаться от реализации динамического тактирования с помощью конденсатора, т.к. мы не могли гарантировать что пока происходит затухание JK триггер не переключится несколько раз. В чем отличие в данном случае и что гарантирует что пока первый D триггер считает выход во втором сигнал load уже затухнет?
Когда мы собирали RS-триггер с динамическим тактированием и затем JK-триггер, мы работали на уровне логических вентилей и пытались реализовать динамическое тактирование сами с помощью конденсатора. Для RS-триггера такое решение работало. Но в случае с JK-триггером даже небольшая продолжительность единичного сигнала CLK, создавала проблемы, поэтому мы его и не использовали. Здесь же мы используем уже готовые D-триггеры с динамическим тактированием - то есть такие D-триггеры, которые меняют свое состояние в момент перехода тактового сигнала от 0 до 1. Такое поведение гарантируется самим устройством микросхемы, и это описано в документации. Сигнал CLK мы меняем одновременно для всех D-триггеров. И даже если состояние одного из них изменится в этот момент, значение Q на его выходе изменится немного позже момента, когда будет изменение CLK с 0 на 1. Соответственно следующий D-триггер своего состояния в текущем такте не изменит, для этого нужно будет ждать следующего такта.
Теперь можно сделать такой ряд из 30-ти лампочек для длинной полосы. И сделать 5 таких полос. Одна под другой. Похимичить))) Будет лента из светодиодов 30х5.))) тогда можно замутить какую-нибудь надпись. И она будет бежать. Бегущая циклично повторяющаяся строка. Только проблема в том, что не нужно сохранить.) Надеюсь, что в следующем видео будет как раз про сохранение. Сделать такую строку самому без компьютера - это круто. И не надо никаких компьютеров, программ и Ардуино.))
Таймер как я вижу подаёт импульсы 50/50 (одинаково время единицы и нуля ) а если в качестве таймера будет ударники от музыки, чтоб таким образом бегущий огонёк под музыку получился такое будет работать?. Так же понимаю если выход 4 Д-тригера подать на вход первого эта схема закольцуется (или как там правильно)
Получается, изменяя параметры конденсатора и резистора, можно менять длительность импульса и тем самым, регулировать пропускную способность ( количество разрядов, сдвигаемых за один такт) Правильно?
Да, меняя параметры конденсатора и резистора на таймере, мы можем менять длительность импульса таймера. При этом промежутки между сдвигами на один разряд будут меньше. Но по-прежнему за один такт происходит только один сдвиг на один разряд. При такой реализации регистра, мы не можем сделать сдвиг на два или более разряда за такт, как бы часто таймер не выдавал импульсы.
Обратите внимание на небольшой треугольник на каждом триггере на входе CLK. Этот треугольник говорит нам о том, что триггер имеет динамическое тактирование - другими словами его состояние может измениться только в момент изменения сигнала CLK с 0 на 1, а не в течение всего времени, когда CLK = 1. При первом такте таймера происходит изменение состояния первого триггера, на выходе Q мы получаем единицу, которая практически мгновенно передается на вход следующего триггера - это так. Но несмотря на то, что на вход CLK все ещё подаётся единица, записи во второй триггер не произойдет до следующего изменения на входе CLK с нуля на единицу. То же самое будет при передаче значения на последующие триггеры. Советую посмотреть ролик на канале "D-триггер с динамическим управлением", если ещё не смотрели. Там как раз про динамическое тактирование.
@@BitFlipChannel, не обратил внимание. Динамическое тактирование смотрел, понял. У вас понятные и наглядные уроки, что важно. Спасибо за ваш труд и ответ!
Господи,спасибо огромное!!!благодаря тебе я всё понял на 1 курсе вуза!!
Дружище, спасибо тебе!
20 с лишним лет назад я проходил предмет "Микросхемотехника" и у меня была курсовая как раз на тему регистра сдвига (надо было его собрать)
Что это такое, как собирать и так далее я не понимал, равно вся группа в которой я учился.
Сейчас по твоим видео разобрался, купил детали и собрал на макетной плате этот сдвиговый регистр! Закрыл, так сказать, гештальт :)
Благодарю тебя за данный контент. Как раз то что я давно искал будет легче разобраться в этих процессах.
С/у Ваш подпишик
когда я лет в 7 разобрал ёлочную герлянду, то не мог понять как она мигает без моторчика. теперь понял...
ставлю битовый лайк этому видосу!
Спасибо за труды
Очень круто, спасибо!
Отлично! Подписка!
Спасибо, супер!!!
Интересно продолжай
В видео с JK триггером пришлось отказаться от реализации динамического тактирования с помощью конденсатора, т.к. мы не могли гарантировать что пока происходит затухание JK триггер не переключится несколько раз. В чем отличие в данном случае и что гарантирует что пока первый D триггер считает выход во втором сигнал load уже затухнет?
Когда мы собирали RS-триггер с динамическим тактированием и затем JK-триггер, мы работали на уровне логических вентилей и пытались реализовать динамическое тактирование сами с помощью конденсатора. Для RS-триггера такое решение работало. Но в случае с JK-триггером даже небольшая продолжительность единичного сигнала CLK, создавала проблемы, поэтому мы его и не использовали.
Здесь же мы используем уже готовые D-триггеры с динамическим тактированием - то есть такие D-триггеры, которые меняют свое состояние в момент перехода тактового сигнала от 0 до 1. Такое поведение гарантируется самим устройством микросхемы, и это описано в документации.
Сигнал CLK мы меняем одновременно для всех D-триггеров. И даже если состояние одного из них изменится в этот момент, значение Q на его выходе изменится немного позже момента, когда будет изменение CLK с 0 на 1. Соответственно следующий D-триггер своего состояния в текущем такте не изменит, для этого нужно будет ждать следующего такта.
У меня в осцилографе помер чудом данний регистр, вот и пошел смотреть что за штука такая).
Теперь можно сделать такой ряд из 30-ти лампочек для длинной полосы. И сделать 5 таких полос. Одна под другой. Похимичить))) Будет лента из светодиодов 30х5.))) тогда можно замутить какую-нибудь надпись. И она будет бежать. Бегущая циклично повторяющаяся строка. Только проблема в том, что не нужно сохранить.) Надеюсь, что в следующем видео будет как раз про сохранение. Сделать такую строку самому без компьютера - это круто. И не надо никаких компьютеров, программ и Ардуино.))
Таймер как я вижу подаёт импульсы 50/50 (одинаково время единицы и нуля ) а если в качестве таймера будет ударники от музыки, чтоб таким образом бегущий огонёк под музыку получился такое будет работать?. Так же понимаю если выход 4 Д-тригера подать на вход первого эта схема закольцуется (или как там правильно)
Получается, изменяя параметры конденсатора и резистора, можно менять длительность импульса и тем самым, регулировать пропускную способность ( количество разрядов, сдвигаемых за один такт)
Правильно?
Да, меняя параметры конденсатора и резистора на таймере, мы можем менять длительность импульса таймера. При этом промежутки между сдвигами на один разряд будут меньше.
Но по-прежнему за один такт происходит только один сдвиг на один разряд. При такой реализации регистра, мы не можем сделать сдвиг на два или более разряда за такт, как бы часто таймер не выдавал импульсы.
Почему, когда таймер подаёт 1, не загорается все одновременно триггеры? Ведь единица из q за импульс успевает перейти на вход d следующего триггера
Обратите внимание на небольшой треугольник на каждом триггере на входе CLK. Этот треугольник говорит нам о том, что триггер имеет динамическое тактирование - другими словами его состояние может измениться только в момент изменения сигнала CLK с 0 на 1, а не в течение всего времени, когда CLK = 1. При первом такте таймера происходит изменение состояния первого триггера, на выходе Q мы получаем единицу, которая практически мгновенно передается на вход следующего триггера - это так. Но несмотря на то, что на вход CLK все ещё подаётся единица, записи во второй триггер не произойдет до следующего изменения на входе CLK с нуля на единицу. То же самое будет при передаче значения на последующие триггеры.
Советую посмотреть ролик на канале "D-триггер с динамическим управлением", если ещё не смотрели. Там как раз про динамическое тактирование.
@@BitFlipChannel, не обратил внимание. Динамическое тактирование смотрел, понял. У вас понятные и наглядные уроки, что важно. Спасибо за ваш труд и ответ!
привет, какие именно резисторы и конденсатор ты использовал в таймере?
привет. о сопротивлении резисторов и конденсаторов я говорю вот с этого места: ua-cam.com/video/CwcNSJd7hMU/v-deo.html
@@BitFlipChannel спасибо
И все таки, можно схему?
Добавил ссылку на схему в описании