Моддинг UEFI BIOS, инкапсуляция SLIC таблицы.

  Вкратце поясню, о чем идет речь, что такое SLIC (Software Licensing Description Table) таблица. Таблица SLIC 2.1 нужна для оffline OEM активации Windows 7. Прошивание SLIC-таблицы в BIOS используется для того, чтобы реализовать механизм OEM-активации операционной системы Windows 7 точно так же, как это делают OEM-партнеры Microsoft для активации предустановленных копий Windows без проверки. Данный метод позволяет offline активировать систему при соблюдении трех условий: использование специального OEM-ключа и OEM-сертификата, а также наличие SLIC-таблицы в BIOS компьютера.
Сама по себе процедура прошивки SLIC-таблицы в BIOS вполне законна (Microsoft).
  Таблица SLIC 2.1 состоит из трех частей, кроме заголовка (ACPIHeader) она содержит публичный ключ (PublicKey) и маркер версии Windows 7 (WinMarker), размер таблицы 374 байт. Соответствующие таблице серийный номер и сертификат дожны быть прописаны в Windows 7. Все три составляющие и дают оффлайн активацию.
  Жесткой привязки OEM-ключа к SLIC-таблице и сертификату нет. Ключ привязан только к редакции Windows и позволяет активировать как x86-, так и x64-версии ОС. Файлы-сертификаты и SLIC-таблицы взаимосвязаны, и для успешной активации оба компонента должны быть от одного OEM-партнера.


Читать дальше

Программатор SPI и I2C микросхем памяти CH341A Mini Programmer

  Микросхемы памяти серий 24хх (EEPROM), 25хх (Serial Flash) широко используются в электронике. Такие чипы присутствуют в составе практически любой конструкции современной бытовой и промышленной аппаратуры, где есть процессоры и/или микроконтроллеры. Данный программатор имеет возможность работы с обоими типами памяти.


Читать дальше

Улучшение охлаждения на материнской плате ASUS PRIME X370-A.

Доработка радиатора южного моста.

  После покупки материнской платы она провела некоторое время на столе, на открытом стенде. Обратил внимание, что даже в простое температура южного моста непривычно велика, касаясь радиатора, руке сильно горячо (по мониторингу из BIOS 58-60 C). Можно было бы не обращать внимание, ведь инженеры ASUS не стали бы устанавливать мост в критический тепловой режим, чтобы потом менять их по гарантии. Но рассмотрев конструкцию радиатора сразу увидел, что приложив небольшое усилие можно его улучшить, а значит и облегчить тепловой баланс моста.


Читать дальше

Преобразователь логических уровней "1.8V-Adapter"



  Брал на Ali, продавца советовать не буду, т.к. брал за сто с бесплатной доставкой, теперь он повысил цену и доставку требует оплатить. С этим адаптером их там много…
  Преобразователь логических уровней выполнен на трансмиттере SN74ALVC164245. Он имеет два независимых 8-разрядных канала, в каждом есть вход управления направлением передачи DIR и вход перевода входов/выходов в высокоимпендансное Z состояние OE. В каждом канале имеются два порта A и B для входов/выходов (с раздельным напряжением питания), порт А предназначен для работы с логическими уровнями 2,5..3,3V, порт В работает с уровнями 5..3,3V. При питании обоих портов от 3,3V трансмиттер обеспечивает задержку передачи со входа на выход не более 5,8ns (в обе стороны), частоту передачи до 10MHz, токи выходных каскадов не менее 24ma.


Читать дальше

Использование моделей Spice в Proteus

  Понадобилось смакетировать схему в Proteus 7.10 с применением LDO стабилизатора AMS1117-5. Обнаружил, что данной модели нет, лучшее что может предложить мой Proteus, это 78L05. Непорядок, надо исправлять, т.е. попытаться добавить нужную модель в симулятор.
  В симуляторе Proteus могут использоваться 3 типа моделей — схематическая, Spice и DLL. Для первой на дочернем листе надо собрать схему из моделируемых примитивов Proteus, впоследствии преобразовав этот лист в файл *.MDF и подключив его к графическому примитиву. Proteus предоставляет средства для создания такого типа моделей. Для второй надо найти и скачать из инета уже созданную умными головами модель Spice для нужного компонента (в ASCII формате) и опять же подключить к графическому примитиву. Средств для создания такого типа (Spice) моделей Proteus не продоставляет. Самостоятельное изготовление DLL моделей доступно только программистам, тем более и соответствующий SDK для них (моделей) Labcenter закрыл. Естественно и никаких средств для создания моделей такого типа Proteus не продоставляет.
  В работе с Proteus рускоязычным пользователям может помочь замечательный цикл статей "FAQ (ЧаВО) по PROTEUS для начинающих и не только" от А. Христианчика (ник Halex07). На сайте Kazus.ru они доступны в разрозненном виде в порядке изложения. Для удобства Halex07 собрал первые 8 глав в 4 части (вместе с кодом и примерами) и дал на них ссылки для скачивания. Это же самое FAQ также доступно в формате Proteus.pdf (без кода и примеров). Также этот FAQ доступен в сборнике «РадиоЕжегодник» №24, 2013, «Proteus по-русски». На сайте Kazus.ru существует и незаконченная 5 часть FAQ, но она только на форуме в порядке изложения. Далее для краткости ссылки на FAQ будут именоваться как (FAQ_3.11, т.е. глава 3.11).
  Статья представляет собой вольный перевод раздела "Using Spice Models" хелпа Proteus.


Читать дальше

Среднечастотный частотомер на AVR. Часть 3, + милливольтметр.

  Это продолжение предыдущих частей "Часть1, динамическая индикация" и "Часть2, статическая индикация".
  В первой части я посетовал, что в ATmega8A при занятой памяти менее 10% почти не осталось свободных ножек. Во второй части я эту проблему решил с помощью внешнего контроллера дисплея. Осталось придумать, куда использовать освободившиеся ножки и неиспользованную память.
  Для измерительного генератора эти ресурсы могут быть применены при осовременивании схемы. Например замены переменного резистора настройки на инкрементальный энкодер, замены механических переключателей на управление реле или бесконтактными ключами и т.д. Это все индивидуально для каждой схемы. Но как правило измерительный генератор имеет регулируемый по напряжению выход. Контролировать уровень напряжения на нем также желательно. А у нас как раз остались незадействованными 6 каналов ADC (для PDIP, в корпусе TQFP их 8). Поэтому введем в программу второй канал измерения, измерять будем напряжение на входе ADC.


Читать дальше

Среднечастотный частотомер на AVR. Часть 2, статическая индикация.

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


Читать дальше

Среднечастотный частотомер на AVR. Часть 1, динамическая индикация.

  Давно хотелось иметь функциональный генератор с приличными характеристиками и не фантастической сложностью. Поэтому на Ali был прикуплен чип XR-2206, поиском по инету найдена схема генератора — XR-2206 5Hz to 300kHz Function Generator. Конструкция достаточно хорошо проработана и описана.
  Собственно к схеме генератора претензий нет, некоторые вещи я бы сделал по другому, но это потом в процессе изготовления. Мне сразу не понравилась цифровая шкала генератора (там же, страница 2). Его программа представляет сборку из скетчей Arduino, я их не понимаю и не горю желанием изучать. Да и применение ATmega328 мне показалось неоправданно жирным. Короче решил спроектировать свою цифровую шкалу на ATmega8A. Результат представляю вашему вниманию, код написан на ассемблере AVR в среде AVR Studio 4.19.


Читать дальше

Simatic Step 7. STL. Бит четности (паритета).

PLC
  Под четностью битовой строки понимается, какое кол-во единичных бит — четное или нечетное — содержит эта строка. Правильнее было бы назвать его битом нечетности, т.к. нечетному кол-ву бит соответствует единичный бит четности, четному кол-ву — нулевой. Математически результат представляет собой сумму всех бит слова по модулю 2, т.е. над всеми битами выполняется операция исключающее ИЛИ. В стандартной библиотеке такой функции нет.


Читать дальше

Simatic Step 7. STL. Установка/сброс бита по номеру

PLC
  По сути это программная реализация двоичного дешифратора (декодера). Он преобразует двоичный код номера бита в унитарный код со значащей единицей (нулем).


Читать дальше