Orodha ya maudhui:

Kompyuta ya Nyumbani ya DIY: Hatua 4
Kompyuta ya Nyumbani ya DIY: Hatua 4

Video: Kompyuta ya Nyumbani ya DIY: Hatua 4

Video: Kompyuta ya Nyumbani ya DIY: Hatua 4
Video: НОЧЬЮ САМО ЗЛО ПРИХОДИТ В ЭТОТ ДОМ / AT NIGHT, EVIL ITSELF COMES TO THIS HOUSE 2024, Novemba
Anonim
Kompyuta ya Nyumbani ya DIY
Kompyuta ya Nyumbani ya DIY

Nilichapisha Agizo la muda mfupi nyuma nikitumia Espruino Pico kutengeneza kompyuta ya nyumbani:

Hiyo ilihitaji uunganishe mfuatiliaji wa VGA kwa kukata kebo ya VGA, lakini kwa hii Inayoweza Kutekelezwa ninatumia bodi inayoitwa Pixl.js, ambayo ina skrini ya LCD iliyojengwa. Inamaanisha unachohitaji kuunganisha ni waya chache na una kompyuta ndogo inayoweza kutumika vizuri.

Kwa hivyo unahitaji nini?

  • Pixl ya Espruino
  • Kipande cha plastiki au kuni ili kufanya kama msingi
  • Bodi ya mkate
  • 4x 4P4 KeyPads
  • Stika nyingi kwa funguo
  • Seti 6 za 8x Kiume-> waya za mtindo wa Dupont wa mtindo wa Dupont (waya 48 jumla) - vipande vinavyolingana vyenye rangi nyingi hufanya maisha iwe rahisi zaidi

Hatua ya 1: Kutengeneza Kinanda

Kutengeneza Kinanda
Kutengeneza Kinanda
Kutengeneza Kinanda
Kutengeneza Kinanda
Kutengeneza Kinanda
Kutengeneza Kinanda
  • Weka Funguo zako za Key 4 karibu na kila mmoja kwenye msingi wako (ziko nyuma). Unaweza kutaka kupunguza kingo zao chini, lakini kuwa mwangalifu usipunguze mbali sana au unaweza kukata anwani zingine.
  • Shika ubao wako wa mkate katikati - ni nata-nyuma pia!
  • Gawanya waya ya kuruka ndani ya urefu wa 4 wa 8 - jaribu na kuweka rangi sawa kwenye kila moja.
  • Weka waya kwenye KeyPads, uhakikishe kuwa rangi zote zinalingana. Pindisha waya nyuma na uziweke mkanda nyuma ya msingi wako. Unaweza kutaka kuongeza miguu yenye kunata ili kuokoa waya kutoka kwa kuinama kwa pembe nyingi.
  • Sasa ongeza stika kwa kila kitufe kwenye pedi muhimu na uiweke alama kama unavyotaka kibodi. Tumia picha hiyo kama mfano, lakini unapopakia nambari yako unaweza kubadilisha tofauti ya 'KEYMAP' kwa kile ulicho nacho.

Hatua ya 2: Wiring

Wiring
Wiring

Sasa unahitaji waya kwenye kibodi. Kila keypad ya 4x4 imepangwa kama gridi ya taifa, na tunawaunganisha kama wao walikuwa kwenye gridi ya 2x2 - wakitengeneza gridi kubwa ya vifungo 8x8.

Waya kama inavyoonyeshwa kwenye picha katika vikundi 4 vya waya 4 kwenye ubao wa mkate (angalia rangi za waya kwenye picha), kushoto kutoka kulia kwenda kulia:

  • KeyPad 1 waya 4 za kwanza -> kikundi cha kwanza cha 4 kwenye ubao wa mkate -> D0, D1, D2, D3
  • Waya za KeyPad 1 Pili 4 -> kikundi cha tatu cha 4 kwenye ubao wa mkate -> D8, D9, D10, D11
  • Waya za KeyPad 2 za kwanza 4 -> kikundi cha kwanza cha 4 kwenye ubao wa mkate -> D0, D1, D2, D3
  • Waya za KeyPad 2 Pili 4 -> kikundi cha nne cha 4 kwenye ubao wa mkate -> D12, D13, SDA, SCL
  • Waya za KeyPad 3 za kwanza 4 -> kikundi cha pili cha 4 kwenye ubao wa mkate -> D4, D5, D6, D7
  • Waya za KeyPad 3 Pili 4 -> kikundi cha tatu cha 4 kwenye ubao wa mkate -> D8, D9, D10, D11
  • Waya za KeyPad 4 za kwanza 4 -> kikundi cha pili cha 4 kwenye ubao wa mkate -> D4, D5, D6, D7
  • Waya za KeyPad 4 Pili 4 -> kikundi cha nne cha 4 kwenye ubao wa mkate -> D12, D13, SDA, SCL

Katika picha tuna seti 6 za waya 8. Ya kwanza 2 ni kutoka kwa keypads 1 na 2, ya pili 2 inaenda kwa Pixl.js, na ya pili ni ya keypads 4 na 3.

Hatua ya 3: Programu

Sasa hakikisha firmware yako ya Pixl imesasishwa, unganisha nayo na Espruino IDE, na upakie nambari hapa chini. Tenganisha IDE na umemaliza!

// Kinanda wiringvar KEYROW = [D7, D6, D5, D4, D3, D2, D1, D0]; var KEYCOL = [A5, A4, D13, D12, D11, D10, D9, D8];

// Ramani muhimu za Kinanda

var KEYMAPLOWER = ["" 1234567890 - = / x08 "," / tqwertyuiop n "," / 0asdfghjkl; '# / x84 / x82 / x85 "," / x01 / zxcvbnm,./ / x80 / x83 / x81 ",]; var KEYMAPUPPER = ["¬! \" £ $% ^ & * () _ + / x08 "," / tQWERTYUIOP {} n "," / 0ASDFGHJKL: @ ~ / x84 / x82 / x85 "," / x01 | ZXCVBNM? / x80 / x83 / x81 ",];

/ * Ikiwa char kwenye ramani ya ufunguo ni> = 128, toa 128 na angalia katika safu hii kwa nambari kuu za wahusika anuwai * / var KEYEXTRA = [String.fromCharCode (27, 91, 68), // 0x80 kushoto String.fromCharCode (27, 91, 67), // 0x81 kulia String kutoka kwaCharCode (27, 91, 65), // 0x82 juu String.fromCharCode (27, 91, 66), // 0x83 chini String.fromCharCode (27, 91, 53, 126), // ukurasa 0x84 juu String.fromCharCode (27, 91, 54, 126), // ukurasa 0x85 chini]; // Hali ya Shift var hasShift = uwongo; kazi setShift (s) {hasShift = s; // chora kiashiria cha kuhama kwenye skrini ikiwa (hasShift) {g.setColor (1); g.fillRect (105, 0, 128, 6); g.setColor (0); g.drawString ("SHIFT", 107, 1); g.setColor (1); } mwingine {g.setColor (0); g.fillRect (105, 0, 128, 6); g.setColor (1); } g.flip (); }

// Badilisha kitufe halisi kuwa mlolongo wa herufi

// Na tuma kwa Loopback (ambapo koni iko) kazi handleKeyPress (e) {var kx = e >> 3; var ky = e & 7; ikiwa (ky> 3) {// geuka kuwa safu mirefu kx + = 8; ky- = 4; } var ufunguo = hasShift? KEYMAPUPPER [ky] [kx]: KEYMAPLOWER [ky] [kx]; ikiwa (ufunguo == "\ x01") {setShift (! hasShift); } mwingine {setShift (uwongo); ikiwa (ufunguo && key.length) {if (key.charCodeAt (0)> 127) key = KEYEXTRA [key.charCodeAt (0) -128]; Terminal.inject (ufunguo); }}}

// kuanzisha keypad

zinahitaji ("KeyPad"). unganisha (KEYROW, KEYCOL, handleKeyPress);

Hatua ya 4: Kutumia

Kutumia!
Kutumia!

Sasa inafanya kazi:

  • Kibodi inaweza kugundua tu kitufe kimoja kwa wakati mmoja, kwa hivyo Shift inabadilisha herufi kubwa (na kiashiria juu kulia), na kuandika herufi inarudi kwa herufi ndogo. Kushikilia Shift na ufunguo mwingine hautafanya kazi.
  • Kuandika kunaweza kuwa chungu kabisa, kwa hivyo tumia kitufe cha Tab (upande wa kushoto) iwezekanavyo kujaza maneno kiotomatiki!
  • Picha za skrini zinapatikana kupitia njia kwenye ubadilishaji wa g - kwa mfano, g.fillRect (20, 20, 40, 40) au g.clear ().
  • IO nyingi hutumiwa kwa kibodi, lakini bado una pini A0, A1, A2 na A3 ambazo unaweza kutumia kuunganisha vifaa vya nje.
  • reset () itaweka upya kila kitu - pamoja na nambari yako ya utunzaji wa kibodi. Ili kuepusha hii, washa kuhifadhi kwenye kutuma, hata baada ya kuweka upya katika chaguzi za mawasiliano za IDE ya Wavuti na upakie tena.
  • Kompyuta yako ni ya nguvu ya kushangaza - bado unaweza kutarajia maisha ya betri ya siku 20 - kila wakati - uzime betri moja ya CR2032!

Ilipendekeza: