![Musiksynthesizer baserad på DE0-Nano-SoC: 5 steg (med bilder) Musiksynthesizer baserad på DE0-Nano-SoC: 5 steg (med bilder)](https://i.howwhatproduce.com/images/003/image-7960-15-j.webp)
Innehållsförteckning:
2025 Författare: John Day | [email protected]. Senast ändrad: 2025-01-23 15:11
![Music Synthesizer Baserat på DE0-Nano-SoC Music Synthesizer Baserat på DE0-Nano-SoC](https://i.howwhatproduce.com/images/003/image-7960-16-j.webp)
Musiksyntes
Denna musiksynthesizer är ganska enkel: du måste bara blåsa, sjunga eller till och med spela musik framför mikrofonen, så kommer ljudet att moduleras och skickas genom högtalaren. Dess specctrum kommer också att visas på LCD -skärmen. Music Synthesizer finns i två versioner: du kan välja att implementera den på ett kretskort, eller om du inte kan, kommer en enkel Breadboard att göra.
Steg 1: Material som behövs och rekommendationer
![Material som behövs och rekommendationer Material som behövs och rekommendationer](https://i.howwhatproduce.com/images/003/image-7960-17-j.webp)
![Material som behövs och rekommendationer Material som behövs och rekommendationer](https://i.howwhatproduce.com/images/003/image-7960-18-j.webp)
![Material som behövs och rekommendationer Material som behövs och rekommendationer](https://i.howwhatproduce.com/images/003/image-7960-19-j.webp)
För att implementera detta system behöver du följande:
- ett DE0-Nano-SoC-kort
- en LT24 LCD -skärm från Terasic
- en elektretmikrofon
- en grundläggande högtalare med två ledare (jord och matning)
- en Ethernet -kabel
- ett kretskort eller en brödbräda
- ett lödkolv och en PCB -graverare, om du bestämmer dig för att implementera synten på ett kretskort
- ett batteri och dess USB -anslutning (tillval)
- en effektförstärkare LM386
- en MCP4821 digital/analog omvandlare
- en LT1054 spänningsomvandlare med omkopplad kondensator
- en LM317 justerbar reulator
- 7 TL081 OPA (DIP-8)
- en TL082 OPA (DIP-8)
- en 2N5432 transistor
- en 1N4148 -diod
- 17 10 µF polariserade kondensatorer
- en 1µF kondensator
- 5 100nF kondensatorer
- en 680nF kondensator
- en 100 µF kondensator
- en 2,2 µF kondensator
- en 1000+µF polariserad kondensator (4400 till exempel)
- en 220 µF polariserad kondensator
- en 0,05 µF kondensator
- 4 100 Ohms motstånd
- 1 2,2 kOhm motstånd
- 1 10kOhms motstånd
- 1 470 Ohms motstånd
- 1 1.8kOhms resitor
- 1 1MOhm motstånd
- 1 150 Ohm motstånd
- 4 1500 Ohm motstånd
Tänk på att du kan behöva fler komponenter än förväntat.
Vi rekommenderar också starkt att ha grundläggande kunskaper inom elektronik och SoC -design innan du startar detta projekt
Steg 2: Förvärvskommitté
![Förvärvsnämnd Förvärvsnämnd](https://i.howwhatproduce.com/images/003/image-7960-20-j.webp)
![Förvärvsnämnd Förvärvsnämnd](https://i.howwhatproduce.com/images/003/image-7960-21-j.webp)
Nu när du har allt du behöver, låt oss börja med att göra förvärvskortet. Mikrofonen samlar ljud i närheten, sedan filtreras signalen av ett lågpassfilter för att sampla det (och därmed respektera Shannon-satsen) innan det förstärks och slutligen spelas in av DE0.
Om du är bekant med Altium Design Software och har tillgång till en PCB -graverare, måste du bara återge schemat som visas i bilden ovan och placera komponenterna som vi gjorde på den andra bilden. Annars kan du helt enkelt återskapa denna krets på en brödbräda.
I båda fallen är motståndens värden, uppenbarligen angivna i Ohms, och värdena på kondensatorerna, som anges i Farads, följande:
- R4: 2,2 k
- R5: 10k
- R6 och R7: 100
- R3: 470
- R1 och R2: 18 (dessa motstånd används för att justera utspänningen som ska vara 2V så att dessa värden kan skilja sig något åt dig)
- R8: 1,8k
- R9: 1M
- R10: 150
- R11, R12, R14 och R15: 1,5k
- Dec1: 2,2 µ
- Dec2: 100 µ
- 3 dec: 100n
- Dec 4: 1 µ
- Dec5, Dec6, Dec7, Dec8, Dec9, Dec10, Dec11, Dec12, Dec13, Dec14: 1µ
- Dec15: +1000µ (till exempel 4400)
- Cl: 10 µ
- C2: 1 µ
- C3 och C4: 100n
- C5: 1 µ
Vi är klara med förvärvskortet!
Steg 3: Ljudutmatningskort
![Ljudutmatningskort Ljudutmatningskort](https://i.howwhatproduce.com/images/003/image-7960-22-j.webp)
![Ljudutmatningskort Ljudutmatningskort](https://i.howwhatproduce.com/images/003/image-7960-23-j.webp)
Att kunna spela in ljud är fantastiskt, men att kunna återge dem är ännu bättre! Således behöver du ett ljudutmatningskort, som helt enkelt består av en digital/analog omvandlare, ett utjämningsfilter, en effektförstärkare och en högtalare.
Naturligtvis kan du fortfarande reproducera kretsen på ett kretskort (och placera komponenterna som visas i den andra bilden) eller på en brödbräda. I båda fallen är här värdena för både kondensatorerna och motstånden:
- R1 och R2: 100
- R3 och R4: trådar
- R5: 10
- C1: 1 µ
- C2, C3, C5, C6, C7, C9: 100µ (polariserad)
- C4 och C8: 100n
- C10: 0,05 µ
- C11: 250 µ
Vi är klara med ljudutgången, så låt oss gå till programvaran!
Steg 4: Quartus -projekt
För att hålla sakerna enkla bestämde vi oss för att börja med projektet "mitt första hps-fpga" som finns på CD-skivan som medföljer DE0-Nano-SoC. Allt du behöver göra är att öppna detta projekt och starta "Platform Designer" eller "Qsys" från verktygsfältet och reproducera projektet ovan. Skapa sedan designen och kompilera med Qsys (se demonstrationerna för mer information).
Steg 5: Njut
Nu när HDL -filerna genereras behöver du bara starta Quartus -projektet. För detta ändamål, anslut USB-kabeln till USB-kontakten (JTAG) på DE0-Nano-Soc. Välj sedan Verktyg> Programmering på Quartus. Klicka på Auto Detect och välj sedan det andra alternativet. Klicka sedan på FPGA -enheten (den andra), sedan på "Ändra fil" och välj.sof -filen som genererats tidigare. Slutligen klickar du på "Program/Configure" -tavlan och klickar på "Start" -knappen för att starta filen.
Slutligen ladda upp följande C -kod till DE0 -minnet. För detta ändamål, installera Putty på en PC (Linux), länka kortet till det via en Ethernet -anslutning och genom att ansluta USB -kabeln till USB -kontakten (UART) på DE0. Starta och konfigurera Putty med en överföringshastighet på 115200, ingen paritet, ett bitstopp och inga flödeskontrollinställningar. Tvinga sedan en fast IPv4 -adress till din PC Ethernet -port, ange "root" på Putty shell, sedan "ifconfig eth0 192.168. XXX. XXX" och "password" följt av ett lösenord. Öppna ett skal på din dator, gå till projektförvaret och ange "scp myfirsthpsfpga [email protected]. XXX. XXX: ~/". Så småningom, på Putty -skalet, ange "./myfirsthpsfpga". Njut av !
Rekommenderad:
Hur man gör IoT -baserad hemautomation med NodeMCU -sensorer Kontrollrelä: 14 steg (med bilder)
![Hur man gör IoT -baserad hemautomation med NodeMCU -sensorer Kontrollrelä: 14 steg (med bilder) Hur man gör IoT -baserad hemautomation med NodeMCU -sensorer Kontrollrelä: 14 steg (med bilder)](https://i.howwhatproduce.com/images/002/image-5553-j.webp)
Hur man gör IoT-baserad hemautomation med NodeMCU-sensorer Kontrollrelä: I detta IoT-baserade projekt har jag gjort Hemautomation med Blynk och NodeMCU-styrrelämodul med realtidsfeedback. I manuellt läge kan denna relämodul styras från mobil eller smartphone och manuell omkopplare. I autoläge är detta smar
GPS -biltracker med SMS -avisering och dataöverföring av Thingspeak, Arduino -baserad, Hemautomation: 5 steg (med bilder)
![GPS -biltracker med SMS -avisering och dataöverföring av Thingspeak, Arduino -baserad, Hemautomation: 5 steg (med bilder) GPS -biltracker med SMS -avisering och dataöverföring av Thingspeak, Arduino -baserad, Hemautomation: 5 steg (med bilder)](https://i.howwhatproduce.com/images/007/image-18628-j.webp)
GPS -biltracker med SMS -meddelande och Thingspeak -dataöverföring, Arduino -baserad, Hemautomation: Jag gjorde den här GPS -spåraren förra året och eftersom den fungerar bra publicerar jag den nu på Instructable. Den är ansluten till tillbehörskontakten i min bagagerum. GPS -spåraren laddar upp bilens position, hastighet, riktning och uppmätt temperatur via en mobildata
Arduino -baserad icke -kontakt infraröd termometer - IR -baserad termometer med Arduino: 4 steg
![Arduino -baserad icke -kontakt infraröd termometer - IR -baserad termometer med Arduino: 4 steg Arduino -baserad icke -kontakt infraröd termometer - IR -baserad termometer med Arduino: 4 steg](https://i.howwhatproduce.com/images/001/image-764-35-j.webp)
Arduino -baserad icke -kontakt infraröd termometer | IR -baserad termometer med Arduino: Hej killar i dessa instruktioner kommer vi att göra en kontaktfri termometer med hjälp av arduino. Eftersom temperaturen på vätskan/fastämnet ibland är för hög eller för låg och då är det svårt att komma i kontakt med den och läsa dess temperaturen då i den scen
Ljusstyrkekontroll PWM -baserad LED -kontroll med tryckknappar, Raspberry Pi och Scratch: 8 steg (med bilder)
![Ljusstyrkekontroll PWM -baserad LED -kontroll med tryckknappar, Raspberry Pi och Scratch: 8 steg (med bilder) Ljusstyrkekontroll PWM -baserad LED -kontroll med tryckknappar, Raspberry Pi och Scratch: 8 steg (med bilder)](https://i.howwhatproduce.com/images/001/image-1075-49-j.webp)
Ljusstyrkekontroll PWM -baserad LED -kontroll med tryckknappar, Raspberry Pi och Scratch: Jag försökte hitta ett sätt att förklara hur PWM fungerade för mina elever, så jag satte mig i uppgift att försöka styra ljusstyrkan på en LED med två tryckknappar - en knapp ökar ljusstyrkan på en LED och den andra dimrar den. Till progra
Bordsflippmaskin med Evive- Arduino-baserad inbäddad plattform: 18 steg (med bilder)
![Bordsflippmaskin med Evive- Arduino-baserad inbäddad plattform: 18 steg (med bilder) Bordsflippmaskin med Evive- Arduino-baserad inbäddad plattform: 18 steg (med bilder)](https://i.howwhatproduce.com/images/004/image-9066-11-j.webp)
Bordsflippmaskin med Evive- Arduino-baserad inbäddad plattform: Ännu en helg, ännu ett spännande spel! Och den här gången är det ingen mindre än allas favoritarkadspel - Pinball! Detta projekt visar dig hur du gör din alldeles egna flipperspel hemma. Allt du behöver är komponenter från evive