Сестрёнки, 1952-53гг. Автор: Рыбченкова Л.Б
Источник - интересный проект, о Советском искусстве, живописи и графике.
Источник - интересный проект, о Советском искусстве, живописи и графике.
- Доктор, у меня гнусавость?
- Нет, это назализация!
Ничто не вечно, даже скидки на курсы Pikabu Study когда-нибудь заканчиваются. Нет, мы не отменяем их совсем, но с 29 марта цены будут выше.
・Коммерческий редактор: 25 000 рублей → 31 500 рублей
・SMM-специалист: 25 000 рублей → 35 000 рублей
・Веб-дизайнер: 25 000 рублей → 37 000 рублей
・UX/UI-дизайнер: 25 000 рублей → 37 000 рублей
Это плохая новость, а вот хорошая: у вас еще есть возможность записаться на новый поток с максимальной скидкой! И да, оплатить в рассрочку и частями все еще можно.
Занятия начинаются 28 марта, не опаздывайте!
Эта информация необходима в путешествиях, да и не только. Поэтому давайте рассмотрим несколько вариантов:
ATM /ˌeɪ.tiːˈem/ (Automated Teller Machine) - как правило, используется в США и Канаде, но его поймут везде
Cash machine, cash point (денежный аппарат, денежная точка) - распространённый вариант в Великобритании и Европе
ABM /ˌeɪ.biːˈem/ (Automated Banking Machine) - а это название характерно для Канады
Спросить кого-то о том, где находится ближайший банкомат можно так: Where’s the nearest …?
Какой вариант вам встречался?
Любовь с первого взгляда...
Мы не будем рассуждать на эту тему, а посмотрим, как сказать это по-английски. Попробуйте догадаться, какой предлог будет стоять на месте пропуска в данной фразе:
Love ... first sight
Если вы поставили with, то нет, это просто калька с русского языка. Нам нужен предлог AT:
It was love AT first sight - Это была любовь с первого взгляда
Do you believe in love AT first sight? - Ты веришь в любовь с первого взгляда?
/lʌv æt fɜrst saɪt/
Познакомимся с распространённым глаголом:
🔹 to mess up - испортить, напортачить.
I messed everything up - Я всё испортил
Существительное может стоять и после up: I messed up your breakfast - Я испортил твой завтрак.
Но если вместо существительного используется местоимение, то оно может быть только перед up: I messed it up
Всем привет! Рад, что понравился мой предыдущий пост про ZX Spectrum. Решил также сделать небольшую вырезку о том, как сделан компьютерный монитор (устройство для вывода плоского изображения). Также мы с вами попробуем построить некое его подобие из подручных средств.
Наш монитор, в общем то, состоит из:
- Матрицы (непосредственно превращающей электрический сигнал в световой)
- Схемы управления (содержит задающий генератор, устройство синхронизации, дешифратор, видеобуфер).
Давайте начнём с матрицы. Возьмём для примера LED-матрицу 8 на 8 пикселей. Вот она:
При разрешении всего лишь 8 на 8, в данной матрице, не много ни мало, 64 светодиода - и 128 проводов! Их необходимо адресовать (соединить). Благо, разработчики всё продумали - вертикальные и горизонтальные ряды можно объединить в линейку, сократив общее количество проводов до 16 штук. При этом, мы не теряем возможность зажечь каждый светодиод по отдельности. Вот, как это выглядит:
А для создания платы управления монитора, возьмём ещё несколько деталей:
Верхняя плата - тактовый генератор (формирует стробирующий сигнал, иначе говоря, задаёт темп работы схемы).
Для того, чтобы увидеть изображение, нам необходимо выполнить его развёртку. То есть, прочёсывание экрана из одной стороны в другую (либо слево направа, либо сверху вниз, это роли не играет). В этом нам поможет синхронизация монитора.
Для синхронизации вводится микросхема "синхронный счётчик", выполненный на отечественной микросхеме К555ИЕ5. Каждый такт генератора он добавляет +1 к своему численному значению. Давайте настроим и проверим данный счетчик:
Как можно видеть, светодиод стробирующего сигнала (в правом верхнем углу) мигает, а в нашей схеме в такт ему происходит счет от 1 до 8, пока что в двоичной системе. В конце счет сбрасывается, и всё начинается по кругу. Таким образом реализуется "прочёс" экрана, за каждый такт - сдвиг на 1 линейку.
Теперь, данный сигнал необходимо расшифровать. Нам поможет микросхема К555ИД7, дешифрующая сигнал из линий (синие светодиоды), в сигнал из 8 линий, который мы подключим к нашей матрице. Смотрим, как она работает:
Мы собрали типичную схему "бегущие огни". Здесь осуществляется "прочёс" светодиодов по кругу. Тот, который соответствует текущей цифре на счетчике, выключается. Теперь давайте попробуем подключить данную линию к нашей матрице, и посмотреть, что получится:
Мы сделали горизонтальную синхронизацию. К слову, в компьютерных мониторах и телевизорах синхронизация тоже очень важна - обычно, для неё выделяется отдельный провод. Так как тактовые генераторы в источнике видеосигнала и мониторе изначально не согласованы, данный сигнал (H-SYNC или CLK) и позволяет отследить, с какого момента и с какой скоростью начать прочёс, чтобы изображение не было сдвинуто или сжато/растянуто.
Давайте я продемонстрирую вам, каким образом будет происходить пиксельная развёртка:
Как я ранее упоминал, мы можем зажигать отдельные пиксели по очереди. Для этого, нужно в такт генератору и горизонтальной развёртке включать/выключать соответствующие, теперь уже вертикальные сигналы колонок. Похожим образом работает, в том числе, кинескопный телевизор, да и любой другой.
Осталось сформировать вертикальный сигнал. Давайте установим видеобуфер. Пока в качестве него вместо ОЗУ у меня будет ПЗУ (такая большая микросхема, т.к. других не было, но задействуем мы всего лишь первые 8 байт от неё). Эти 8 байт - наша экранная память (кадр), в которой хранится изображение. Это при том, что уровня яркости всего лишь два, и дисплей "монохромный" -не содержит цветов. Двоичный выход со счетчика дублируется, и подается на адресные входы ПЗУ. Давайте соберём, и посмотрим, как будет себя вести наше устройство:
Я ускоряю частоту тактового генератора, и таким образом, изображение становится "статичным" - оно по-прежнему построчно мерцает, но глазу и камере этого уже не заметно. В ПЗУ был записан какой-то мусор. Но картинка стабильна с течением времени, пиксели не мерцают, значит, схема собрана верно. Давайте попробуем нарисовать какой-нибудь кадр, и вывести его на монитор.
Данная картинка (bmp) 1-бит - конвертируется в набор HEX-значений. Вот он:
3C 42 91 85 85 91 42 3C
Это и будет наш кадр. Теперь давайте пропишем его в наш импровизированный "видеобуфер". Для этого я воспользуюсь китайской платой Mega 2560 и самодельным переходником под память.
К слову, с программированием данного ПЗУ тоже не всё так просто. Сначала, нужно передать код разблокировки ПЗУ, а лишь затем, информацию. Это тема для отдельного поста. Вот, что по итогу получается:
Как можно видеть, наш код успешно внесён в ПЗУ. Давайте попробуем запустить:
В общем, таким образом формируется наш кадр. А для вывода информации с источника сигнала в реальном времени, видеобуфер следует несколько усложнить - применив, например, двойную буферизацию: в одну микросхему загружается информация из компьютера, тогда как из другой она отображается. Затем эти микросхемы быстро переключаются между собой. Таким образом, не возникает проблем ни с доступом к памяти, ни с мерцанием пикселей - картинка есть всегда.
Всем спасибо за внимание, с вами был Kekovsky, 2023 г.
Асайнить, дебажить, фиксить — нет, это не новые заклинания из «Гарри Поттера». Это термины, которые каждый день использует QA-инженер!
На курсах Пикабу вы узнаете не только их, но и научитесь:
находить уязвимые места сайтов и приложений;
составлять баг-репорты;
использовать разные методы ручного и автотестирования;
а еще погрузитесь в профессию мага QA-инженера.
Переходите по ссылке и освойте новую специальность за 4,5 месяца под наставничеством опытных экспертов-практиков из Пикабу, Сбера ЕАптеки, Google и с ежедневной поддержкой куратора.