Världsklocka i tyska genom att använda Arduino (4 / 8 steg)
Steg 4: Bygga PCB
Använda en av de prototyp Stripe styrelser, började jag layout min krets i styrelsen. Eftersom jag har 24 LED lampor till ljus, bestämde jag mig för jag var tvungen att använda tre 8-bitars SKIFT register anslutna direkt till tre Darlington Transistor matriser.
Här är en snabb sammanfattning av hur de 74HC595 SKIFT register arbete:
- Eftersom Arduino har ett begränsat antal digitala utgångsstift, måste du du Skift register att öka antalet digitala utgångar.
- I grund och botten skickar du 8 databitar (som 01101100) en enda stift av Arduino till SKIFT Register. Varje bit motsvarar en av de 8 portarna på SKIFT registrera dig och bestämmer om du vill slå på eller av.
- Du kan också daisy-chain SKIFT register tillsammans och, i mitt exempel, jag skicka 24 bitar ut på en gång (som 01101100 01010000 11001100) från Arduino. Bitarna får skjuts ut den första SKIFT Register och till nästa och så vidare.
- För att skicka bitar till SKIFT Register eller många SKIFT register från Arduino, måste du använda 3 digitala pins på Arduino. En för data (som nämns) och sedan en för klockan och spärren (som hanterar timing för att skicka data).
- Till daisy chain återanvända du klocka och spärren anslutningarna till den extra SKIFT register. Data, men har en separat utgång på SKIFT registrera dig att ansluta till den nästa SKIFT registrera inmatning av data.
- Arduinos webbplats har en bra handledning för mer detaljer på 74HC595 SKIFT register (länk).
Nackdelen att använda 12V LED strips är att Arduino endast utgångar 5V från SKIFT register. Därför måste du öka spänningen till 12V annars LED strips inte tänds. För att öka spänningen, måste du använda en transistor, eller närmare bestämt en transistor vektor för att öka spänningen till flera anslutningar.
Jag gick med ULN2803A Darlington Transistor matrisen och ingångar linjen upp med produktionen av varje 74HC595 SKIFT Register. ULN2803A tog lite längre tid att förstå så förhoppningsvis kommer detta att klargöra för dig:
Här är en snabb sammanfattning av hur ULN2803A Darlington Transistor arrayer fungerar:
- Transistor matriser har 8 motsvarande ingångar och utgångar och när du ger en positiv spänning till input (dvs "1" från SKIFT Register) då du slag-för "Aktivera" utdata.
- Det sagt, den transistorn matriser endast Sänka nuvarande på utdata stiften. Vad detta betyder är att transistorn matrisen kommer att slutföra en krets och marken vad är ansluten till det har utgång pin (låter lite bakåt men stanna hos mig).
- För alla 24 LED strips, jag hade dem ansluten direkt till en enda + 12V källa hela tiden (aka "positiv spänning rail").
- Varje LED strip jordledning var kopplas sedan till var och en av utgångarna från Transistor matriser.
- När transistorn matrisens input gick positivt, det berättade motsvarande produktionen att slutföra lysdioder krets och sedan jordad anslutning (därav det "sjunker strömmen" till marken i stället för "sourcing strömmen").
- Här är ett bra blogginlägg som hjälpte mig att förstå (länk).