hitech: (computer)
hitech ([personal profile] hitech) wrote2015-01-10 10:44 pm
Entry tags:

Просьба о помощи–2

Как вы относитесь к легализации курения мануалов?
Вопрос на собеседовании.

Господа и дамы, френды и френдессы, я знаю, среди вас достаточно много умных людей, которые понимают в электронике, электротехнике, схемотехнике и программировании микроконтроллеров с помощью Visual FoxPro! Не дайте пропасть начинающему погромисту, объясните, почему нижеприведённая схема не будет работать?


Это всё ещё для моего проекта по индикации всего-всего. По сравнению с предыдущим разом схема переработана и дополнена.

Пояснения в двух словах, с начала к концу:

  • Демультиплексор (в верхнем левом углу) получает на вход три бита, после чего подаёт 5 вольт на одну из своих ножек вывода. При некотором удачном стечении обстоятельств, номер этой ножки будет соответствовать числу, полученному на вход в бинарном виде: при 100 включится четвёртая ножка, при 010 — вторая, и так далее. На остальных ножках при этом остаётся ноль. Всего ножек восемь.
  • К каждому выводу демультиплексора через килоомный резистор подключена база NPN-транзистора. (На схеме показан только один транзистор, потому что схема подключения остальных абсолютно такая же). NPN-транзистор позволит течь через себя току, если на его базу подано напряжение. Таким образом, в каждый момент времени только один транзистор будет открыт, остальные семь будут закрыты.
  • На коллектор каждого из этих восьми транзисторов постоянно подаётся 5 вольт.
  • Эмиттер каждого из этих восьми транзисторов подключён к 13-му пину одного из восьми коннекторов (на схеме, по тем же причинам, показан только один коннектор). Таким образом, когда транзистор открыт, пять вольт напряжения проходят к 13-му пину соответствующего коннектора.
  • Каждый такой коннектор 14-жильным проводом подключается к модулю LED`ов, выполненному в формате выносной линейки из 12 LED`ов. Аноды каждого LED`а подключены к этому тринадцатому пину (там ещё 220-омные резисторы воткнуты, чтобы LED`ы не сдохли раньше срока).
  • Катод каждого из этих LED`ов подключён к своему собственному пину коннектора.
  • Каждый из 12-ти пинов, подключённых к катодам LED`ов, подключён к коллектору своего собственного транзистора, база которого подключена (посредством ещё одного килоомного резистора) к ножке микроконтроллера.
  • Эмиттеры всех этих 12 транзисторов соединены и связаны с землёй.
  • 12 из 13 используемых пинов всех 8 коннекторов подключены параллельно. Ток подаётся по 13-му, который через транзистор контролируется демультиплексором.
  • Катоды всех LED`ов с номером N во всех восьми линейках подключены к одному и тому же транзистору. Но ток будет в каждый момент времени течь только через один из этих LED`ов, согласно тому, на какой коннектор был подан ток демультиплексором.
  • В качестве средства ввода у меня предусмотрены три кнопки, на которые я повешу прерывания. И будет ещё термометр.

Как максимум, в каждый момент времени будут гореть 12 LED`ов. Потребляемый каждым LED`ом ток — 20 миллиампер; значит, вся линейка LED`ов будет потреблять как максимум 240 миллиампер. Микроконтроллер Atmel AT90USB162 потребляет 12 миллиампер. Демультиплексор 74HC238 потребляет 50 миллиампер. При том, что я могу брать из порта USB до 500 миллиампер, — мне кажется, запас ещё есть. Правда, в будущем я планирую подключить ещё два символьных экрана (16 символов × 2 строки), которые должны будут работать постоянно, но каждый из них потребляет всего 4 миллиампера, так что это не страшно.

Жду реакций, рекомендаций и рацпредложений.

[identity profile] yuri tabachnik (from livejournal.com) 2015-01-21 11:26 am (UTC)(link)
Хм, написал длинный коммент со ссылками на схемы и даташиты, а ЖЖ посчитал, что в комменте спам. Проверь плз папку со спамом, если в ЖЖ такая есть.

[identity profile] ahitech.livejournal.com 2015-01-21 11:34 am (UTC)(link)
Нашёл, раскрыл. Сейчас полезу туда отвечать.

[identity profile] yuri tabachnik (from livejournal.com) 2015-01-21 11:49 am (UTC)(link)
Пока откомментирую по подключениям линеек светодиодов. Восемь 14-пиновых гнезд и соответствующее количество шлейфов смотрелись бы хорошо в суровом таком шкафу управления (размером с холодильник) какой-нибудь промышленной установкой. В домашних же условиях эта гора проводов занимает кучу места, путается, провода постоянно переламываются в месте подпайки к плате и т д. Плавали - знаем.
Рекомендую поставить 74HC595 на каждой линейке и подводить к ней всего 6 хвостов: "данные", "строб", "сброс", "защелка", землю и питание. Заодно и длину линейки можно будет увеличить до 16 светодиодов (4х4).
Edited 2015-01-21 11:51 (UTC)

[identity profile] ahitech.livejournal.com 2015-01-21 12:16 pm (UTC)(link)
Я собирался использовать место на спине одного из мониторов. Там VESA FDMI-порт, которым я не пользуюсь, и у меня монтажная плата с соответствующим приспособлением для крепления имеется. Все эти гнёзда и шлейфы можно расположить там, — линейки светодиодов я всё равно собирался крепить на мониторы, так что огромное количество проводов будет спрятано позади мониторов и не является помехой.

Полез читать про схемы с 74HC595.
Edited 2015-01-21 12:16 (UTC)