Virtex
Так у меня уже мои читатели резервируют консоль и просят сделать для них. И это только после анонса и первой части статьи, где консоль собрана на соплях из макетки.
KPG
> Х.З, Но, да, ради одной отрабатываемой платы заказывать её текущую версию в
> Резонит ...
Это будет лучше в разы, чем инвестировать время и деньги в дендрофекальную конструкцию, собранную, буквально из подножного мусора, который точно в таком же составе/размере найти невозможно и нужно додумывать и допиливать то что есть, что вообще невозможно на коленке, без инструментов и слесарных навыков. Да покупка одних только тисков и болгарки сделает повторение нерентабельными.
monobogdan
> Так у меня уже мои читатели
Истинный гуру не имеет читателей, слушателей, последователей. Он черная звезда, сияющая лишь вовнутрь себя.
Для меня было бы немыслимо стерпеть такую наглость, как требование от меня (меня!) чего бы то ни было со стороны (последователей) тех, кто соизволил быть столь низок, что вместо того что бы бросить мне вызов и превзойти, решил мне поклониться.
0iStalker
> родить частоту 14МГц
С вариантом SDIV=3 обманул: этот параметр должен быть чётным, к сожалению.
А вот вариант CLKOUTD3 в первом приближении работает при таких параметрах:
defparam rpll_inst.FCLKIN = "27"; defparam rpll_inst.DYN_IDIV_SEL = "false"; defparam rpll_inst.IDIV_SEL = 8; defparam rpll_inst.DYN_FBDIV_SEL = "false"; defparam rpll_inst.FBDIV_SEL = 13; defparam rpll_inst.DYN_ODIV_SEL = "false"; defparam rpll_inst.ODIV_SEL = 16; defparam rpll_inst.PSDA_SEL = "0000"; defparam rpll_inst.DYN_DA_EN = "true"; defparam rpll_inst.DUTYDA_SEL = "1000"; defparam rpll_inst.CLKOUT_FT_DIR = 1'b1; defparam rpll_inst.CLKOUTP_FT_DIR = 1'b1; defparam rpll_inst.CLKOUT_DLY_STEP = 0; defparam rpll_inst.CLKOUTP_DLY_STEP = 0; defparam rpll_inst.CLKFB_SEL = "internal"; defparam rpll_inst.CLKOUT_BYPASS = "false"; defparam rpll_inst.CLKOUTP_BYPASS = "false"; defparam rpll_inst.CLKOUTD_BYPASS = "false"; defparam rpll_inst.DYN_SDIV_SEL = 2; defparam rpll_inst.CLKOUTD_SRC = "CLKOUT"; defparam rpll_inst.CLKOUTD3_SRC = "CLKOUT"; defparam rpll_inst.DEVICE = "GW1NR-9C";
Здесь IDIV_SEL и FBDIV_SEL - это уменьшенные на единицу делитель и множитель внешней тактовой частоты 27MHz. В результате на выходах PLL CLKOUT, CLKOUTD и CLKOUTD3 получаем частоты 42MHz, 21MHz и 14MHz. От последней из них и "запитал" следующий тест. Поставил делитель частоты UART 121 (т.к. 14000000/115200=121) и запустил тест: рисует именно то, что и должен.
Если интересно, могу завтра осциллографом потыкать, чтобы точнее сказать.
Total Vacuum
> В результате на выходах PLL CLKOUT, CLKOUTD и CLKOUTD3 получаем частоты 42MHz,
> 21MHz и 14MHz. От последней из них и "запитал" следующий тест. Поставил
> делитель частоты UART 121 (т.к. 14000000/115200=121) и запустил тест: рисует
> именно то, что и должен.
Супер! А можешь проект куда-нибудь выложить?
0iStalker, проект - это громко сказано :) Скорее уж просто тест, сделанный на коленке из говина и палок на базе наипримитивнейшего форт-процессора: http://totalvacuum.ru/14mhztst.zip
В архиве исходники процессора, прошивка для него (файл firmware.v16 в папке firmware, подключается к проекту через `include в core16.v) и исходники прошивки (файл wolf3d.ufh). Прошивка процессора (при желании) пересобирается при помощи rebuild.bat, а целиком весь проект (mcu16.gprj) - через Rebuild all в говинской IDE. Частота UART выставляется программно в прошивке (строка 121 UARTBRR !).
Тест сначала помигает светодиодами, а потом можно "бегать" в терминале кнопками a/w/d.
clock заведен на светодиод, который висит на ноге 14.
Сегодня получил лазерник, покупал новым. Результаты кое-какие есть, но пока что не получается.
Для удобства работы, распаял проц и дисплей на одной макетке, кнопки - на другой. Как приедет принтер, хочу распечатать корпус и собрать полноценный девайс. Кроме того, написал вторую игрушку под консоль - змейка.
В общем, читатели интересуются потихоньку. Говорят что всегда прикольно иметь вот такие колхозные-DIY штуки :)
Сделал корпус. Чутка не рассчитал размеры дисплея (набрехали в даташите, надо было по факту мерить), "увел" его в сторону и немного неправильно отрегулировал стол. По итогу корпус вполне получился, но немного с матней:
Корпус переделаю немного, но в целом для первой профильной печати нормас.
Энтузиаст
а почему крестик справа?
master-sheff
Я моделировал корпус к верху, при печати отразил его по Y вниз (чтобы принтеру проще было его печатать), но забыл еще и отразить по X, от чего он получился не в ту сторону :)
Напечатал толкатели кнопок. Они получились очень хорошо и без соплей. Плюс в изначальной модели забыл сделать что-то типа проставок под саморезы, напечатал отдельно. Должны держать достаточно прочно.
Немного нарисовал в cad корпус, с размерами на глаз) Сверху от экрана всегда нужно оставлять отступ, это технологичней, плюс ребро жесткости должно быть по контуру. Кнопки лучше по диагонали располагать, эргономика приятней.
А так, прикинул как бы выглядел корпус, если фрезеровать или печатать или отливать низ и сверху приклеивать стекло или пластик с краской сзади. Винты - думал стянуть с фронтальным блоком. И горизонтальный смотрится как то органичней. Как Nokia NGage. С вытянутым вертикально слишком много мяса по бокам.
Вообще, круто, если б у сайта была своя "фирменная" приставка, под которую можно писать несложные игры)
С фрезерованной металлической спинкой
И немного в цветах gamedev ru из пластика
И просто черная
Богдан ещё не устал в бане сидеть?
Ещё не все аккаунты забанили?