Përmbajtje:

Osu! Tastiera: 8 hapa (me fotografi)
Osu! Tastiera: 8 hapa (me fotografi)

Video: Osu! Tastiera: 8 hapa (me fotografi)

Video: Osu! Tastiera: 8 hapa (me fotografi)
Video: 8 инструментов в Excel, которыми каждый должен уметь пользоваться 2024, Korrik
Anonim
Osu! Tastierë
Osu! Tastierë

Kohët e fundit kam filluar të luaj një lojë ritmi të quajtur osu! dhe pasi pashë një video të një mini tastiere komerciale mendova se do të ishte një projekt argëtues për ta hartuar vetë. Jo shumë kohë pas kësaj vendosa se do të ishte një ide e mirë për ta vënë atë në udhëzime si projekti im i parë.

Nëse doni ta përsërisni këtë projekt pikërisht në udhëzimin e fundit, atëherë bëhuni mysafiri im, por disa nga dëshirat që kam bërë nuk bazohen në çmimin më të ulët ose cilësinë më të mirë. Disa përbërës janë zgjedhur pothuajse thjesht sepse i kisha të shtrirë përreth. Nëse mund ta përballoni, do t'ju inkurajoja që të personalizoni projektin tuaj.

Shënim 1: Komponentët SMD (elektronikë të vegjël) përdoren kështu që nëse përsërisni këtë projekt kërkohen aftësi bashkimi. ndoshta një version i lehtë për t'u bashkuar do të shtohet, por këto leds nuk vijnë në pako vrimë lug

Shënim 2: Unë e kam përditësuar kodin shumë herë dhe jam deri në versionin 3ish tani. Unë do ta lë të gjithë kodin në internet, por ju rekomandoj të përdorni versionin e fundit. Aktualisht nuk ka funksionalitet të udhëhequr, por duhet të jetë ai me performancën më të mirë.

Hapi 1: Materialet dhe Shpjegimet

Materialet dhe Shpjegimet
Materialet dhe Shpjegimet

Në varësi të mënyrës se si e bëni projektin tuaj ju mund të keni nevojë për përbërës të ndryshëm, por këto përbërës janë ato që kam përdorur. Nëse keni kohë dhe doni të kurseni para, porositni nga aliexpress dhe mos porositni PCB.

1 kabllo Arduino pro mikro + USB

3 ndërprerës të kuq Kailh BOX

3 Rezistencë 10k (0805 SMD)

3 kondensator 100nF (0805 SMD)

4 LED APA102 rgb (5050 SMD)

3 kapëse çelësash

1 Bordi i qarkut të printuar (PCB) i dhënë në këtë projekt

1 kuti e printuar 3D e dhënë në këtë projekt

Pse përdor një Arduino pro micro?

Shumica e bordeve arduino si Uno (Atmega328) nuk kanë mbështetje amtare për komunikimin USB. Po ju mund t'i programoni ato me USB shumë lehtë dhe mendoj se ka zgjidhje, por më pëlqen ta mbaj të thjeshtë kur është fjala për komunikimin USB dhe nuk e di nëse zgjidhjet janë aq të përgjegjshme. Ato borde përdorin një çip të jashtëm për të bërë të mundur komunikimin USB ndërsa Arduino pro micro (Atmega32U4) e ka të integruar.

Çelsat

Ka shumë çelësa mekanikë që mund të përdorni. Linear, prekës ose klikues nga Kailh ose Cherry MX. Zgjidhni cilindo që ju pëlqen. Kam përdorur ndërprerësit Kailh sepse ishin të lirë në Ailexpress. Nëse zgjidhni të përdorni PCB, do t'ju nevojiten çelsat Kailh BOX. Ngjyra përcakton ndjenjën.

Komponentët elektronikë

Nuk ka shumë për të shpjeguar në lidhje me to në këtë kapitull, por nëse nuk e përdorni PCB -në, unë do të rekomandoja përbërës normalë të vrimës përmes gropës për lehtësinë e bashkimit. Fatkeqësisht llambat e përdorura nuk janë të disponueshme në paketat e vrimave të vogla. Unë gjithashtu nuk do të rekomandoja të përdorni tela në paketat SMD nëse nuk jeni shumë të sigurt në aftësitë tuaja të bashkimit. Edhe për SMD në një PCB aftësitë e saldimit "të avancuara" janë të barazuara.

Strehimi

Unë siguroj një strehim në këtë projekt, por është në këtë moment me të meta. Nevojiten modifikime për të vendosur bulonat, hapjet për llambat nuk janë optimale, arduino është e ekspozuar dhe një pjesë duhet të pritet që USB të përshtatet. Në të ardhmen mund të shtohet një banesë e re. Nëse keni një printer 3D shkoni përpara dhe printojeni, por ju lutemi mos dilni nga rruga juaj për të printuar këtë kuti me të meta nëse nuk e përdorni dhe thjesht përdorni një lloj kuti projekti.

Hapi 2: Skema

Skematike
Skematike

Skema për këtë projekt është mjaft e thjeshtë, por unë dua të shpjegoj përbërësit për njerëzit që janë të interesuar dhe nuk e dinë këtë zbatim.

Kaloni lidhjet me Arduino

Çelësat janë të lidhur me kunjat Arduino 0, 2 dhe 3 sepse ato kunja mund të përdoren si ndërprerje të jashtme. Kjo shpjegohet më tej në pjesën e kodit.

Qarku i debunimit

Në anën e majtë të skemës është një qark që kopjohet 3 herë. Ky qark përdoret për të hequr çelësin. Për të ditur se çfarë është debouncing ju duhet të kuptoni kalimin e kërcimit dhe nuk është e vështirë të kuptohet.

Shikoni së pari këtë simulim për të pikturuar një fotografi të parë (klikoni shpejt ndërprerësin dhe shikoni sinjalin më poshtë)

Kur shtypni ose lëshoni një ndërprerës, ai kërcen dhe sinjali juaj alternon mes të lartë dhe të ulët disa herë për disa milisekonda. Një Arduino është vërtet i shpejtë dhe lexon çdo gjë të lartë e të ulët në këtë kohë të shkurtër. Programi do të dërgojë një shtyp ose lëshim çelësash sa herë që lexohet një nivel i lartë ose i ulët, kështu që me çdo shtyp kompjuteri juaj do të marrë shtypje të shumta të tastit. Jo ideale për një lojë ritmi.

Ky qark debounce do të ngadalësojë skajin në rënie të sinjalit. Sinjali për Arduino nuk do të jetë në gjendje të ndryshojë aq shpejt sa ndodh kërcimi, kështu që do të lexohet si një shtypje. Mos u shqetësoni se do të ngadalësohet për shtypin tjetër të vërtetë sepse do të ndodhë.

I avancuar:

Atmaga32U4 lexon një nivel të ulët dixhital në 0.2Vcc - 0.1V = 0.9 volt. Tensioni i kondensatorit në çdo kohë në shkarkimin e tij është Vcc * e^(-t/RC). Nëse matni një kohë të ndryshme të daljes në çelësin tuaj, mund të llogaritni vlerat tuaja të rezistencës dhe kondensatorit.

formula formula

LEDs

LED -të rgb janë LED të APA102 të cilat adresohen individualisht duke përdorur një orë dhe linjë të dhënash. Asnjë përbërës i jashtëm nuk nevojitet për t'i bërë ato të funksionojnë. Për shumë LED ju duhet të përdorni një kondensator paralel me 5 volt dhe tokëzim, por me vetëm 4 LED nuk ju nevojitet.

Hapi 3: Dizajni i Bordit

Dizajni i Bordit
Dizajni i Bordit

PCB është projektuar në JLCPCB. Unë nuk jam i sponsorizuar prej tyre, por për prototipe të lira ata bëjnë PCB të shkëlqyeshëm. Për 2 dollarë ju merrni 10 të së njëjtës bord, por transporti ishte rreth 11 dollarë për mua. Nëse nuk doni domosdoshmërisht ndriçim rgb dhe planifikoni të bëni vetëm një, duhet të konsideroni të bëni tastierën tuaj pa PCB.

Dizajni i bordit ishte mjaft i drejtpërdrejtë. Më duhej vetëm të shtoja një komponent për ndërprerësit, por pasi shikova disa video e kuptova. E vetmja gjë e metë që kuptova është se vendosja e vrimave është shumë afër çelsave.

Për të porositur PCB shkoni te https://jlcpcb.com/ dhe zgjidhni opsionin me 2 shtresa. Do t'ju kërkojë një skedar Gerber. shkarkoni skedarin ".zip" dhe tërhiqeni atë në dritare. Nuk keni nevojë ta shpaketoni. Cilësimet duhet të jenë të mira dhe mund të vazhdoni dhe të përfundoni porosinë.

Hapi 4: Këshilla për Dizajnimin dhe Rastin e Rastit

Këshilla për Projektimin dhe Montimin e Rastit
Këshilla për Projektimin dhe Montimin e Rastit
Këshilla për Projektimin dhe Montimin e Rastit
Këshilla për Projektimin dhe Montimin e Rastit
Këshilla për Projektimin dhe Montimin e Rastit
Këshilla për Projektimin dhe Montimin e Rastit
Këshilla për Projektimin dhe Montimin e Rastit
Këshilla për Projektimin dhe Montimin e Rastit

Dizajn

Siç u përmend më parë, dizajni im është me të meta, por akoma mund ta printoni nëse dëshironi. dizajni u bë në Fusion 360. It'sshtë një softuer falas i modelimit 3D dhe me përvojën time nga shpikësi dhe solidworks ishte shumë e lehtë për të punuar me të. Rrathët në qoshet e kasës janë për të parandaluar qërimin nga shtresa e shtypur.

Nëse e bëni rastin tuaj, vetëm një gjë është me të vërtetë e rëndësishme. Çelsat tuaj duhet të jenë të vendosur fort dhe të paaftë për të lëvizur. Unë kam dhënë fotografi të prerjeve katrore me përmasa, kështu që ju mund t'i përdorni për modelin tuaj duke supozuar se përdorni çelsat Kailh BOX.

Kuvendi

Tani ju keni të gjithë përbërësit e nevojshëm për t'u montuar. Ekziston një urdhër për montimin e këtij versioni të parë sepse çelsat janë ngjitur.

1. Saldoni përbërësit SMD. këto janë rezistencat, kondensatorët dhe LED -të.

2. Saldoni Arduino pro mikro.

3. Vendosni 3 çelsat në mbulesën e printuar 3D para lidhjes. Mbulesa nuk mund të hiqet pas bashkimit të çelsave. Shkrirja e çelsave nuk këshillohet dhe mund t'i shkatërrojë ato.

4. Tani lidhni çelsat në vend. Bëni këtë sa më shpejt që të jetë e mundur sepse çelsat plastikë mund të shkrihen dhe t'i shkatërrojnë ato ose të zvogëlojë në mënyrë drastike numrin e klikimeve të tyre.

5. Vendoseni mbulesën e mbledhur në kutinë e printuar 3D dhe sigurojeni me shirit ose përdorni bulona nëse nuk ndërhyjnë me kapëset e çelësave.

6. Vendosni keyCaps në çelsin dhe jeni gati.

Rekomandimet

Mbylleni ose maskoni LED -të në arduino pasi të keni ngarkuar kodin tuaj. Led -at janë të mira nëse i keni kodin tuaj, por nuk janë të këndshëm për tu parë si një produkt i përfunduar. Kërkohet piskatore me aftësi dhe majë.

Gjithashtu disa këmbë të kapura në pjesën e poshtme janë të mira për rrëshqitje kundër dhe lejoni që drita rgb të shkëlqejë.

Hapi 5: Kodi V1 (Debounce i harduerit)

Kodi V1 (Debounce i harduerit)
Kodi V1 (Debounce i harduerit)
Kodi V1 (Debounce i harduerit)
Kodi V1 (Debounce i harduerit)

Kodi për këtë projekt nuk është miqësor për fillestarët, kështu që nëse sapo po filloni të programoni në arduino, atëherë ky kod ndoshta do t'ju trembë pak. Sidoqoftë, do të përpiqem të shpjegoj atë që po ndodh sa më mirë që mundem. Disa gjëra shpjegohen më vonë në këtë tekst, kështu që nëse keni pyetje, së pari lexoni të gjithë.

Ngarkimi i kodit

Fillimisht shkarkoni të 3 skedarët ".ino" dhe vendosini në një dosje. Nëse nuk keni Arduino IDE thjesht shkarkojeni falas në faqen zyrtare të arduino.

Lidhni Arduino -n tuaj me kompjuterin tuaj dhe hapni "OSU_Keyboard_code_V1.ino". Në Bordin e Mjeteve zgjidhni "Arduino/Genuino Micro". Gjithashtu në Tools zgjidhni portën e duhur COM. Kjo ndonjëherë mund të ndryshojë. Për të ngarkuar kodin në Arduino tuaj thjesht klikoni në shigjetën në pjesën e sipërme të majtë të ekranit dhe prisni derisa t'ju tregojë se është përfunduar në pjesën e poshtme të majtë.

OSU_Kodi_i tastierës_V1

Përfshirë dhe përcaktuar

Së pari ju duhet të përfshini bibliotekën e tastierës. Kjo bën të mundur përdorimin e Arduino si tastierë.

Tjetra unë përcaktoj disa vlera. Përcaktimi është si një ndryshore, por ato nuk mund të ndryshojnë ndërsa programi po funksionon. 9 të parat janë për karakterin e tastierës, numrin e pinit arduino dhe bitët e portit.

Pastaj pjesët e portit të të dhënave dhe orës LED.

Gjithashtu numri i leds është përcaktuar dhe një ndryshore për këndin e rrotës së ngjyrave.

Konfigurimi

Kjo pjesë e kodit do të ekzekutohet vetëm një herë kur arduino është e lidhur.

Së pari kunjat e orës dhe të dhënave të LED -ve vendosen si dalje dhe kunjat e ndërruesve si hyrje. Ky është versioni i avancuar i pinMode (). Nëse jeni të interesuar kërkoni për "manipulim direkt të portit".

Keyboard.begin () thjesht fillon lidhjen usb si tastierë.

3 ndërprerjet e ardhshme janë të lidhura me kunjat e ndërruesve. Sa herë që zbulohet një ndryshim në pinin e çelësit, do të ekzekutohet një program i vogël. Ky program i vogël do të bëhet më tej.

Lak

Kjo pjesë do të përsëritet vazhdimisht ndërsa arduino është i aktivizuar.

Unë e përdor atë vetëm për të ndryshuar dhe azhurnuar ngjyrën e LED -ve.

Ndërpret

Këtu bëhen programet e vogla, të cilat do të ekzekutohen vetëm kur zbulohet një ndryshim në kunjat e ndërprerës. Ata janë identikë me përjashtim të cilës pin reagojnë.

Së pari kontrollon nëse butoni shtypet ose lëshohet dhe dërgon komandën e saktë të tastierës.

LED (shpjegohet në një mënyrë tjetër)

Nëse jeni kurioz se si kontrollohen LED -të, duhet të shikoni fletën e të dhënave APA102.

OneBit

Ky është përsëri versioni i manipulimit me port të drejtpërdrejtë të shkrimit dixhital.

Së pari kontrollon nëse duhet të dërgojë një 0 ose 1 dhe respektivisht tërheq pinin e të dhënave të ulët ose të lartë. Pastaj shkruan majën e orës shumë të shkurtër dhe e shkruan përsëri ulët.

OneByte

Kjo përsërit oneBit 8 herë me një lak "for". Lexon bitin e parë në një byte dhe e kalon vlerën e tij në funksionin oneBit dhe bën të njëjtën gjë për 7 bitët e ardhshëm.

LedData

Kjo përsërit oneByte 4 herë për të siguruar të dhënat e nevojshme për një led. Bajti i parë fillon me 111xxxxx dhe një vlerë shkëlqimi 5 bit në vendin e xxxxx. Shkëlqimi mund të vendoset nga 0 në 31 (2^5 = 32 nivele).

3 bajtët e ardhshëm janë për vlerat blu, jeshile dhe të kuqe. Një bajt për secilën ngjyrë.

ColorWheelThisLed

Ky funksion thërret ledData i jep ngjyrat rgb në varësi të një këndi në rrotën e ngjyrave.

Vlera 16 bit është divident në 6 seksione me një distancë të barabartë prej 60 gradë. Shikimi i imazheve mund t'ju ndihmojë të kuptoni më mirë.

(gjithashtu ofrohet një version 8 bit, por komentohet sepse është shumë i ndezur)

StartEndFrame

Korniza e fillimit duhet të përdoret çdo herë që dëshironi të dërgoni ngjyra të reja në led dhe dëshironi të azhurnoni ngjyrën aktuale të leds

Unë përdor vetëm kornizën e fillimit sepse korniza përfundimtare nuk është e nevojshme. Korniza fillestare është 4 bytes prej 0. Korniza fundore është 4 bytes prej 255 (11111111).

Hapi 6: Kodi V2 (Debounce i softuerit me kohëmatës)

Kodi V2 (Debounce i softuerit me kohëmatës)
Kodi V2 (Debounce i softuerit me kohëmatës)

Pas një kohe të lojës, vura re disa probleme të përgjimit të dyfishtë me debunimin e harduerit. Kjo mund të rregullohet me disa rezistorë ose kondensatorë me vlerë të tjera, por meqë butonat dhe kapaku nuk janë të lëvizshëm, mendova se zhbllokimi i softuerit do të ishte një zgjidhje e mirë. Shpallja e softuerit duhet të funksionojë nëse debunimi i harduerit zbatohet ose jo. Në konfigurimin tim aktual, unë nuk mund ta heq kapakun, kështu që unë i lashë rezistorët dhe kondensatorët në vend.

Unë nuk do ta shpjegoj kodin aq gjerësisht sa versioni i mëparshëm, sepse është pak më e vështirë të shpjegohet.

Në thelb shumica e kodit funksionon njësoj dhe kodi led lihet i paprekur. ajo që ka ndryshuar është se ndërprerjet e jashtme nuk përdorin më funksionet arduino. Tani funksionon në kodin C të pastër. Dhe tani ajo që shtohet është ndërprerja e softuerit. Për këtë kam përdorur kohëmatësit AVR për të pritur një kohë të caktuar derisa kërcimi të ndalet. Për shkak se kohëmatësit ndërpriten bazuar në kohën e zbërthimit nuk ndikohet nga asgjë që ndodh në lak.

E vetmja pengesë me të cilën mund të dal është se funksionet e vonesës arduino nuk mund të përdoren më. Për shkak se funksionet e vonesës përdorin Kohëmatësin 0 dhe ky program përdor Kohëmatësin 0 për të dalë.

Në imazh mund të shihni se si funksionon afërsisht kodi. Biti mem tregon nëse një kohëmatës po funksionon. Ajo që nuk përshkruhet është rasti që në fund të shtypjes së butonit hyrja është e ulët. Në këtë rast vetëm një shtypës i tastit do të dërgohej ndërsa butoni është lëshuar tashmë. Që do të thotë se çelësi do të mbahet i ulët sa i përket kompjuterit. Për këtë ekzekutim të rrallë, një kontroll do të përgatitet paraprakisht kur skadon një kohëmatës. Nëse në fund të një kohëmatësi butoni nuk shtypet, një komandë e lëshimit të çelësit do të dërgohet.

Hapi 7: Kodi V3 (Software Debounce With Vertical Counter) (rekomandohet) (pa LED)

Kodi V3 (Software Debounce With Vertical Counter) (rekomandohet) (pa LED)
Kodi V3 (Software Debounce With Vertical Counter) (rekomandohet) (pa LED)

Ky kod gjithashtu ka një version ku nuk keni nevojë për rezistenca tërheqëse. Sigurohuni që të lidhni çdo buton me hyrjen dhe GROUND! Përdoret tërheqja e integruar

Kam përjetuar gjithashtu disa shtypje të paregjistruara në kodin V2. Unë mendoj se kodi thjesht u bë shumë kompleks me kohëmatësin e tij dhe ndërprerjen e jashtme dhe mund të kem humbur disa përjashtime. Për këtë arsye unë u përpoqa nga e para me kërkimin në internet për metodat e zbërthimit të softuerit.

(sinqerisht, të paktën gjysma e këtij projekti është bërë debouncing në këtë pikë)

Pas disa kërkimesh, hasa në këtë postim:

www.compuphase.com/electronics/debouncing….

Për të qenë i sinqertë, më është dashur shumë kohë për të kuptuar plotësisht se si funksionon saktësisht. Ai përfshin disa manipulime mjaft komplekse, por unë do të përpiqem ta bëj atë sa më të lehtë të jetë e mundur. Sidoqoftë, shpjegimet e mia do të jenë vetëm një shtesë për postimin, kështu që ju të paktën duhet të lexoni "sportelet vertikale", "një zbatim të shënuar" dhe "zvogëlimin e vonesës".

Shpjegimi im

Diagrami i kohës (i bërë në WaveDrom) që shtova duhet ta bëjë këtë pak të kuptueshme nga matematika e vogël, të paktën pak më e kuptueshme. Vini re se imazhi ka 2 bit kundër, por kodi im ka 3. Kjo do të thotë një kohë më e gjatë debounce.

Një bit për vlerë

Me zbatimin e banakut vertikal është e mundur të hiqni butona të shumtë në të njëjtën kohë, paralelisht. Të gjitha vlerat janë të tipit Byte (uint8_t) dhe përbëhen nga 8 bit. ne nuk jemi të shqetësuar se çfarë vlere përmban ndonjë prej këtyre bajtëve, por ne jemi të interesuar për copat më vete. Çdo buton që do të hidhet poshtë përdor vetëm një bit të secilit bajt. Butoni i parë përdor vetëm bitin e parë të secilit bajt, butoni i dytë përdor bitin e dytë etj.

Të gjitha në të njëjtën kohë

Duke përdorur matematikë bit është e mundur që të ekzekutohen këto debounces pin paralelisht. Dhe, megjithëse matematika bit është mjaft e komplikuar, është shumë efikase për procesorin.

Me një lloj të dhënash 8 bitësh është e mundur ta bëni këtë për 8 butona. Përdorimi i llojeve më të mëdha të të dhënave lejon më shumë debounces në të njëjtën kohë.

Debouncimi

Rutina e debunimit ekzekutohet çdo 1 milisekonda me një ndërprerje të kohëmatësit.

kur shtypet butoni butoniStat, që është gjendja e debunuar, do të zbresë në mënyrë të ulët, duke treguar një shtypje të butonit. Për të zbuluar një lëshim butoni duhet të jetë i lartë për mjaft kohë, duke treguar se nuk është kërcyer për një kohë të caktuar. Ndryshimi përdoret për të treguar ndryshimin e butonit. Bit -et e kundërsulmit përdoren për…. duke llogaritur se sa kohë nuk ka pasur një kërcim.

Delta tregon një ndryshim midis hyrjes dhe gjendjes së hequr. Vetëm kur ka një ndryshim, numëruesi do të llogaritet. numëruesi do të rivendoset kur zbulohet një kërcim (delta është 0).

Hapi 8: Rezultati

Image
Image

Nëse gjithçka shkoi mirë, tani duhet të keni një tastierë pune për të luajtur Osu! më Unë personalisht nuk kam vënë re ndonjë vonesë fare. Nëse e bëni, ju lutem më tregoni. Gjithashtu nëse ka ndonjë pyetje mos ngurroni të pyesni ndonjë gjë.

Përmendjet e mëparshme për një V2 nuk janë menduar si premtim, kështu që mos e shtyni këtë projekt sepse doni të prisni për V2.

Shpresoj që të kënaqeni me tastierën tuaj!

Osu! emri: Thomazzz3

Zgjidhja e problemeve

Nëse mendoni se keni probleme me tastierën tuaj, së pari hapni një redaktues teksti dhe shtypni secilin çelës një herë për një kohë të shkurtër.

A nuk funksionon një ose shumë çelësa?

Isshtë e mundur që keni shkatërruar një ndërprerës brenda ndërsa bashkoni. Nëse keni një multimetër vendoseni në vazhdimësi/bip, vendoseni paralelisht me çelësin ndërsa Arduino nuk është i lidhur dhe shtypni butonin. Duhet të bip.

A përputhen personazhet që sapo keni shtypur me çelësat që keni konfiguruar në Osu! ?

Ndryshoni karakteret në kodin arduino në 3 #Përkufizimet e para ('' është e domosdoshme!).

Ose ndryshoni Osun tuaj! cilësimet për të përdorur çelësat e konfiguruar.

A përsëriten disa herë një ose disa çelësa?

Qarku i debunimit me sa duket nuk funksionon për çelsin tuaj ose nuk është ngjitur siç duhet. Kontrolloni lidhjet tuaja të lidhjes. Nëse akoma ndodh, provoni një vlerë kondensatori prej 1uF. Kjo do të jetë shumë e vështirë për përdoruesit e PCB.

Nëse keni probleme me LED tuaj

A dridhen LEDs?

Një lidhje lidhëse mund të jetë e lirshme. Nëse përdorni PCB -në, konfirmoni kallajin e saldimit që doli me të vërtetë në bllokun e printimit.

A nuk punon asnjë nga leds ose nga një numër i caktuar LEDs nuk ndalon së punuari?

Kontrolloni për pantallona të shkurtra midis lidhjeve të LED -it të parë (ndiqni gjurmët) dhe kontrolloni për kallaj të lidhur mirë në daljet e Arduino dhe përsëri LED -in e parë. Nëse konfirmohet e saktë dhe ende ka defekt, mund t'ju duhet të zëvendësoni LED -in e parë.

Nëse kjo rregullohet, përsërisni për LED -të e ardhshëm nëse është e nevojshme.

Recommended: