» електроника »Каква ще бъде значката за конференцията в Хакадей през 2019 г. и как да си направите същото

Каква ще бъде значката за конференцията в Хакадей през 2019 г. и как да си направите същото



Вече трета година, когато Хакадей е домакин на следващата конференция, тя следва добра традиция: тя раздава значки на участниците, които в същото време са доста мощни изчислителни системи. Устройствата са включени в цената на билета. Те се произвеждат в малки индустриални серии, но са отворен хардуер, което означава, че всеки, който не може да стигне до конференцията, може, ако има желание и възможност да си направи същата значка като домашно приготвени направете го сами, Този път екипът за разработка е доста голям: това са автори под псевдонимите Lutetium, Aleksandar Bradic, Mike Szczys, Sophi Kravitz, Mike Walters, Sprite_tm, Elliot Williams, de∫hipu, Kumar Abhishek, Piotr Esden-Tempski, Voja Antoic, Zapp, Roger, Hyr0n, Sylvain Munaut и Sean Cross. И да, Воя Антонич отново е същият, разработчик на сега реколта и някога нов домашен компютър Galaksija.

Ако в предишни времена значката се правеше във форма, подобна на Cybiko или телефон с клавиатура QWERTY като Nokia Asha 200 и можеше да работи с емулатор Z80, операционна система CP / M и интерпретатор на основен език, сега тя прилича повече на джобна игрална конзола като Game Boy. И дори ви позволява да свържете 40-пинови касети. И този път тя беше направена на решетката FPGA LFE5U-45F.

Повтарянето на устройството трябва да започне с хардуера. Първото нещо, което трябва да направите, е да изтеглите всички файлове оттук и инсталирайте необходимия софтуер, на първо място - KiCad. Отворете диаграмата в него (hadbadge2019.sch файл) и закупете всички компоненти, включени в него, като предварително сте прочели бележките (файл hadbadge2019-bom-notes.txt). Отворете чертежа на платката (файл hadbadge2019.kicad_pcb) и експортирайте във формат Gerber. Поръчайте производството на дъска в компания с подходящ профил. Дори и да владеете LUT, в този случай няма да помогне. В сервиза за ремонт на смартфони поръчайте монтиране на компонентна платка в BGA случаи. Лесно спойкате всички други компоненти, като се съсредоточите върху снимката по-долу, като помните, че някои компоненти, например светодиоди, са полярни.



В FPGA трябва да попълните зареждащия програма с програмиста, като изтеглите всички файлове, необходими за това оттук, След това, всяко по-нататъшно взаимодействие на вашия компютър с платката ще се случи чрез USB. За да „съживите“ напълно FPGA, трябва да изтеглите инструментариума оттук, а кодът за внедряване на RISC-V процесора на FPGA и взаимодействие с периферни устройства е оттук, Компилирайте и попълнете кода.

След това платката ще бъде дефинирана като обикновен флаш устройство и върху нея ще бъде възможно да се поставят файлове с програмите, предназначени за нея. Програмните карти, съхранявани в паметта, могат да бъдат избрани с помощта на бутоните през екранното меню.

Касетата не е задължителна. Това е много проста дъска, която може да бъде направена от LUT или дори на перфкард. По-долу е диаграма на патрона и снимка на неговата платка:




Можете да инсталирате чип за флаш памет на касетата и след това, когато е инсталирана, зареждането от нея ще започне автоматично, когато е включено. На борда на касетата има и платформи за свързване на различни периферни устройства. Файлове, необходими за повторение на касетата, са тук, и KiCad, ако сте повторили самата значка, вече я имате.

Ако не сте програмист, значи сте готови. Можете да вземете примери тук и тук и експериментирайте. Ако решите сами да напишете софтуер за значки, разработчиците запознават всички с методите за връзка с техните потребителски програми към периферията.

Имената на бутоните се състоят от думата BUTTON, подчертаване и една от следните думи: НАГОРЕ, НАДОЛУ, НАЛЯВО, НАДЯСНО, A, B, ИЗБЕРЕТЕ, СТАРТ.

Примерен код за избиране на бутон:

ако ((MISC_REG (MISC_BTN_REG) и BUTTON_RIGHT)) {
    // Направете нещо, когато се натисне десен бутон.
}


Примерен код за четене на отчитане на таймер с честота 60 Hz:

uint32_t counter60hz (void) {
    връщане GFX_REG (GFX_VBLCTR_REG);
}


Примерен код за четене на номер от хардуерен генератор на произволни числа:

MISC_REG (MISC_RNG_REG)


Примерен код за LED управление:

MISC_REG (MISC_LED_REG) = 0xF;


Дадена е най-пълната информация за графичния двигател на устройството в този файл, Графика - плочки и спрайт (като в NES). Изображението на екрана се състои от четири слоя (изброени отгоре надолу): Sprite слой, слой B, слой A и фонов слой. Комплектите от плочки, всяка от които има обща резолюция 256х512 пиксела, се състоят от квадратни плочки със страна 16 пиксела. Палитрата е 16-битова.

Слоят съдържа 64х64 плочки, но на екрана се вижда прозорец с плочки 30х20. Когато е избран слой, всички промени в него стават видими веднага. Прозорецът може да се движи плавно спрямо слоя.

Слоевете с плочки могат да бъдат мащабирани и изкривени, във файла main.c са валидни примери. Работата със спрайт слоя все още не е изпълнена, тя ще бъде по-близо до конференцията. След това примерите ще бъдат поставени в един и същ файл.

Ето един екип от разработчици получи интересен дизайн. Някой ще каже, че в предишни времена с клавиатура QWERTY и BASIC беше по-интересно, но ретрокомпютрите помнят двата свята - и у дома компютри и конзоли. И вероятно това е точно така.
0
0
0

Добавете коментар

    • усмихвамусмивкиxaxaдобреdontknowYahooНеа
      шефдраскотинаглупакдаДа-даагресивентайна
      съжалявамтанцувамdance2dance3извинениепомощнапитки
      спиркаприятелидобърgoodgoodсвиркаприпадамезик
      димплясканеCrayдеклариратподигравателендон-t_mentionизтегляне
      топлинасърдитlaugh1MDAсрещаmoskingотрицателен
      not_iпуканкинаказвамчетаплашаплашитърсене
      присмехthank_youтоваto_clueumnikостърСъгласен
      лошоbeeeblack_eyeblum3изчервяванесамохвалствоскука
      цензурираншегаsecret2заплашвампобедаюsun_bespectacled
      ShokРеспектхахаprevedдобре дошълkrutoyya_za
      ya_dobryiпомощникne_huliganne_othodifludзабранаблизо

Съветваме ви да прочетете:

Предайте го за смартфона ...