![](https://habrastorage.org/webt/ep/kh/1p/epkh1pvb7ppsogvpjuart02bitq.jpeg)
Привет, Хабр! В электронных проектах очень часто применяются логические элементы. Они даже присутствуют во многих микроконтроллерах в качестве периферии, независимой от ядра (ПНЯ). Логические функции можно реализовать и программным способом, но аппаратные решения гораздо быстрее и надёжнее.
Когда необходимо несколько логических элементов, целесообразнее всего использовать специализированные микросхемы. Но если требуется всего один или два элемента, либо нужно нестандартное количество входов или повышенное напряжение питания, то задачу можно решить при помощи дискретных компонентов.
Иногда такое решение помогает улучшить трассировку платы. А ещё бывает не лишним задуматься о внутренней схемотехнике микросхем, чтобы понять, с какими внешними сигналами они могут работать, а с какими — нет. Речь о том, чтобы учитывать особенности входных и выходных каскадов, защиты от перенапряжения, и так далее.
Первая из наших сегодняшних экспериментальных плат содержит три базовых логических элемента, реализованных при помощи диодно-транзисторной логики.
![](https://habrastorage.org/webt/0n/ac/m7/0nacm7io7ahdjtrtynlxq81xxfc.jpeg)
В основе данной технологии лежат простые общеизвестные свойства электронных компонентов.
▍ Свойства полупроводниковых диодов
Универсальный импульсный диод — это, по сути, маломощный высокочастотный выпрямительный диод. Он открывается и проводит электрический ток при условии, что потенциал анода имеет прямое смещение относительно катода.
Иными словами, диод проводит ток в направлении стрелочки, от плюса на аноде — к минусу на катоде.
Используя данное свойство, на двух диодах D1 и D2, а также одном резисторе R4 собран двухвходовой логический элемент «ИЛИ». Используя большее число диодов, можно собрать элемент, имеющий практически неограниченное количество входов.
![](https://habrastorage.org/webt/0n/ac/m7/0nacm7io7ahdjtrtynlxq81xxfc.jpeg)
Резистор R4 подтягивает выход X7 к общему проводу — точке нулевого потенциала. Диоды входов, подтянутых к земле схемы, то есть, находящихся в состоянии логического нуля, будут закрыты.
То же самое будет верно для входа, оставленного неподключенным. Если на анод диода не придёт достаточно сильная помеха, то диод не откроется, и на выходе X7 будет логический ноль.
Но если подтянуть любой из входов (X3, X4) к плюсу питания, то есть, перевести его в состояние логической единицы, то соответствующий диод откроется, и через него, а также через резистор R4, потечёт ток.
На выходе X7 появится высокий логический уровень, но есть одно но. Величина прямого смещения кремниевого P-N-перехода и, соответственно, прямого падения на открытом кремниевом диоде варьируется в диапазоне от 500 до 800, чаще всего от 550 до 700 милливольт.
![](https://habrastorage.org/webt/nt/3f/aw/nt3faw-pu2hf_5knxixnghazal8.png)
Поэтому при трёх вольтах на любом числе входов получится 2.35 вольта на выходе, если принять прямое падение на диоде 1N4148 равным 0.65 В.
Сила тока через резистор R4 составит:
2.35 В / 4.7 кОм = 0.5 мА,
и она не зависит от числа входов с высоким логическим уровнем. Если такой вход один, то он возьмёт на себя весь ток. Если их два, то они поделят его пополам.
Итак, на входе мы имели напряжение логической единицы 3 вольта с механического переключателя S1 или S2, а на выходе получили всего лишь 2.35 вольта. Если далее последует ещё один элемент ИЛИ на диодах, то получится уже 1.7 В.
Это близко к половине напряжения питания и, по сути, может находиться в зоне неопределённости между логической единицей и логическим нулём. Транзистор инвертирующего буфера под действием данного напряжения на входе ещё откроется, но красный светодиод с прямым падением 1.8 вольта уже не загорится.
Воспользоваться свойством ассоциативности для логической дизъюнкции может не получиться, если последовательные диодные элементы ИЛИ стоят в разных модулях электронной системы. Но у нас есть несколько вариантов решения этой проблемы. А именно, мы можем:
- поднять напряжение питания,
- заменить обычные кремниевые диоды на германиевые или диоды Шоттки,
- либо подключить на выход логического элемента активный транзисторный буфер.
▍ Логический элемент «НЕ»
В диодно-транзисторной логике биполярный транзистор структуры N-P-N используется по схеме с общим эмиттером. Высокий логический уровень на базе открывает транзистор, просаживая коллектор к земле, и на выходе получается низкий логический уровень.
![](https://habrastorage.org/webt/0n/ac/m7/0nacm7io7ahdjtrtynlxq81xxfc.jpeg)
А когда транзистор VD1 закрыт при логическом нуле на входе, его коллектор подтянут к плюсу питания резистором R7, и на выходе X10 наблюдается логическая единица.
Прямое падение напряжения на 3-миллиметровом красном светодиоде LED5 составляет 1.8 вольт. Получается, что при отсутствии нагрузки на выходе X10 на резистивном делителе R7R9 падает:
3 - 1.8 = 1.2 В.
Тогда падение на R7 составит:
1200 * R7 / (R7+R9) = 1200 * 1 / 11 = 109 мВ.
Получаем выходное напряжение высокого логического уровня:
3 - 0.1 = 2.9 В.
Ток светодиода LED5 при этом равняется:
1.2 В / 1.1 кОм = 1.1 мА.
Итак, однотранзисторный логический буфер является инвертирующим, то есть представляет собой логический инвертор, или элемент НЕ.
Предполагается, что вход инвертора X9 будет подключён к выходу одного из двух других логических элементов на экспериментальной плате, либо к выходу переключателя X1 или X2, задающего логический операнд.
Поэтому резистора подтяжки базы транзистора к земле разработчики платы не предусмотрели, и достаточно сильная помеха способна открыть транзистор, если вход X9 висит в воздухе.
Однако транзистор не тиристор, которому свойственно защёлкиваться в открытом состоянии, пока через него протекает ток удержания. Поэтому вспышки светодиода LED5 под действием короткого импульса помехи мы с вами, скорее всего, даже не заметим.
▍ Свойства транзистора
Чтобы открыть биполярный транзистор, требуется приложить к его базе напряжение смещения относительно эмиттера точно так же, как для открытия полупроводникового диода. Ведь эмиттерный и коллекторный переходы — это, по сути, и есть диоды.
Получается, что логической единицей для такого инвертора будет потенциал выше напряжения база-эмиттер для данного транзистора. Применительно к S9013 на нашей экспериментальной плате это будет 0.8 В.
![](https://habrastorage.org/webt/xl/1c/hx/xl1chxysvbo86kdqjztu11vjez0.png)
Однако биполярный транзистор управляется не напряжением, а током. Буквенный индекс «H» на корпусе данного экземпляра транзистора означает, что его коэффициент усиления по току при включении с общим эмиттером находится в диапазоне от 144 до 202. Возьмём среднее арифметическое этих предельных значений, равное 173.
Если соединить X1 с X3, X2 с X4 и X7 с X9, то получится двухвходовой логический элемент ИЛИ-НЕ. При напряжении на X7 и X9 2.35 В падение на R8 составит
2.35 - 0.8 = 1.55 В.
![](https://habrastorage.org/webt/0n/ac/m7/0nacm7io7ahdjtrtynlxq81xxfc.jpeg)
В таком случае, согласно закону Ома для участка цепи, ток через R8 и, соответственно, ток базы транзистора, будет равен:
1.55 В / 4.7 кОм = 0.33 мА.
Умножив ток базы на коэффициент усиления, получаем коллекторный ток:
0.33 * 173 = 57 мА.
![](https://habrastorage.org/webt/_w/be/pc/_wbepcdst_garl7j2qgik_zdcgi.png)
Данный транзистор допускает ток коллектора до 500 миллиампер, но даже при коротком замыкании X10 на землю мы получим ток через резистор R7
3 В / 100 Ом = 30 мА.
Иными словами, в данной схеме коллекторный ток транзистора при напряжении питания 3 или даже 5 вольт будет в любом случае ниже произведения тока базы на коэффициент усиления по току.
То есть, транзистор работает в режиме насыщения, для которого характерно прямое смещение обоих P-N-переходов — эмиттерного и коллекторного. Часть тока базы при этом течёт в эмиттер, а другая часть — в коллектор.
Типичное напряжение насыщения для транзистора S9013 при коллекторном токе 100 мА составляет всего-навсего 100 милливольт.
![](https://habrastorage.org/webt/zq/8j/x8/zq8jx8f9q0citaxrxls6rne7nlk.png)
Для 30 миллиампер оно окажется и того ниже — порядка 45 мВ при комнатной температуре. Это и будет выходное напряжение низкого логического уровня нашего инвертирующего буфера на одном транзисторе.
▍ Логический элемент «И»
Однако двухвходовой логический элемент «И», построенный на диодах D3-D4 и резисторе R5, таким низким выходным напряжением логического нуля похвастаться не может.
![](https://habrastorage.org/webt/0n/ac/m7/0nacm7io7ahdjtrtynlxq81xxfc.jpeg)
Если оба входа X5 и X6 подтянуты к плюсу питания или висят в воздухе неподключенными, то оба диода закрыты, и выход X8 оказывается соединённым с плюсом питания через резистор R5.
Получается точно такая же схема, как в случае R7, R9 и LED5. Соответственно, выходное напряжение высокого уровня при отсутствии нагрузки на выходе X8 составляет 2.9 В.
Если соединить X5 или X6 c землёй через контакты переключателя, то выходное напряжение низкого уровня будет равняться прямому падению на диоде 1N4148, то есть окажется в диапазоне от 0.62 до 1 В.
Если повезёт, то этого напряжения не хватит для открытия транзистора S9013, но может и не повезти. Мой экземпляр платы работает нормально, однако в реальном устройстве последовательно с R8 желательно включить дополнительный диод.
Тогда минимальное входное напряжение высокого уровня будет равняться сумме напряжения база-эмиттер транзистора и прямого падения на этом диоде.
Ток через резистор R5 в состоянии логического нуля на выходе X8 будет равняться, как минимум, 20 миллиамперам при прямом падении на диоде 1 В.
![](https://habrastorage.org/webt/0n/ac/m7/0nacm7io7ahdjtrtynlxq81xxfc.jpeg)
Подсчитаем, насколько откроется транзистор S9013 при одном вольте на входе логического инвертора.
200 милливольт на R7 дадут 43 микроампера тока базы и, соответственно, 7.4 мА коллекторного тока. Падение напряжения на R7 составит 0.74 вольта, а напряжение на X10 — соответственно, 2.26 В.
Итак, несмотря на приоткрытый транзистор, логический уровень напряжения на выходе X10 остаётся высоким, и светодиод LED5 светится.
Ток его кристалла составляет
(2.26-1.8) В / 1 кОм = 460 мкА.
Свехрхъяркий светодиод при таком токе светит вполне нормально.
Итак, наши логические элементы работают вполне надёжно, но платой за это является просто огромный ток через резисторы R5 и R7 при низком уровне напряжения, соответственно, на X8 и X10.
▍ Симметричный триггер на транзисторах
Основой нашей второй экспериментальной платы — модели акустического выключателя освещения — является симметричный триггер Т-типа, собранный на транзисторах Q3 и Q4. По сути, это кольцеобразное соединение двух логических инверторов с некоторыми особенностями.
![](https://habrastorage.org/webt/1y/qi/p0/1yqip0friobj_z9ph-drhcqt2n0.jpeg)
Здесь диоды D1 и D2 не образуют логический элемент, а пропускают на базы транзисторов импульсы отрицательной полярности и не пропускают импульсов положительной полярности.
▍ Формирователь переключающих импульсов
На транзисторах Q1 и Q2 собран усилитель сигнала малогабаритного электретного микрофона MK1. Это двухкаскадный усилитель с непосредственной связью между транзисторами.
При пятивольтовом питании и отсутствии входного сигнала ток базы Q1 составит:
(5-0.8) В / 750 кОм = 4.2 В / 0.75 МОм = 5.6 мкА.
Тогда при коэффициенте усиления 173 получается коллекторный ток, равный 1 мА. Соответственно, падение напряжения на резисторе R4 составит 4.7 В.
При напряжении на базе
5 - 4.7 = 0.3 В
транзистор Q2 закрыт. Для его открытия необходимо падение коллекторного тока Q1 под действием сигнала с микрофона.
Резистор R4 и конденсатор C3 образуют RC-фильтр нижних частот (ФНЧ) с постоянной времени 470 микросекунд и частотой среза 339 герц.
R3 и С2 образуют цепочку положительной обратной связи. При данных номиналах компонентов она не вызывает самовозбуждения усилителя, зато замедляет время его реагирования на сигнал с микрофона.
Постоянная времени R3C2 равна одной миллисекунде, а граничная частота, соответственно, составляет 160 Гц. Но если учесть сопротивление R2, получаются уже 76 миллисекунд и два герца.
Получается, что импульсы с данного микрофонного усилителя могут поступать на конденсаторы С5 и C6 не чаще, чем один раз в полсекунды.
Итак, схемотехнический узел на транзисторах Q1 и Q2 представляет собой скорее ждущий мультивибратор (одновибратор) с высокочувствительным входом, чем усилитель звуковой частоты.
▍ Возвращаемся к триггеру
Так как соотношение сопротивлений резисторов в базовых и коллекторных цепях Q3 и Q4 чуть выше 2, что более чем в 80 раз ниже коэффициента усиления транзистора по току, мы можем считать, что транзисторы работают в ключевом режиме. Когда один из них открыт, второй находится в режиме насыщения.
Допустим, в данный момент открыт транзистор Q3. Тогда напряжение на его коллекторе находится в пределах ста милливольт. Соответственно, Q4 закрыт, на его коллекторе 5 вольт, и светодиод D3 не светит.
При открытии транзистора Q2 импульс отрицательной полярности через конденсатор C5 и диод D1 закроет Q3. Откроется Q4, зажжётся D3. Следующий переключающий импульс сделает всё наоборот, и светодиод снова погаснет.
Подобная схема двухтранзисторного симметричного триггера часто используется в педалях эффектов для электрогитары. Там триггер управляет коммутацией буферизованного обхода, позволяя обойтись одной SPST-кнопкой без фиксации.
▍ Демонстрация работы моделей
Теперь можно посмотреть, как работа этих простых схем выглядит в реальности.
Видео на Rutube
![](https://habrastorage.org/webt/0n/ac/m7/0nacm7io7ahdjtrtynlxq81xxfc.jpeg)
А интереснее всего мне будет прочитать о вашем опыте использования диодно-транзисторной логики в электронных самоделках.
Telegram-канал со скидками, розыгрышами призов и новостями IT ?
![](https://habrastorage.org/webt/tp/sk/z-/tpskz-7w7a8e74isoowuep40xeg.png)
Комментарии (5)
VT100
22.08.2024 16:59+3При расчёте насыщения не следует опираться ни на средний коэффициент передачи тока базы в группе, ни даже на минимальный. Типично - принимается 10, см. параметры при которых измеряется напряжение Ucesat. В несложных условиях эксплуатации (на столе, как эти кубики) можно посчитать и 30. Что будет естественной платой за глубокое насыщение?
Скрытый текст
Время выключения при переходе от минимального Uce к более высокому, определяемому нагрузочным сопротивлением и напряжением питания.
Улучшить - проще простого.
Скрытый текст
Переключить индикаторные светодиоды параллельно подтягивающим резисторам. Включенные свтодиоды будут индицировать "0".
0xC0CAC01A
22.08.2024 16:59+1А на диодах, получается, "НЕ" не построить никак?
Lunathecat Автор
22.08.2024 16:59Никак. В отличие от транзистора, диод не изменяет полярность сигнала, а только отгораживает входы друг от друга.
mastergril
Спасибо большое за статью!
Одно замечание: при 30 мА напряжение насыщения 45мВ, не 450
Lunathecat Автор
Пожалуйста! Спасибо за замечание! Опечатка исправлена.