Antik lampa orgel - MIDI/OSC kontrollerade (11 / 14 steg)

Steg 11: Programvara - mikrokontroller firmware

Även om Atmega324p inte är förmodligen mest använda mikrokontroller (uC), de flesta i denna kod kommer att fungera alldeles utmärkt på den mer populära atmega168 serien som används på arduinos. Den enda större ändringen är genomförandet av en programvara UART för MIDI-port eftersom 168 serien endast har en UART. Funktionen kan emellertid lätt lämnas ut, som jag måste erkänna, jag har aldrig kopplat en enhet in direkt via MIDI ända sedan jag avslutat test att det fungerade.

Firmware på uC är inställd för att hantera antingen input från MIDI-port, USB-port eller båda samtidigt. Växla mellan bestämmer routning av meddelanden. Dessutom kan hem anteckningen ställas in antingen distans eller lokalt med den främre tryckknapp switchen. När strömbrytaren trycks, kommer att nästa anteckning tryckte och släpptes på tangentbordet ställa den första glödlampan ska alltså. Detta är naturligtvis inte en nödvändighet, men jag hitta människor är lite mindre förbryllad om lamporna gör om de ser lamporna som lyser upp i följd från vänster till höger. När roten Obs nyckelns din spelar i den första glödlampan, lampor tenderar att hoppa runt lite mindre oförutsägbart, beroende på vad du spelar naturligtvis. Fina är att eftersom detta kan fjärrstyras, det är lätt att ställa in nyckeln i din sång så att det uppdateras automatiskt varje gång du byter spår (se det sista avsnittet på objektet max4live använda ableton).

När läget för enheten är avstängd, ledde framsida lyser upp en annan färg, som anger om den lokala användaren har kontroll eller om det är fjärrstyrd. Detta går i den ganska meningslöst men ser cool kategori.

Majoriteten av programvaran är inställd för att hantera inkommande meddelanden (midi/usb). Den externa crystal driver uC på 18.423 MHz, för att få 0% fel på 115200 baud. Bortsett från pågående rad för rad igenom koden finns det inte mycket mer att prata om, Välkommen att ställa eventuella frågor du har, koderna nedan. Zip-filen har hela projektet inlcluding filen avrstudio (avrstudio5, jag har nyligen uppgraderat och konverterat alla mina gamla projekt, du bör också! dess så mycket bättre än avrstudio4!). Jag lämnade ut de enskilda UART-filerna eftersom de lätt tillgängliga någon annanstans.

Några bra punkter när du skriver för midi. Du behöver en UART klocka av 31250 baud, vilket innebär, för en 0% fel, du behöver en kristall med ett heltal flera gånger större än. Det funkar okej ändå, sedan den inbyggda 8Mhz arbetar böter, eller 16Mhz, etc. Ett problem uppstår dock när man kombinerar MIDI UART på samma chip som RS232 UART. Den "standard" baud klassar, 9600, 112500 etc, inte fungerar bra med 8Mhz kristaller. Så, vad kan man do...well det finns två val IMHO.

1. Använd den inbyggda crystal eller liknande frekvens (8Mhz... eller 16 Mhz, 20 Mhz etc) och använda överföringshastigheten aliasing för att korrigera för usb.

2. acceptera fel på en av dina rader. Personligen, jag gillar inte detta alternativ, jag vet en massa människor köra saker på 9600 baud med 16Mhz kristaller, men jag gillar inte att.

Så, här är ett gäng länkar till aliasing baudhastighet med FT232R-drivrutinen. Jag har gjort detta på en PC och en MAC, det fungerar bra, och låter dig skicka data på mycket mycket högre överföringshastigheter än RS232 var tänkt för. Till exempel, i stället för en topp på 225 kbps, kan du gå ända upp till 3Mbps (även om de flesta atmegas kan bara göra 2Mbps).

Hur man gör det på OSX (Följ instruktionerna mycket noga, det fungerar faktiskt, jag lovar)
Och, på en PC
Bra artikel om aliasing baudhastighet för att använda xbee styrenheter för MIDI- (Endast PC)

Också, du kommer att vilja referera till den här sidan om du skriver någon kod för att hantera MIDI-meddelanden

Se Steg
Relaterade Ämnen

Spark-e - en gnista core + Touch OSC kontrollerade Wall-e leksak robot konvertering

När det gäller söta robotar, har instructables roboten att vara överst i listan självklart, den näst mest kända fått vara Pixar's Wall-e. Vem vill inte en av dessa små grabbar ilande runt ditt hem rengöring upp dina sopor för dig? Tja, medan äkta int...

Hur man gör en pistol kontrollerade lampa

Hej!I denna tutorial kommer jag förklara hur jag gjorde min pistol kontrollerade lampa. Lampan är kontrollerad av en IR-fjärr. Du kan titta på denna tutorial på Youtube på:https://www.youtube.com/Channel/UCkURR2CLd5iDc0B11...Reservdelslista:-Arduino...

Steampunk lampa: The Eye av Ra

kära Steampunkers, kära vännerEfter två avkopplande kvällar i mitt laboratorium är jag glad att presentera dig en mycket speciell lampa:Syna av RaDenna mycket kraftfull lampa är tillägnad den forntida egyptiska solguden Ra. Det är så stark, att det r...

Stjärnbilden lampskärm

perfekt projekt för alla som gillar stjärnorna. Även kommer barn som tycker om utrymme/stjärnorna gillar denna lampa också. Du kan sätta din favorit konstellationer eller sätta ditt stjärntecken astrologi.vad du behöver.-en lampa med en lampskärm som...

Arduino Combi-knappen Lock w / valfritt iOS/Android stöd

nyligen, jag bestämde mig för jag vill försöka göra en lösenord låsa med min nyförvärvade Arduino Uno, men alla tutorials jag kunde hitta använt sig av en modifierad knappsats, något att inte varje Tom, Dick och Harry har ljuger om. Jag beslutade där...

Antik mässing blåsa fackla Accent lampa

I detta instructable, jag konvertera en antik mässing blåslampa till en accent lampa. Jag använde en flimmer lampa för att simulera lågan som skulle ha kommit ut ur huvudet på blåslampa.Jag ville också ha den elektriska ledningar gömd inuti facklan f...

Flamma kontrollerade MIDI-Controller

En stor fråga i världen av digital musikproduktion är att hålla det analog värme (som genljöd från rullbandspelare system och rör) i dagens moderna digitala musik. Många svär att analoga system har ett ljud som aldrig kan replikeras av bits, och hopp...

Lätt naturen gjorde avlägsen kontrollerade lampa!

Hej grabbar, den här gången jag är här med en enkel men en mycket grön design att göra lampor för du hushållsbruk och dekoration, att ett retro och nykter titt. Denna idé kan att användas var som helst, men för mig är det nya. Det är en grundläggande...

MIDI-kontrollerad Analog musik Synthesizer

För min elektroteknik projektkurs, bestämde jag mig på att utforma en synthesizer analog musik med MIDI-kontroll. Jag måste erkänna, detta var vad jag ville göra sedan gymnasiet och var mitt slutmål som musiker, artist, DIY person, och ingenjör. Dett...

Bluetooth kontrollerad Rainbow lampa

Denna Bluetooth kontrollerad Rainbow lampa kan kopplas till valfri färg med hjälp av din smartphone. Lampan inte bara ser ut som alla sju färger i regnbågen men också lyser i alla sju färger i regnbågen. De former som det gör på natten är bara fantas...

Rörelse kontrollerad ultraljud lampa

Nyligen har jag fått lära om ultraljudsvågor och hur att utnyttja sin makt. Det är enkelt att göra någon typ av sonar enhet, men jag ville ta på ett svalare steg och se om jag kunde använda ultraljud vågor att inte bara upptäcka rörelsen, men också a...

StrobeDuino - dator-kontrollerade RGB strobe/lampa

efter att experimentera med Arduino och bearbetning seriell kommunikation jag ville göra något cool. Jag hade några RGB lysdioder liggande så tänkte jag på att göra något med dem. Jag slutade med en strobe/lampa kontrolleras av en bearbetning skiss s...

Hur man gör Bluetooth kontrollerad lampa

Hej stötarna! Jag är tillbaka med en annan cool projekt från vår kanal "Att vara ingenjörer". Om du vill göra en enkel Bluetooth kontrollerad lampa men vet inte hur man startar, har så du kommit till rätt ställe. Låt oss gå vidare med det!Steg 1...

Android-telefon kontrollerade lampa

I detta Instructable kommer vi att göra en lampa som vi kan styra med en android-telefon. Använda en app, kommer vi att kunna justera ljusstyrkan på lampan.Steg 1: Hur det fungerar Lampans ljusstyrka regleras av en enkel dimmer. Växeln roteras självs...

Antik stil anpassad lampa

detta är en skräddarsydd lampa baserade bort av tim-1138's instructable finns här. Jag gjorde först en med tre lampor som en gåva och bestämde när jag hittade lådan här en använder, att göra en annan, och dokumentera det.Steg 1: leveranser Här är lis...

Sakernas Internet kontrollerad Smart lampa/Outlet med spark core och IFTTT

Jag ville ha en natt-lampa som kommer att slå på efter solnedgången och stänga av mitt i natten. Finns på homedepot eller andra järnhandeln timers kan bara ställa in en tid. Eftersom det finns sommartid i USA, fick det bytas. För att lösa detta, är u...

DIY Internet kontrollerad lampa

Hej alla, i detta instructable, jag kommer att visa dig hur man gör en DIY lampa som kan styras från var som helst i ditt hus.Steg 1: Delar och verktygHär är delar och verktyg som du behöver för att göra detta projekt:Delar:LönnWireLinkit en bräda oc...

MIDI kontrollerad analog FM synt

denna krets och Arduino skiss omfattar ett avancerat projekt för ansikte smältande ljud från en analog källa kontrolleras via MIDI.Obligatoriska delar inkluderar:• Lödfritt set av brödunderläggen• Massor av hookup wire• Arduino• AD5206• 2 x 7555 Time...

Digitalt kontrollerade stora LED lampa

Efter mul steg i CFL börjar vi se LED-lampor visar upp på deponier eftersom de inte lever upp till de påstådda 25 åren av liv. Vanligtvis dessa LED-lampor dog på grund av fel i leverans strömkretsen, medan LED modulerna är fortfarande bra. Nyligen ha...