Архив категории: electronic

arduino AVR electronic USB

Аппаратный эмулятор нажатий клавиш для Windows

Возможно вы просто искали способ эмуляции нажатия клавиши в приложении, и хотели найти SendMessage(WM_KEYDOWN)+SendMessage(WM_KEYUP) или SendInput(), но если вы уже столкнулись с тем, что этот способ вам не подходит, как, например, в играх, которые специально защищаются от подобных методов для усложнения жизни ботописателям, добро пожаловать под кат.

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

electronic

Записки о NES / APU. Cчетчик кадров

Внезапно я осознал, что держать все в голове невозможно. Поэтому буду делать небольшие заметки об устройстве NES, которые я смог выяснить, изучая различные версии документаций и играясь с Visual 2A03. Некоторая информация, которую я здесь привожу, нигде не упоминается, но учитывается в современных эмуляторах.
Здесь я постарался описать работу счетчика кадров, который отвечает за генерацию сигналов для остальных частей APU в определенное время на кадре.
Читать далее »

AVR CPLD/FPGA electronic

Релизация CPU на плис. Ядро SomeAVR

В этой записи я попытаюсь рассказать о реализации части процессорного ядра, использующего подмножество команд, используемых микроконтроллерами с архитектурой AVR. Проект далёк от завершения, но помигать светодиодом уже можно 😉 Например так:

Здесь правые 8 светодиодов показывают значение регистра R20, а левые 8 — значение IP(PC). Немного описания далее. Читать далее »

CPLD/FPGA electronic verilog

Verilog UART transmitter

Попытка написать UART передатчик на 115200 бод. Страшно конечно, но вроде работает :-). Не стреляйте в пианиста — он играет, как умеет. Ниже исходник: Читать далее »

CPLD/FPGA electronic

EP2C5T144 Mini Development Board

Пришла платка 🙂

AVR CPLD/FPGA electronic

Макетная плата USB7. CPLD Shield.

Для обеспечения хоть какой-нибудь возможности работы с высокочастотными сигналами микроконтроллеру, установленному на макетной плате USB7, я решил добавить небольшую CPLD EPM3064AT44. С помощью этого шилда, возможно получится сделать частотометр и логический анализатор.

Ниже схема очередного «чуда»: Читать далее »

AVR electronic

Макетная плата USB7. Memory Shield.

Собственно и сам шилд. Будем считать, что первая версия, и не будем пугаться висящих проводов. Зато плата односторонняя 🙂

Ниже схема сего «чуда»: Читать далее »

arduino AVR electronic

Добавляем поддержку «совместимых» микроконтроллеров в Arduino IDE

В линейке контроллеров, кроме тех, которые используются в «стандартных» платах arduino(Duemilanove, Diecimila, Uno) а именно atmega328 и atmega168 есть ещё 2: atmega48 p/a/pa и atmega88 p/a/pa с меньшим объёмом flash/ram памяти, но идентичным набором периферии. И т.к. серийных плат с младшими моделями нет, Arduino IDE «из коробки» не умеет компилировать и прошивать скетчи в эти контроллеры. Вот как выглядят модули на них(справа первая версия с более «толстым» atmega168):

Чтобы добавить поддержку этих контроллеров нужно сделать следующее: Читать далее »

AVR electronic

Пример работы со внешней памятью на AVR

После изготовления Memory shield(о котором, я надеюсь, скоро напишу) я хотел проверить его работу, но всё время не хватало времени, да и знаний тоже. Может и сейчас я в чём-то ошибаюсь, но всё-таки выложу это здесь.
Это простенький пример тестирования памяти. Кстати. Хочу отметить, что даже без подключенного шилда, то что читается из памяти вполне определено — а именно младший байт адреса, т.к. он мультеплексирован с шиной адреса и на контактах, болтающихся в воздухе, остаётся только что выставленное значение(у AVR есть функция поддтяжки этих пинов к питанию, но я её пока не использовал).
Читать далее »

AVR electronic

Очередная пародия на printf

Понадобилось мне для некоторых целей быстренько соорудить нечто похожее на printf для микроконтроллера. Нет, я знаю, что есть успешный опыт прикручивания полноценного printf, но чукча не читатель.
Как будет время, обязательно разберусь, но пока я просто оставлю это здесь. Читать далее »