» elektronik »Vad kommer att vara märket för Hackaday-konferensen 2019 och hur man gör dig själv samma

Vad kommer att vara märket för Hackaday-konferensen 2019, och hur man gör dig själv samma



För tredje året nu, när Hackaday är värd för nästa konferens, följer det en god tradition: det distribuerar märken till deltagarna, som samtidigt är ganska kraftfulla datorsystem. Enheter ingår i biljettpriset. De tillverkas i små industriella serier, men är öppen hårdvara, vilket innebär att alla som inte kan komma till konferensen, om de har önskan och förmågan att göra sig själva samma märke som hemgjorda gör det själv. Den här gången är utvecklingsgruppen ganska stor: det här är författare under smeknamnen Lutetium, Aleksandar Bradic, Mike Szczys, Sophi Kravitz, Mike Walters, Sprite_tm, Elliot Williams, de∫hipu, Kumar Abhishek, Piotr Esden-Tempski, Voja Antonic, Zapp, Roger, Hyr0n, Sylvain Munaut och Sean Cross. Och ja, Voya Antonich är återigen samma, utvecklaren av den nu årgång, och en gång ny Galaksija hemdator.

Om märket i tidigare tider gjordes i en formfaktor som liknar Cybiko eller en QWERTY-tangentbordstelefon som Nokia Asha 200, och det skulle kunna köra Z80-emulatorn, CP / M-operativsystemet och grundläggande språktolk, ser det nu mer ut som en fickficka en spelkonsol som Game Boy. Och till och med kan du ansluta 40-poliga patroner. Och den här gången gjordes den på FPGA Lattice LFE5U-45F.

Upprepa enheten bör börja med hårdvaran. Det första du behöver göra är att ladda ner alla filer härifrån och installera nödvändig programvara, först och främst - KiCad. Öppna diagrammet i den (hadbadge2019.sch-filen) och köp alla komponenter som ingår i den, efter att du tidigare har läst anteckningarna (hadbadge2019-bom-notes.txt-filen). Öppna kretskortsteckningen (hadbadge2019.kicad_pcb-fil) och exportera till Gerber-format. Beställ tillverkning av ett bräde i ett företag med lämplig profil. Även om du är flytande i LUT, i det här fallet hjälper det inte. Beställ montering på ett komponentkort i BGA-fall i verkstaden för reparation av smartphones. Du lödar lätt själv alla andra komponenter genom att fokusera på bilden nedan och komma ihåg att vissa komponenter, till exempel lysdioder, är polära.



I FPGA måste du fylla bootloader med programmeraren genom att ladda ner alla filer som behövs för detta härifrån. Efter det kommer all ytterligare interaktion mellan din PC och kortet att ske via USB. För att helt "återuppliva" FPGA måste du ladda ner verktygssatsen härifrånoch koden för implementering på FPGA för RISC-V-processorn och interaktion med kringutrustning är härifrån. Sammansätt och fyll i koden.

Därefter kommer kortet att definieras som en vanlig flash-enhet, och det kommer att vara möjligt att lägga filer med de program som är avsedda för det på den. De programkort som är lagrade i minnet kan väljas med knapparna via skärmmenyn.

Patronen är valfri. Detta är ett mycket enkelt bräde som kan göras av LUT, eller till och med på perfboard. Nedan visas ett diagram över patronen och en bild av dess kort:




Du kan installera ett flashminneschip på patronen och sedan, när den är installerad, kommer laddningen från den att starta automatiskt när den är påslagen. Det finns också plattformar för att ansluta olika kringutrustning på patronkortet. Filer som behövs för att upprepa patronen är häroch KiCad, om du upprepade själva märket, har du redan det.

Om du inte är programmerare, är du redo. Du kan ta exempel här och här och experimentera. Om du bestämmer dig för att själv skriva något märkesprogramvara, introducerar utvecklarna alla för metoderna för att kontakta sina användarprogram till periferin.

Knappnamnen består av ordet KNAPP, en understruk och ett av följande ord: UPP, NER, VÄNSTER, HÖGER, A, B, VÄLJ, START.

Exempelkod för polling av en knapp:

om ((MISC_REG (MISC_BTN_REG) & BUTTON_RIGHT)) {
    // Gör något när högerknappen trycks in.
}


Exempelkod för att läsa en timeravläsning med en frekvens av 60 Hz:

uint32_t counter60hz (void) {
    returnera GFX_REG (GFX_VBLCTR_REG);
}


Exempelkod för att läsa ett nummer från en hårddiskgeneratorns slumptalgenerator:

MISC_REG (MISC_RNG_REG)


Exempelkod för LED-kontroll:

MISC_REG (MISC_LED_REG) = 0xF;


Den mest fullständiga informationen om enhetens grafikmotor ges i den här filen. Grafik - kakel och sprite (som på NES). Bilden på skärmen består av fyra lager (listade uppifrån och ned): ett sprittlager, ett lager B, ett lager A och ett bakgrundsskikt. Uppsättningar av plattor, som var och en har en total upplösning på 256x512 pixlar, består av fyrkantiga plattor med en sida om 16 pixlar. Paletten är 16-bitars.

Skiktet innehåller 64x64 brickor, men ett fönster med 30x20 brickor syns på skärmen. När ett lager väljs kommer alla ändringar i det att visas omedelbart. Fönstret kan flyttas smidigt relativt skiktet.

Skikt med brickor kan skalas och förvrängas, de aktuella exemplen anges i main.c-filen. Arbetet med sprite-lagret har ännu inte genomförts, det kommer att göras närmare konferensen. Exemplen kommer sedan att placeras i samma fil.

Här är ett team av utvecklare som har en intressant design. Någon kommer att säga att det i tidigare tider med ett QWERTY-tangentbord och BASIC var mer intressant, men efterdatorer kommer ihåg båda världar - och hem datorer och konsoler. Och antagligen är det rätt.
0
0
0

Lägg till en kommentar

    • lelerxaxaOKdontknowyahoonea
      bossscratchluraJaja-jaaggressivhemlighet
      ledsendansdance2dance3benådningHjälpdrycker
      stoppvännerbragoodgoodvisselpipasvimningsanfalltunga
      rökklapparcraydeclarehånfulldon-t_mentionnedladdning
      hettaRASANDElaugh1mdamötemoskingnegativ
      not_ipopcornstraffalässkrämmalarmrapportersök
      hånthank_youdettato_clueumnikakutöverens
      illabeeeblack_eyeblum3rougeskrytaledan
      censureradepleasantrysecret2hotasegeryusun_bespectacled
      shokrespektlolprevedvälkommenkrutoyya_za
      ya_dobryihjälparene_huliganne_othodiFLUDförbudstänga

Vi rekommenderar att du läser:

Räcka den till smarttelefonen ...